import { BaselineClient, type CommitRequest, type ExecuteRequest,} from "@baseline-labs/sdk";const client = new BaselineClient({ baseUrl: process.env.ADMISSIBLE_BASE_URL!, apiKey: process.env.ADMISSIBLE_API_KEY!, userAgent: "acme-runtime/1.0",});function createExecuteRequest(sessionId: string): ExecuteRequest { return { requestId: "req_execute_001", agent: { id: "release-agent", framework: "custom-runtime", }, session: { id: sessionId, }, environment: { name: "staging", service: "release-control", region: "ord", }, action: { type: "tool_call", name: "read.file", description: "Inspect the staged release manifest before proposing a change.", input: { path: "releases/staging.json", }, target: { system: "release-control", resourceType: "environment", resourceId: "staging", }, }, intent: { goal: "Inspect release state safely before proposing a durable change.", task: "Read the current staging release manifest.", operator: "release-operator", }, constraints: { mode: "enforce", maxRiskScore: 0.4, allowModification: false, allowDeferral: true, approvalMode: "auto", }, metadata: { source: "release-control", }, };}function createCommitRequest( sessionId: string, supportingOperationId: string,): CommitRequest { return { requestId: "req_commit_001", agent: { id: "release-agent", framework: "custom-runtime", }, session: { id: sessionId, }, proposedCommit: { type: "finalize_release_snapshot", system: "production", payload: { migration: "users_v3_backfill", }, }, commitType: "irreversible", supportingOperationId, rollbackRef: "irreversible:none", };}const sessionId = "sess_release_123";const executeResponse = await client.execute(createExecuteRequest(sessionId));console.log(executeResponse.status, executeResponse.message);console.log(executeResponse.nextAction.type, executeResponse.operation.id);if (executeResponse.nextAction.type !== "proceed") { return;}const commitResponse = await client.commit( createCommitRequest(sessionId, executeResponse.operation.id), { idempotencyKey: "idem_commit_001", },);console.log(commitResponse.status, commitResponse.message);console.log(commitResponse.nextAction.type, commitResponse.operation.id);