@goah/cli 0.13.0 → 0.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LICENSE +201 -0
- package/dist/THIRD-PARTY-NOTICES.md +2319 -0
- package/dist/anthropic-messages-WBFOHES5.js +7214 -0
- package/dist/azure-openai-responses-NZFH3PO6.js +253 -0
- package/dist/chunk-25XSBFX6.js +639 -0
- package/dist/chunk-2QBQZGXF.js +110 -0
- package/dist/chunk-2ZP2NBW3.js +345 -0
- package/dist/chunk-4KA63VNZ.js +2 -0
- package/dist/chunk-4M6TXTT5.js +86 -0
- package/dist/chunk-4US7ZHT3.js +20 -0
- package/dist/chunk-6M3OOCKO.js +11809 -0
- package/dist/chunk-7AXAFDPG.js +17 -0
- package/dist/chunk-BXA47DTF.js +548 -0
- package/dist/chunk-FSBUS2BI.js +26 -0
- package/dist/chunk-GKDRAHLI.js +4787 -0
- package/dist/chunk-H462EFJP.js +89 -0
- package/dist/chunk-IIJQ3DW4.js +35 -0
- package/dist/chunk-JQD5EWJY.js +34 -0
- package/dist/chunk-K26BVR6O.js +61 -0
- package/dist/chunk-KAO7WIXG.js +31 -0
- package/dist/chunk-LBKI23CC.js +9810 -0
- package/dist/chunk-LKBKZEHT.js +41 -0
- package/dist/chunk-MD7TLTXZ.js +18 -0
- package/dist/chunk-MPXK7QBL.js +868 -0
- package/dist/chunk-NRLGWZJC.js +11 -0
- package/dist/chunk-PFEV3HWI.js +1178 -0
- package/dist/chunk-QBD6EJ2Z.js +1746 -0
- package/dist/chunk-R6I3VKME.js +132 -0
- package/dist/chunk-TJON22J4.js +87 -0
- package/dist/chunk-ULY36ME4.js +33097 -0
- package/dist/chunk-VWEV4LTH.js +25 -0
- package/dist/chunk-X7UWW2PN.js +883 -0
- package/dist/chunk-XALZLRYK.js +9221 -0
- package/dist/chunk-XPQKM3L7.js +57 -0
- package/dist/chunk-YH6YJ2IB.js +1773 -0
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +13123 -580
- package/dist/console/assets/{index-Rtc_B7cs.js → index-B1vGMXKr.js} +11 -11
- package/dist/console/assets/{index-Rtc_B7cs.js.map → index-B1vGMXKr.js.map} +1 -1
- package/dist/console/index.html +1 -1
- package/dist/dist-65MDQA4Q.js +1126 -0
- package/dist/dist-KNR2XL6J.js +39 -0
- package/dist/execution.d.ts +557 -2
- package/dist/execution.js +37 -2
- package/dist/faux-runner-worker.js +128 -0
- package/dist/google-generative-ai-YMHXZSFE.js +422 -0
- package/dist/google-vertex-X6DB3ZQ6.js +471 -0
- package/dist/index.d.ts +853 -25
- package/dist/index.js +84 -385
- package/dist/kernel.d.ts +39 -2
- package/dist/kernel.js +21 -2
- package/dist/mistral-conversations-TY3MMD6G.js +718 -0
- package/dist/multipart-parser-F6M4NJZU.js +373 -0
- package/dist/openai-codex-responses-BRDUMLN5.js +1374 -0
- package/dist/openai-completions-CX634XN3.js +1139 -0
- package/dist/openai-responses-HMCXJIHT.js +300 -0
- package/dist/openrouter-images-KTWET2H2.js +148 -0
- package/dist/pi-messages-XL5OEC4K.js +307 -0
- package/dist/pi-worker.js +671 -0
- package/dist/runner-pi.d.ts +342 -2
- package/dist/runner-pi.js +46 -2
- package/dist/runner-registry-M776E3SE.js +22 -0
- package/dist/sqlite.d.ts +446 -2
- package/dist/sqlite.js +15 -2
- package/dist/src-F2KBSV4T.js +1398 -0
- package/dist/supervisor.d.ts +625 -2
- package/dist/supervisor.js +39 -2
- package/dist/testkit.d.ts +564 -2
- package/dist/testkit.js +127 -2
- package/dist/transcript.d.ts +84 -2
- package/dist/transcript.js +25 -2
- package/dist/verification-worker.js +72 -0
- package/package.json +2 -26
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/control.d.ts +0 -106
- package/dist/control.d.ts.map +0 -1
- package/dist/control.js +0 -242
- package/dist/control.js.map +0 -1
- package/dist/execution.d.ts.map +0 -1
- package/dist/execution.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/kernel.d.ts.map +0 -1
- package/dist/kernel.js.map +0 -1
- package/dist/live-config.d.ts +0 -10
- package/dist/live-config.d.ts.map +0 -1
- package/dist/live-config.js +0 -44
- package/dist/live-config.js.map +0 -1
- package/dist/prompt-queue.d.ts +0 -13
- package/dist/prompt-queue.d.ts.map +0 -1
- package/dist/prompt-queue.js +0 -35
- package/dist/prompt-queue.js.map +0 -1
- package/dist/runner-pi.d.ts.map +0 -1
- package/dist/runner-pi.js.map +0 -1
- package/dist/runner-registry.d.ts +0 -8
- package/dist/runner-registry.d.ts.map +0 -1
- package/dist/runner-registry.js +0 -12
- package/dist/runner-registry.js.map +0 -1
- package/dist/searchable-select.d.ts +0 -24
- package/dist/searchable-select.d.ts.map +0 -1
- package/dist/searchable-select.js +0 -61
- package/dist/searchable-select.js.map +0 -1
- package/dist/secret-input.d.ts +0 -8
- package/dist/secret-input.d.ts.map +0 -1
- package/dist/secret-input.js +0 -14
- package/dist/secret-input.js.map +0 -1
- package/dist/setup-wizard.d.ts +0 -22
- package/dist/setup-wizard.d.ts.map +0 -1
- package/dist/setup-wizard.js +0 -154
- package/dist/setup-wizard.js.map +0 -1
- package/dist/sqlite.d.ts.map +0 -1
- package/dist/sqlite.js.map +0 -1
- package/dist/supervisor.d.ts.map +0 -1
- package/dist/supervisor.js.map +0 -1
- package/dist/testkit.d.ts.map +0 -1
- package/dist/testkit.js.map +0 -1
- package/dist/thread-inspect.d.ts +0 -47
- package/dist/thread-inspect.d.ts.map +0 -1
- package/dist/thread-inspect.js +0 -78
- package/dist/thread-inspect.js.map +0 -1
- package/dist/transcript.d.ts.map +0 -1
- package/dist/transcript.js.map +0 -1
- package/dist/tui-theme.d.ts +0 -17
- package/dist/tui-theme.d.ts.map +0 -1
- package/dist/tui-theme.js +0 -19
- package/dist/tui-theme.js.map +0 -1
- package/dist/tui.d.ts +0 -24
- package/dist/tui.d.ts.map +0 -1
- package/dist/tui.js +0 -784
- package/dist/tui.js.map +0 -1
- package/dist/update.d.ts +0 -16
- package/dist/update.d.ts.map +0 -1
- package/dist/update.js +0 -67
- package/dist/update.js.map +0 -1
- package/dist/web-console.d.ts +0 -33
- package/dist/web-console.d.ts.map +0 -1
- package/dist/web-console.js +0 -242
- package/dist/web-console.js.map +0 -1
- package/dist/welcome.d.ts +0 -30
- package/dist/welcome.d.ts.map +0 -1
- package/dist/welcome.js +0 -69
- package/dist/welcome.js.map +0 -1
- package/node_modules/goah-ledger-contract/dist/execution.d.ts +0 -544
- package/node_modules/goah-ledger-contract/dist/execution.d.ts.map +0 -1
- package/node_modules/goah-ledger-contract/dist/execution.js +0 -52
- package/node_modules/goah-ledger-contract/dist/execution.js.map +0 -1
- package/node_modules/goah-ledger-contract/dist/index.d.ts +0 -4
- package/node_modules/goah-ledger-contract/dist/index.d.ts.map +0 -1
- package/node_modules/goah-ledger-contract/dist/index.js +0 -4
- package/node_modules/goah-ledger-contract/dist/index.js.map +0 -1
- package/node_modules/goah-ledger-contract/dist/kernel.d.ts +0 -37
- package/node_modules/goah-ledger-contract/dist/kernel.d.ts.map +0 -1
- package/node_modules/goah-ledger-contract/dist/kernel.js +0 -8
- package/node_modules/goah-ledger-contract/dist/kernel.js.map +0 -1
- package/node_modules/goah-ledger-contract/dist/transcript.d.ts +0 -63
- package/node_modules/goah-ledger-contract/dist/transcript.d.ts.map +0 -1
- package/node_modules/goah-ledger-contract/dist/transcript.js +0 -115
- package/node_modules/goah-ledger-contract/dist/transcript.js.map +0 -1
- package/node_modules/goah-ledger-contract/package.json +0 -28
- package/node_modules/goah-ledger-sqlite/dist/index.d.ts +0 -86
- package/node_modules/goah-ledger-sqlite/dist/index.d.ts.map +0 -1
- package/node_modules/goah-ledger-sqlite/dist/index.js +0 -1254
- package/node_modules/goah-ledger-sqlite/dist/index.js.map +0 -1
- package/node_modules/goah-ledger-sqlite/package.json +0 -26
- package/node_modules/goah-runner-pi/dist/configurator.d.ts +0 -20
- package/node_modules/goah-runner-pi/dist/configurator.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/configurator.js +0 -423
- package/node_modules/goah-runner-pi/dist/configurator.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/credential-store.d.ts +0 -14
- package/node_modules/goah-runner-pi/dist/credential-store.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/credential-store.js +0 -163
- package/node_modules/goah-runner-pi/dist/credential-store.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/env-spec.d.ts +0 -17
- package/node_modules/goah-runner-pi/dist/env-spec.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/env-spec.js +0 -95
- package/node_modules/goah-runner-pi/dist/env-spec.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/index.d.ts +0 -76
- package/node_modules/goah-runner-pi/dist/index.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/index.js +0 -326
- package/node_modules/goah-runner-pi/dist/index.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/model-provider.d.ts +0 -30
- package/node_modules/goah-runner-pi/dist/model-provider.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/model-provider.js +0 -96
- package/node_modules/goah-runner-pi/dist/model-provider.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/pi-worker.d.ts +0 -31
- package/node_modules/goah-runner-pi/dist/pi-worker.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/pi-worker.js +0 -579
- package/node_modules/goah-runner-pi/dist/pi-worker.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/steering-no-ack.test-fixture.d.ts +0 -2
- package/node_modules/goah-runner-pi/dist/steering-no-ack.test-fixture.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/steering-no-ack.test-fixture.js +0 -3
- package/node_modules/goah-runner-pi/dist/steering-no-ack.test-fixture.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/steering-reject.test-fixture.d.ts +0 -2
- package/node_modules/goah-runner-pi/dist/steering-reject.test-fixture.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/steering-reject.test-fixture.js +0 -5
- package/node_modules/goah-runner-pi/dist/steering-reject.test-fixture.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/steering-worker.test-fixture.d.ts +0 -2
- package/node_modules/goah-runner-pi/dist/steering-worker.test-fixture.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/steering-worker.test-fixture.js +0 -5
- package/node_modules/goah-runner-pi/dist/steering-worker.test-fixture.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/test-helpers.d.ts +0 -4
- package/node_modules/goah-runner-pi/dist/test-helpers.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/test-helpers.js +0 -13
- package/node_modules/goah-runner-pi/dist/test-helpers.js.map +0 -1
- package/node_modules/goah-runner-pi/dist/verification-worker.d.ts +0 -2
- package/node_modules/goah-runner-pi/dist/verification-worker.d.ts.map +0 -1
- package/node_modules/goah-runner-pi/dist/verification-worker.js +0 -46
- package/node_modules/goah-runner-pi/dist/verification-worker.js.map +0 -1
- package/node_modules/goah-runner-pi/package.json +0 -28
- package/node_modules/goah-supervisor/dist/context-view.d.ts +0 -30
- package/node_modules/goah-supervisor/dist/context-view.d.ts.map +0 -1
- package/node_modules/goah-supervisor/dist/context-view.js +0 -58
- package/node_modules/goah-supervisor/dist/context-view.js.map +0 -1
- package/node_modules/goah-supervisor/dist/index.d.ts +0 -96
- package/node_modules/goah-supervisor/dist/index.d.ts.map +0 -1
- package/node_modules/goah-supervisor/dist/index.js +0 -1075
- package/node_modules/goah-supervisor/dist/index.js.map +0 -1
- package/node_modules/goah-supervisor/dist/roles.d.ts +0 -4
- package/node_modules/goah-supervisor/dist/roles.d.ts.map +0 -1
- package/node_modules/goah-supervisor/dist/roles.js +0 -29
- package/node_modules/goah-supervisor/dist/roles.js.map +0 -1
- package/node_modules/goah-supervisor/dist/verification.d.ts +0 -61
- package/node_modules/goah-supervisor/dist/verification.d.ts.map +0 -1
- package/node_modules/goah-supervisor/dist/verification.js +0 -135
- package/node_modules/goah-supervisor/dist/verification.js.map +0 -1
- package/node_modules/goah-supervisor/package.json +0 -26
- package/node_modules/goah-testkit/dist/faux-runner-worker.d.ts +0 -2
- package/node_modules/goah-testkit/dist/faux-runner-worker.d.ts.map +0 -1
- package/node_modules/goah-testkit/dist/faux-runner-worker.js +0 -82
- package/node_modules/goah-testkit/dist/faux-runner-worker.js.map +0 -1
- package/node_modules/goah-testkit/dist/index.d.ts +0 -49
- package/node_modules/goah-testkit/dist/index.d.ts.map +0 -1
- package/node_modules/goah-testkit/dist/index.js +0 -96
- package/node_modules/goah-testkit/dist/index.js.map +0 -1
- package/node_modules/goah-testkit/package.json +0 -29
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { AgentRole, TurnContext } from "goah-ledger-contract";
|
|
2
|
-
export declare function defaultRolePrompt(role: AgentRole): string;
|
|
3
|
-
export declare function defaultTurnPrompt(role: AgentRole, agent: string, turn: TurnContext): string;
|
|
4
|
-
//# sourceMappingURL=roles.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../src/roles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAenE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAA0B;AAEpF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,CAW3F"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
const prompts = {
|
|
2
|
-
child: "Own the assigned Child Goal. Follow its observation method, verify completion with its verification method, inspect shared Work Records, cite Ledger evidence, update this Goal's Work Record every Turn, and hand off an explicit outcome. Handoff is declarative: use mail.send to notify or escalate, setting its typed goalId route to the parent Goal when it should wake a parent Goal Turn; use schedule.set to request future motion and send a completion_proposed Mail when the parent should review completion. You are not a task-only worker and cannot redefine or complete your own Goal.",
|
|
3
|
-
ceo: `You are the user's sole operating interface and the durable CEO identity for this Goal tree. You organize work; you do not impersonate child execution.
|
|
4
|
-
|
|
5
|
-
On the first wake for a root with no observation method, operationalize the goal before claiming measurable progress: inspect the current directory with read/edit/write/bash; read project documentation, configuration, code, scripts, local CLIs, and existing ledger evidence; clarify the objective, constraints, baseline, and meaning of success; identify the data source or qualitative inspection protocol; define freshness, cadence, time zone, sustain window, and missing-data behavior when relevant; list the exact access required; then propose a textual observation method to the human. Ask only for facts or permissions that cannot be discovered locally. Continue safe reversible exploration while waiting. Never invent a baseline, data source, permission, success criterion, or observation result.
|
|
6
|
-
|
|
7
|
-
On every wake: (1) orient from the root and descendants, each current observation method and revision, Team motion, incoming mail, handoffs, blockers, unknown Tool Calls, and recovery facts; (2) diagnose every active child's motion, ownership, and adherence to its authoritative observation method; (3) decide whether to keep, delegate, revise the objective/method pair, reassign, pause, resume, complete, or escalate; (4) apply organization changes only through the high-level atomic tools; (5) repair every idle_unplanned child and every child missing an observation method before handoff; (6) close with active child motion plus a CEO review, an explicit wait/blocker, a human request, or a completion recommendation carrying evidence produced under the current method.
|
|
8
|
-
|
|
9
|
-
Use goal.delegate rather than separate goal/mail/schedule calls. Execute ambiguous or exploratory work yourself until a stream has a bounded objective, independent observation and verification methods, and a reviewable result; only then create a distinct Goal-owning Agent. Use team.list as the roster source of truth. Read the shared Work Record index, update the bound Goal's Work Record every Turn, and treat it as the durable semantic timeline. Handoff is declarative: use mail.send for explicit organization communication, schedule.set for future motion, and human.request when Human authority is required. Never claim authority to confirm Root methods, complete, or materially change a Root Goal: request the Human instead.`,
|
|
10
|
-
verifier: "Verify one Turn's handoff claims against its trace and runner facts. Do not trust self-report. Persist concise findings with exact evidence sequences.",
|
|
11
|
-
audit: "Independently reconstruct outcomes from durable facts and external observations. Persist independent audit judgment with memory_append; it never substitutes for fresh evidence.",
|
|
12
|
-
};
|
|
13
|
-
export function defaultRolePrompt(role) { return prompts[role]; }
|
|
14
|
-
export function defaultTurnPrompt(role, agent, turn) {
|
|
15
|
-
if (turn.goalBinding) {
|
|
16
|
-
if (role === "verifier" || role === "audit")
|
|
17
|
-
throw new Error("specialist Turns cannot bind a Goal");
|
|
18
|
-
return defaultRolePrompt(role);
|
|
19
|
-
}
|
|
20
|
-
if (turn.source.kind === "human") {
|
|
21
|
-
if (role !== "ceo" || agent !== "ceo")
|
|
22
|
-
throw new Error("only the primary Agent may run a Human Turn");
|
|
23
|
-
return "You are Goah's primary Agent. Respond naturally to the Human and use tools when useful. Do not create a Goal for routine single-turn work. When the Human expresses durable intent, use the available Goal creation or Goal work tool, then maintain the bound Goal's Work Record and finish with a Handoff.";
|
|
24
|
-
}
|
|
25
|
-
if (role !== "verifier" && role !== "audit")
|
|
26
|
-
throw new Error("Goal-owning Agents cannot run an unbound system Turn");
|
|
27
|
-
return `${defaultRolePrompt(role)} You are Goah specialist ${agent}. Inspect the supplied system context and finish with an ordinary response.`;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=roles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"roles.js","sourceRoot":"","sources":["../src/roles.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,GAA8B;IACzC,KAAK,EAAE,0kBAA0kB;IACjlB,GAAG,EAAE;;;;;;0tBAMmtB;IACxtB,QAAQ,EAAE,wJAAwJ;IAClK,KAAK,EAAE,kLAAkL;CAC1L,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,IAAe,IAAY,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEpF,MAAM,UAAU,iBAAiB,CAAC,IAAe,EAAE,KAAa,EAAE,IAAiB;IACjF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACpG,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,IAAI,KAAK,KAAK,IAAI,KAAK,KAAK,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACtG,OAAO,8SAA8S,CAAC;IACxT,CAAC;IACD,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACrH,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,4BAA4B,KAAK,6EAA6E,CAAC;AAClJ,CAAC"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { type EventRecord, type JsonValue, type Ledger } from "goah-ledger-contract";
|
|
2
|
-
import type { Supervisor } from "./index.js";
|
|
3
|
-
export interface VerificationFinding {
|
|
4
|
-
id: string;
|
|
5
|
-
body: JsonValue;
|
|
6
|
-
evidence: number[];
|
|
7
|
-
riskWeight: number;
|
|
8
|
-
}
|
|
9
|
-
export interface VerificationResult {
|
|
10
|
-
findings: VerificationFinding[];
|
|
11
|
-
tokensUsed: number;
|
|
12
|
-
}
|
|
13
|
-
export interface VerifierModel {
|
|
14
|
-
verifyTurn(input: {
|
|
15
|
-
turnId: string;
|
|
16
|
-
handoff: JsonValue | null;
|
|
17
|
-
trace: EventRecord[];
|
|
18
|
-
}): Promise<VerificationResult>;
|
|
19
|
-
blindAudit(facts: EventRecord[]): Promise<VerificationResult>;
|
|
20
|
-
}
|
|
21
|
-
export interface VerifierProcessSpec {
|
|
22
|
-
command: string;
|
|
23
|
-
args: string[];
|
|
24
|
-
env?: Record<string, string>;
|
|
25
|
-
timeoutMs?: number;
|
|
26
|
-
}
|
|
27
|
-
export declare class ProcessVerifierModel implements VerifierModel {
|
|
28
|
-
#private;
|
|
29
|
-
readonly spec: VerifierProcessSpec;
|
|
30
|
-
constructor(spec: VerifierProcessSpec);
|
|
31
|
-
verifyTurn(input: {
|
|
32
|
-
turnId: string;
|
|
33
|
-
handoff: JsonValue | null;
|
|
34
|
-
trace: EventRecord[];
|
|
35
|
-
}): Promise<VerificationResult>;
|
|
36
|
-
blindAudit(facts: EventRecord[]): Promise<VerificationResult>;
|
|
37
|
-
}
|
|
38
|
-
export declare class VerificationPlane {
|
|
39
|
-
#private;
|
|
40
|
-
readonly ledger: Ledger;
|
|
41
|
-
readonly supervisor: Supervisor;
|
|
42
|
-
readonly model: VerifierModel;
|
|
43
|
-
constructor(ledger: Ledger, supervisor: Supervisor, model: VerifierModel);
|
|
44
|
-
verifyTurn(turnId: string): Promise<VerificationResult>;
|
|
45
|
-
auditGlobal(sinceSeq?: number): Promise<VerificationResult>;
|
|
46
|
-
}
|
|
47
|
-
export interface VerificationLabel {
|
|
48
|
-
id: string;
|
|
49
|
-
shouldFlag: boolean;
|
|
50
|
-
riskWeight: number;
|
|
51
|
-
}
|
|
52
|
-
export interface ScoredPrediction {
|
|
53
|
-
id: string;
|
|
54
|
-
score: number;
|
|
55
|
-
}
|
|
56
|
-
export declare function evaluateVerification(labels: VerificationLabel[], predictedIds: string[]): {
|
|
57
|
-
precision: number;
|
|
58
|
-
riskWeightedRecall: number;
|
|
59
|
-
};
|
|
60
|
-
export declare function calibrateVerificationThreshold(labels: VerificationLabel[], predictions: ScoredPrediction[], minimumPrecision: number): number;
|
|
61
|
-
//# sourceMappingURL=verification.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../src/verification.ts"],"names":[],"mappings":"AACA,OAAO,EAAiD,KAAK,WAAW,EAAC,KAAK,SAAS,EAAC,KAAK,MAAM,EAAoB,MAAM,sBAAsB,CAAC;AAEpJ,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IAAG,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAC3F,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,WAAW,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACpH,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,mBAAmB;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;AAE1H,qBAAa,oBAAqB,YAAW,aAAa;;IAC5C,QAAQ,CAAC,IAAI,EAAE,mBAAmB;gBAAzB,IAAI,EAAE,mBAAmB;IAC9C,UAAU,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,WAAW,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACnH,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAmB9D;AAED,qBAAa,iBAAiB;;IAChB,QAAQ,CAAC,MAAM,EAAE,MAAM;IAAE,QAAQ,CAAC,UAAU,EAAE,UAAU;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa;gBAA9E,MAAM,EAAE,MAAM,EAAW,UAAU,EAAE,UAAU,EAAW,KAAK,EAAE,aAAa;IAE7F,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWvD,WAAW,CAAC,QAAQ,SAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAa7D;AAED,MAAM,WAAW,iBAAiB;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAC1F,MAAM,WAAW,gBAAgB;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AAC/D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,CAS3I;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,iBAAiB,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAS7I"}
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import { createHash } from "node:crypto";
|
|
2
|
-
import { goalRoute, humanInboxRoute, specialistInboxRoute } from "goah-ledger-contract";
|
|
3
|
-
import { spawn } from "node:child_process";
|
|
4
|
-
export class ProcessVerifierModel {
|
|
5
|
-
spec;
|
|
6
|
-
constructor(spec) {
|
|
7
|
-
this.spec = spec;
|
|
8
|
-
}
|
|
9
|
-
verifyTurn(input) { return this.#call("verify_turn", input); }
|
|
10
|
-
blindAudit(facts) { return this.#call("blind_audit", { facts }); }
|
|
11
|
-
async #call(operation, input) {
|
|
12
|
-
const env = {};
|
|
13
|
-
for (const name of ["PATH", "TMPDIR", "TMP", "TEMP", "SYSTEMROOT"])
|
|
14
|
-
if (process.env[name] !== undefined)
|
|
15
|
-
env[name] = process.env[name];
|
|
16
|
-
const child = spawn(this.spec.command, this.spec.args, { detached: process.platform !== "win32", env: { ...env, ...this.spec.env }, stdio: ["pipe", "pipe", "pipe"] });
|
|
17
|
-
let stdout = "";
|
|
18
|
-
let stderr = "";
|
|
19
|
-
let timedOut = false;
|
|
20
|
-
let outputOverflow = false;
|
|
21
|
-
const kill = () => { if (child.pid) {
|
|
22
|
-
try {
|
|
23
|
-
process.kill(process.platform === "win32" ? child.pid : -child.pid, "SIGKILL");
|
|
24
|
-
}
|
|
25
|
-
catch { }
|
|
26
|
-
} };
|
|
27
|
-
const append = (channel, chunk) => { const text = chunk.toString(); const remaining = Math.max(0, 1_000_000 - stdout.length - stderr.length); if (channel === "stdout")
|
|
28
|
-
stdout += text.slice(0, remaining);
|
|
29
|
-
else
|
|
30
|
-
stderr += text.slice(0, remaining); if (text.length > remaining && !outputOverflow) {
|
|
31
|
-
outputOverflow = true;
|
|
32
|
-
kill();
|
|
33
|
-
} };
|
|
34
|
-
child.stdout.on("data", (chunk) => append("stdout", chunk));
|
|
35
|
-
child.stderr.on("data", (chunk) => append("stderr", chunk));
|
|
36
|
-
child.stdin.end(`${JSON.stringify({ operation, input })}\n`);
|
|
37
|
-
const timer = setTimeout(() => { timedOut = true; kill(); }, this.spec.timeoutMs ?? 60_000);
|
|
38
|
-
let code;
|
|
39
|
-
try {
|
|
40
|
-
code = await new Promise((resolve, reject) => { child.once("error", reject); child.once("close", resolve); });
|
|
41
|
-
}
|
|
42
|
-
finally {
|
|
43
|
-
clearTimeout(timer);
|
|
44
|
-
}
|
|
45
|
-
if (outputOverflow)
|
|
46
|
-
throw new Error("verifier output exceeded 1 MB");
|
|
47
|
-
if (code !== 0)
|
|
48
|
-
throw new Error(timedOut ? "verifier process timed out" : stderr.trim() || `verifier exited ${code}`);
|
|
49
|
-
return JSON.parse(stdout);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
export class VerificationPlane {
|
|
53
|
-
ledger;
|
|
54
|
-
supervisor;
|
|
55
|
-
model;
|
|
56
|
-
constructor(ledger, supervisor, model) {
|
|
57
|
-
this.ledger = ledger;
|
|
58
|
-
this.supervisor = supervisor;
|
|
59
|
-
this.model = model;
|
|
60
|
-
}
|
|
61
|
-
async verifyTurn(turnId) {
|
|
62
|
-
const turn = this.ledger.turn(turnId);
|
|
63
|
-
if (!turn)
|
|
64
|
-
throw new Error(`Turn not found: ${turnId}`);
|
|
65
|
-
if (turn.status === "in_progress")
|
|
66
|
-
throw new Error("cannot verify an in-progress Turn");
|
|
67
|
-
const trace = this.ledger.readStream(`turn:${turnId}`);
|
|
68
|
-
const handoff = this.ledger.turnItems(turnId).findLast((item) => item.type === "handoff")?.data ?? null;
|
|
69
|
-
const result = await this.model.verifyTurn({ turnId, handoff, trace });
|
|
70
|
-
this.#validate(result);
|
|
71
|
-
const thread = this.ledger.thread(turn.threadId);
|
|
72
|
-
if (!thread)
|
|
73
|
-
throw new Error("verified Turn has no Thread");
|
|
74
|
-
const level = result.findings.length ? "decision" : "fyi";
|
|
75
|
-
const body = { type: "verification_result", turnId, agent: thread.agent, findings: result.findings, tokensUsed: result.tokensUsed };
|
|
76
|
-
let route;
|
|
77
|
-
if (turn.bindingKind === "goal") {
|
|
78
|
-
const goal = this.ledger.goal(turn.goalId);
|
|
79
|
-
if (!goal || goal.owner !== thread.agent)
|
|
80
|
-
throw new Error("verified Goal Turn no longer matches its owner");
|
|
81
|
-
route = goalRoute(turn.goalId);
|
|
82
|
-
}
|
|
83
|
-
else if (turn.bindingKind === "human") {
|
|
84
|
-
if (thread.agent !== "ceo")
|
|
85
|
-
throw new Error("verified Human Turn is not owned by CEO");
|
|
86
|
-
route = humanInboxRoute();
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
if (this.supervisor.agentRole(thread.agent) !== turn.specialistRole)
|
|
90
|
-
throw new Error("verified Specialist Turn does not match its Agent profile");
|
|
91
|
-
route = specialistInboxRoute(turn.specialistRole);
|
|
92
|
-
}
|
|
93
|
-
const mail = { id: this.#mailId("verification", turnId, thread.agent, result), to: thread.agent, from: "verifier", level, ...route, body, readAt: null };
|
|
94
|
-
this.ledger.putMail(mail, "verifier");
|
|
95
|
-
return result;
|
|
96
|
-
}
|
|
97
|
-
async auditGlobal(sinceSeq = 0) {
|
|
98
|
-
const facts = this.ledger.eventsSince(sinceSeq).filter((event) => !["handoff.recorded", "runner.note"].includes(event.type));
|
|
99
|
-
const result = await this.model.blindAudit(facts);
|
|
100
|
-
this.#validate(result);
|
|
101
|
-
this.ledger.putMail({ id: this.#mailId("audit", String(sinceSeq), "ceo", result), to: "ceo", from: "audit", level: result.findings.length ? "decision" : "fyi", ...humanInboxRoute(), body: { type: "audit_result", sinceSeq, findings: result.findings, tokensUsed: result.tokensUsed }, readAt: null }, "audit");
|
|
102
|
-
return result;
|
|
103
|
-
}
|
|
104
|
-
#validate(result) {
|
|
105
|
-
const evidence = new Set(this.ledger.events().map((event) => event.seq));
|
|
106
|
-
for (const finding of result.findings)
|
|
107
|
-
if (!finding.id.trim() || finding.evidence.length === 0 || finding.evidence.some((seq) => !evidence.has(seq)))
|
|
108
|
-
throw new Error("verification finding requires an id and existing evidence");
|
|
109
|
-
}
|
|
110
|
-
#mailId(kind, source, recipient, result) { const digest = createHash("sha256").update(JSON.stringify(result)).digest("hex").slice(0, 16); return `${kind}:${source}:${recipient}:${digest}`; }
|
|
111
|
-
}
|
|
112
|
-
export function evaluateVerification(labels, predictedIds) {
|
|
113
|
-
const predicted = new Set(predictedIds);
|
|
114
|
-
const positives = labels.filter((label) => label.shouldFlag);
|
|
115
|
-
const truePositives = positives.filter((label) => predicted.has(label.id));
|
|
116
|
-
const falsePositives = labels.filter((label) => !label.shouldFlag && predicted.has(label.id));
|
|
117
|
-
const precision = truePositives.length + falsePositives.length === 0 ? 1 : truePositives.length / (truePositives.length + falsePositives.length);
|
|
118
|
-
const totalRisk = positives.reduce((sum, label) => sum + label.riskWeight, 0);
|
|
119
|
-
const recalledRisk = truePositives.reduce((sum, label) => sum + label.riskWeight, 0);
|
|
120
|
-
return { precision, riskWeightedRecall: totalRisk === 0 ? 1 : recalledRisk / totalRisk };
|
|
121
|
-
}
|
|
122
|
-
export function calibrateVerificationThreshold(labels, predictions, minimumPrecision) {
|
|
123
|
-
const candidates = [...new Set(predictions.map((prediction) => prediction.score))].sort((a, b) => a - b);
|
|
124
|
-
let selected = 1;
|
|
125
|
-
let bestRecall = -1;
|
|
126
|
-
for (const threshold of candidates) {
|
|
127
|
-
const metrics = evaluateVerification(labels, predictions.filter((prediction) => prediction.score >= threshold).map((prediction) => prediction.id));
|
|
128
|
-
if (metrics.precision >= minimumPrecision && metrics.riskWeightedRecall > bestRecall) {
|
|
129
|
-
selected = threshold;
|
|
130
|
-
bestRecall = metrics.riskWeightedRecall;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
return selected;
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=verification.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verification.js","sourceRoot":"","sources":["../src/verification.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "goah-supervisor",
|
|
3
|
-
"private": true,
|
|
4
|
-
"version": "0.13.0",
|
|
5
|
-
"license": "Apache-2.0",
|
|
6
|
-
"repository": {
|
|
7
|
-
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/billc8128/opengoah.git",
|
|
9
|
-
"directory": "packages/supervisor"
|
|
10
|
-
},
|
|
11
|
-
"engines": {
|
|
12
|
-
"node": ">=24.0.0"
|
|
13
|
-
},
|
|
14
|
-
"files": [
|
|
15
|
-
"dist",
|
|
16
|
-
"!dist/**/*.test.*",
|
|
17
|
-
"!dist/.tsbuildinfo"
|
|
18
|
-
],
|
|
19
|
-
"type": "module",
|
|
20
|
-
"main": "./dist/index.js",
|
|
21
|
-
"types": "./dist/index.d.ts",
|
|
22
|
-
"exports": "./dist/index.js",
|
|
23
|
-
"dependencies": {
|
|
24
|
-
"goah-ledger-contract": "0.13.0"
|
|
25
|
-
}
|
|
26
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"faux-runner-worker.d.ts","sourceRoot":"","sources":["../src/faux-runner-worker.ts"],"names":[],"mappings":""}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { mkdirSync, writeFileSync } from "node:fs";
|
|
2
|
-
import { dirname, join } from "node:path";
|
|
3
|
-
import { runProcessWorker } from "goah-runner-pi";
|
|
4
|
-
await runProcessWorker(async (request, emit, rpc) => {
|
|
5
|
-
if (process.env.GOAH_FAUX_CONTEXT_FILE)
|
|
6
|
-
writeFileSync(process.env.GOAH_FAUX_CONTEXT_FILE, JSON.stringify(request.context));
|
|
7
|
-
const byAgent = JSON.parse(process.env.GOAH_FAUX_STEPS_BY_AGENT ?? "{}");
|
|
8
|
-
const byTrigger = JSON.parse(process.env.GOAH_FAUX_STEPS_BY_TRIGGER ?? "{}");
|
|
9
|
-
const triggerSteps = Object.entries(byTrigger).find(([selector]) => { const separator = selector.indexOf("|"); const agent = separator < 0 ? null : selector.slice(0, separator); const prefix = separator < 0 ? selector : selector.slice(separator + 1); return (!agent || agent === request.agent) && request.sourceWakeTriggers?.some((trigger) => trigger.triggerRef.startsWith(prefix)); })?.[1];
|
|
10
|
-
const steps = triggerSteps ?? byAgent[request.agent] ?? JSON.parse(process.env.GOAH_FAUX_STEPS ?? "[]");
|
|
11
|
-
let goalBinding = request.turn?.goalBinding;
|
|
12
|
-
let recordUpdated = false;
|
|
13
|
-
for (const step of steps) {
|
|
14
|
-
if (step.write) {
|
|
15
|
-
const path = join(process.cwd(), step.write.path);
|
|
16
|
-
mkdirSync(dirname(path), { recursive: true });
|
|
17
|
-
writeFileSync(path, step.write.content);
|
|
18
|
-
}
|
|
19
|
-
for (const trace of step.trace ?? [])
|
|
20
|
-
emit(trace);
|
|
21
|
-
if (step.rpc) {
|
|
22
|
-
const result = await rpc(step.rpc.method, resolveParams(step.rpc.params, request.context));
|
|
23
|
-
emit({ type: "runner.rpc.result", data: result });
|
|
24
|
-
if (step.rpc.method === "goal.create" || step.rpc.method === "goal.work")
|
|
25
|
-
goalBinding = bindingFrom(result) ?? goalBinding;
|
|
26
|
-
if (step.rpc.method === "work_record.update")
|
|
27
|
-
recordUpdated = true;
|
|
28
|
-
}
|
|
29
|
-
if (step.crash)
|
|
30
|
-
throw new Error(step.crash);
|
|
31
|
-
if (step.delayMs)
|
|
32
|
-
await new Promise((resolve) => setTimeout(resolve, step.delayMs));
|
|
33
|
-
if (step.hang)
|
|
34
|
-
await new Promise(() => undefined);
|
|
35
|
-
if (step.response !== undefined)
|
|
36
|
-
return { outcome: "response", response: { content: step.response } };
|
|
37
|
-
if (step.handoff) {
|
|
38
|
-
const draft = step.handoff;
|
|
39
|
-
if (goalBinding && !recordUpdated) {
|
|
40
|
-
const current = await rpc("work_record.read", { goalId: goalBinding.goalId });
|
|
41
|
-
const record = current && typeof current === "object" && !Array.isArray(current) ? current : {};
|
|
42
|
-
const evidence = sourceSeqs(request.context);
|
|
43
|
-
await rpc("work_record.update", { expectedRevision: Number(record.recordRevision ?? 0), content: handoffRecord(draft.handoff, request.execution.id), reason: "record faux Goal progress", evidence: evidence.length ? [Math.max(...evidence)] : [] });
|
|
44
|
-
}
|
|
45
|
-
const validation = await rpc("goal.handoff.validate", { handoff: draft.handoff, candidateMessage: draft.response.content });
|
|
46
|
-
emit({ type: "message.assistant.completed", data: { message: { id: `faux:${request.execution.id}:handoff:${validation.attemptId}`, role: "assistant", content: [{ type: "text", text: draft.response.content }], stopReason: "toolUse" }, completionIntent: "handoff", commitState: "provisional" } });
|
|
47
|
-
if (!validation.accepted) {
|
|
48
|
-
emit({ type: "runner.handoff_rejected", data: { attemptId: validation.attemptId, issues: validation.issues } });
|
|
49
|
-
if (validation.fatal)
|
|
50
|
-
return { outcome: "abnormal", reason: validation.issues.map((issue) => issue.message).join("; ") };
|
|
51
|
-
continue;
|
|
52
|
-
}
|
|
53
|
-
const output = { validationAttemptId: validation.attemptId, validationToken: validation.token, handoff: draft.handoff };
|
|
54
|
-
return { outcome: "handoff", output };
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return { outcome: "abnormal", reason: "faux worker stopped without handoff" };
|
|
58
|
-
});
|
|
59
|
-
function resolveParams(value, context) {
|
|
60
|
-
const latest = Math.max(0, ...sourceSeqs(context));
|
|
61
|
-
const visit = (item) => {
|
|
62
|
-
if (item === "$LATEST_SOURCE_SEQ")
|
|
63
|
-
return latest;
|
|
64
|
-
if (Array.isArray(item))
|
|
65
|
-
return item.map(visit);
|
|
66
|
-
if (item && typeof item === "object")
|
|
67
|
-
return Object.fromEntries(Object.entries(item).map(([key, nested]) => [key, visit(nested)]));
|
|
68
|
-
return item;
|
|
69
|
-
};
|
|
70
|
-
return visit(value);
|
|
71
|
-
}
|
|
72
|
-
function sourceSeqs(context) { return context && typeof context === "object" && !Array.isArray(context) && Array.isArray(context.sourceSeqs) ? context.sourceSeqs.filter((item) => typeof item === "number") : []; }
|
|
73
|
-
function bindingFrom(value) {
|
|
74
|
-
if (!value || typeof value !== "object" || Array.isArray(value) || !value.goalBinding || typeof value.goalBinding !== "object" || Array.isArray(value.goalBinding))
|
|
75
|
-
return undefined;
|
|
76
|
-
const binding = value.goalBinding;
|
|
77
|
-
return typeof binding.goalId === "string" && typeof binding.goalRevision === "number" ? { goalId: binding.goalId, goalRevision: binding.goalRevision } : undefined;
|
|
78
|
-
}
|
|
79
|
-
function handoffRecord(handoff, turnId) {
|
|
80
|
-
return `# Current State\n\nGoal outcome: ${handoff.outcome}.\n\n# Observations\n\nSee Ledger evidence ${handoff.evidence.join(", ") || "none"}.\n\n# Work Completed\n\nRecorded Goal progress.\n\n# Decisions\n\nRecorded by the faux Goal runner in ${turnId}.\n\n# Blockers\n\n${handoff.outcome === "blocked" ? "Blocked." : "None."}\n\n# Next Steps\n\nContinue from the current Goal state.\n`;
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=faux-runner-worker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"faux-runner-worker.js","sourceRoot":"","sources":["../src/faux-runner-worker.ts"],"names":[],"mappings":"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"}
|