@mcoda/codali 0.1.134 → 0.1.135-codali.2
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/CHANGELOG.md +26 -0
- package/ORCHESTRATION.md +387 -0
- package/README.md +103 -1
- package/config/alternate-local.example.json +49 -0
- package/config/docdex-runtime.json +21 -0
- package/config/orchestration.schema.json +548 -0
- package/config/raijin-suku.example.json +172 -0
- package/config/terminal-long-scenarios.v1.json +70 -0
- package/dist/agents/RoleResolution.d.ts.map +1 -1
- package/dist/agents/RoleResolution.js +4 -4
- package/dist/api/CodaliApi.d.ts +16 -0
- package/dist/api/CodaliApi.d.ts.map +1 -1
- package/dist/api/CodaliApi.js +39 -10
- package/dist/cli/AskCommand.d.ts +3 -0
- package/dist/cli/AskCommand.d.ts.map +1 -1
- package/dist/cli/AskCommand.js +76 -13
- package/dist/cli/RunCommand.d.ts +4 -0
- package/dist/cli/RunCommand.d.ts.map +1 -1
- package/dist/cli/RunCommand.js +110 -24
- package/dist/cli/TerminalCommand.d.ts +35 -0
- package/dist/cli/TerminalCommand.d.ts.map +1 -0
- package/dist/cli/TerminalCommand.js +616 -0
- package/dist/cli/TerminalCredentials.d.ts +3 -0
- package/dist/cli/TerminalCredentials.d.ts.map +1 -0
- package/dist/cli/TerminalCredentials.js +89 -0
- package/dist/cli/TerminalInput.d.ts +24 -0
- package/dist/cli/TerminalInput.d.ts.map +1 -0
- package/dist/cli/TerminalInput.js +98 -0
- package/dist/cli/TerminalText.d.ts +10 -0
- package/dist/cli/TerminalText.d.ts.map +1 -0
- package/dist/cli/TerminalText.js +53 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +33 -4
- package/dist/cognitive/ConfiguredPipeline.d.ts +34 -0
- package/dist/cognitive/ConfiguredPipeline.d.ts.map +1 -0
- package/dist/cognitive/ConfiguredPipeline.js +50 -0
- package/dist/cognitive/ValidationRunner.d.ts +4 -0
- package/dist/cognitive/ValidationRunner.d.ts.map +1 -1
- package/dist/cognitive/ValidationRunner.js +18 -41
- package/dist/config/NodeOrchestration.d.ts +21 -0
- package/dist/config/NodeOrchestration.d.ts.map +1 -0
- package/dist/config/NodeOrchestration.js +54 -0
- package/dist/config/OrchestrationConfig.d.ts +100 -0
- package/dist/config/OrchestrationConfig.d.ts.map +1 -0
- package/dist/config/OrchestrationConfig.js +245 -0
- package/dist/connectors/mcp/McpClient.d.ts +3 -1
- package/dist/connectors/mcp/McpClient.d.ts.map +1 -1
- package/dist/connectors/mcp/McpClient.js +3 -2
- package/dist/connectors/mcp/McpServerRegistry.d.ts +2 -2
- package/dist/connectors/mcp/McpServerRegistry.d.ts.map +1 -1
- package/dist/connectors/mcp/McpServerRegistry.js +39 -16
- package/dist/connectors/mcp/McpToolAdapter.js +2 -2
- package/dist/connectors/media/ConfiguredMediaTools.d.ts +6 -0
- package/dist/connectors/media/ConfiguredMediaTools.d.ts.map +1 -0
- package/dist/connectors/media/ConfiguredMediaTools.js +41 -0
- package/dist/connectors/media/ImageGenerationTool.js +3 -3
- package/dist/connectors/media/MediaArtifactReceipt.d.ts +5 -0
- package/dist/connectors/media/MediaArtifactReceipt.d.ts.map +1 -0
- package/dist/connectors/media/MediaArtifactReceipt.js +65 -0
- package/dist/connectors/media/MediaJobStore.d.ts +68 -0
- package/dist/connectors/media/MediaJobStore.d.ts.map +1 -0
- package/dist/connectors/media/MediaJobStore.js +199 -0
- package/dist/connectors/media/MediaJobWorker.d.ts +2 -0
- package/dist/connectors/media/MediaJobWorker.d.ts.map +1 -0
- package/dist/connectors/media/MediaJobWorker.js +65 -0
- package/dist/connectors/media/RemoteMediaJob.d.ts +6 -0
- package/dist/connectors/media/RemoteMediaJob.d.ts.map +1 -0
- package/dist/connectors/media/RemoteMediaJob.js +80 -0
- package/dist/docdex/DocdexClient.d.ts +18 -1
- package/dist/docdex/DocdexClient.d.ts.map +1 -1
- package/dist/docdex/DocdexClient.js +135 -19
- package/dist/docdex/ManagedDocdex.d.ts +29 -0
- package/dist/docdex/ManagedDocdex.d.ts.map +1 -0
- package/dist/docdex/ManagedDocdex.js +215 -0
- package/dist/docdex/ManagedRuntime.d.ts +28 -0
- package/dist/docdex/ManagedRuntime.d.ts.map +1 -0
- package/dist/docdex/ManagedRuntime.js +212 -0
- package/dist/eval/EvaluationProcess.d.ts +13 -0
- package/dist/eval/EvaluationProcess.d.ts.map +1 -0
- package/dist/eval/EvaluationProcess.js +76 -0
- package/dist/eval/LongWorkflowJourney.d.ts +34 -0
- package/dist/eval/LongWorkflowJourney.d.ts.map +1 -0
- package/dist/eval/LongWorkflowJourney.js +243 -0
- package/dist/eval/PlanningCorpus.d.ts +45 -0
- package/dist/eval/PlanningCorpus.d.ts.map +1 -0
- package/dist/eval/PlanningCorpus.js +189 -0
- package/dist/eval/PlanningCorpusRunner.d.ts +13 -0
- package/dist/eval/PlanningCorpusRunner.d.ts.map +1 -0
- package/dist/eval/PlanningCorpusRunner.js +89 -0
- package/dist/eval/TerminalCorpusRunner.d.ts +36 -0
- package/dist/eval/TerminalCorpusRunner.d.ts.map +1 -0
- package/dist/eval/TerminalCorpusRunner.js +222 -0
- package/dist/eval/TerminalTaskCorpus.d.ts +26 -0
- package/dist/eval/TerminalTaskCorpus.d.ts.map +1 -0
- package/dist/eval/TerminalTaskCorpus.js +105 -0
- package/dist/eval/TerminalWorkflowCorpus.d.ts +11 -0
- package/dist/eval/TerminalWorkflowCorpus.d.ts.map +1 -0
- package/dist/eval/TerminalWorkflowCorpus.js +116 -0
- package/dist/eval/fixtures/TerminalRecoveryJourney.d.ts +4 -0
- package/dist/eval/fixtures/TerminalRecoveryJourney.d.ts.map +1 -0
- package/dist/eval/fixtures/TerminalRecoveryJourney.js +132 -0
- package/dist/gateway/CodaliGateway.d.ts +2 -0
- package/dist/gateway/CodaliGateway.d.ts.map +1 -1
- package/dist/gateway/CodaliGateway.js +11 -1
- package/dist/gateway/ConfiguredGateway.d.ts +23 -0
- package/dist/gateway/ConfiguredGateway.d.ts.map +1 -0
- package/dist/gateway/ConfiguredGateway.js +44 -0
- package/dist/gateway/GatewayTracer.d.ts +1 -1
- package/dist/gateway/GatewayTracer.d.ts.map +1 -1
- package/dist/gateway/GatewayTracer.js +2 -27
- package/dist/index.d.ts +23 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -0
- package/dist/permissions/PermissionGate.d.ts +44 -0
- package/dist/permissions/PermissionGate.d.ts.map +1 -0
- package/dist/permissions/PermissionGate.js +97 -0
- package/dist/providers/ConfiguredEmbeddings.d.ts +43 -0
- package/dist/providers/ConfiguredEmbeddings.d.ts.map +1 -0
- package/dist/providers/ConfiguredEmbeddings.js +87 -0
- package/dist/providers/ConfiguredModelScope.d.ts +69 -0
- package/dist/providers/ConfiguredModelScope.d.ts.map +1 -0
- package/dist/providers/ConfiguredModelScope.js +113 -0
- package/dist/providers/ConfiguredProvider.d.ts +79 -0
- package/dist/providers/ConfiguredProvider.d.ts.map +1 -0
- package/dist/providers/ConfiguredProvider.js +238 -0
- package/dist/providers/ModelServiceError.d.ts +10 -0
- package/dist/providers/ModelServiceError.d.ts.map +1 -0
- package/dist/providers/ModelServiceError.js +45 -0
- package/dist/providers/MswarmWorkerProvider.d.ts.map +1 -1
- package/dist/providers/MswarmWorkerProvider.js +4 -0
- package/dist/providers/OpenAiCompatibleProvider.d.ts.map +1 -1
- package/dist/providers/OpenAiCompatibleProvider.js +91 -50
- package/dist/providers/ProviderTypes.d.ts +12 -0
- package/dist/providers/ProviderTypes.d.ts.map +1 -1
- package/dist/runtime/CodaliJobRuntime.d.ts +6 -0
- package/dist/runtime/CodaliJobRuntime.d.ts.map +1 -1
- package/dist/runtime/CodaliJobRuntime.js +36 -1
- package/dist/runtime/CodaliRuntime.d.ts +28 -0
- package/dist/runtime/CodaliRuntime.d.ts.map +1 -1
- package/dist/runtime/CodaliRuntime.js +69 -1
- package/dist/runtime/CompletionReport.d.ts +5 -0
- package/dist/runtime/CompletionReport.d.ts.map +1 -0
- package/dist/runtime/CompletionReport.js +12 -0
- package/dist/runtime/ProgressTracker.d.ts +17 -0
- package/dist/runtime/ProgressTracker.d.ts.map +1 -0
- package/dist/runtime/ProgressTracker.js +27 -0
- package/dist/runtime/RequestedTestEvidence.d.ts +12 -0
- package/dist/runtime/RequestedTestEvidence.d.ts.map +1 -0
- package/dist/runtime/RequestedTestEvidence.js +16 -0
- package/dist/runtime/RequiredRetrieval.d.ts +13 -0
- package/dist/runtime/RequiredRetrieval.d.ts.map +1 -0
- package/dist/runtime/RequiredRetrieval.js +25 -0
- package/dist/runtime/ReviewSource.d.ts +6 -0
- package/dist/runtime/ReviewSource.d.ts.map +1 -0
- package/dist/runtime/ReviewSource.js +38 -0
- package/dist/runtime/Runner.d.ts +7 -0
- package/dist/runtime/Runner.d.ts.map +1 -1
- package/dist/runtime/Runner.js +215 -171
- package/dist/runtime/SecretRedaction.d.ts +11 -0
- package/dist/runtime/SecretRedaction.d.ts.map +1 -0
- package/dist/runtime/SecretRedaction.js +85 -0
- package/dist/runtime/SessionController.d.ts +148 -0
- package/dist/runtime/SessionController.d.ts.map +1 -0
- package/dist/runtime/SessionController.js +1356 -0
- package/dist/runtime/StructuralEvidence.d.ts +22 -0
- package/dist/runtime/StructuralEvidence.d.ts.map +1 -0
- package/dist/runtime/StructuralEvidence.js +87 -0
- package/dist/runtime/TaskReviewContext.d.ts +34 -0
- package/dist/runtime/TaskReviewContext.d.ts.map +1 -0
- package/dist/runtime/TaskReviewContext.js +34 -0
- package/dist/runtime/ValidationOutput.d.ts +5 -0
- package/dist/runtime/ValidationOutput.d.ts.map +1 -0
- package/dist/runtime/ValidationOutput.js +32 -0
- package/dist/runtime/VerificationCommand.d.ts +3 -0
- package/dist/runtime/VerificationCommand.d.ts.map +1 -0
- package/dist/runtime/VerificationCommand.js +48 -0
- package/dist/runtime/WorkStatusPage.d.ts +15 -0
- package/dist/runtime/WorkStatusPage.d.ts.map +1 -0
- package/dist/runtime/WorkStatusPage.js +58 -0
- package/dist/runtime/WorkspaceLedger.d.ts +13 -0
- package/dist/runtime/WorkspaceLedger.d.ts.map +1 -0
- package/dist/runtime/WorkspaceLedger.js +145 -0
- package/dist/runtime/WorkspaceLock.d.ts.map +1 -1
- package/dist/runtime/WorkspaceLock.js +20 -17
- package/dist/runtime/WorkspaceSnapshot.d.ts +13 -0
- package/dist/runtime/WorkspaceSnapshot.d.ts.map +1 -0
- package/dist/runtime/WorkspaceSnapshot.js +88 -0
- package/dist/session/AtomicState.d.ts +13 -0
- package/dist/session/AtomicState.d.ts.map +1 -0
- package/dist/session/AtomicState.js +109 -0
- package/dist/session/SessionStoragePath.d.ts +15 -0
- package/dist/session/SessionStoragePath.d.ts.map +1 -0
- package/dist/session/SessionStoragePath.js +89 -0
- package/dist/session/SessionStore.d.ts +9 -0
- package/dist/session/SessionStore.d.ts.map +1 -1
- package/dist/session/SessionStore.js +181 -47
- package/dist/session/WorkState.d.ts +23 -0
- package/dist/session/WorkState.d.ts.map +1 -0
- package/dist/session/WorkState.js +367 -0
- package/dist/session/WorkTypes.d.ts +94 -0
- package/dist/session/WorkTypes.d.ts.map +1 -0
- package/dist/session/WorkTypes.js +1 -0
- package/dist/tools/ToolRegistry.d.ts +2 -0
- package/dist/tools/ToolRegistry.d.ts.map +1 -1
- package/dist/tools/ToolRegistry.js +12 -2
- package/dist/tools/ToolTypes.d.ts +16 -0
- package/dist/tools/ToolTypes.d.ts.map +1 -1
- package/dist/tools/docdex/DocdexTools.d.ts +2 -0
- package/dist/tools/docdex/DocdexTools.d.ts.map +1 -1
- package/dist/tools/docdex/DocdexTools.js +17 -2
- package/dist/tools/filesystem/FileTools.d.ts.map +1 -1
- package/dist/tools/filesystem/FileTools.js +30 -10
- package/dist/tools/shell/AsyncProcess.d.ts +16 -0
- package/dist/tools/shell/AsyncProcess.d.ts.map +1 -0
- package/dist/tools/shell/AsyncProcess.js +94 -0
- package/dist/tools/shell/DarwinRuntimeLibraries.d.ts +13 -0
- package/dist/tools/shell/DarwinRuntimeLibraries.d.ts.map +1 -0
- package/dist/tools/shell/DarwinRuntimeLibraries.js +130 -0
- package/dist/tools/shell/HostToolchain.d.ts +19 -0
- package/dist/tools/shell/HostToolchain.d.ts.map +1 -0
- package/dist/tools/shell/HostToolchain.js +264 -0
- package/dist/tools/shell/IsolatedExecutor.d.ts +15 -0
- package/dist/tools/shell/IsolatedExecutor.d.ts.map +1 -0
- package/dist/tools/shell/IsolatedExecutor.js +134 -0
- package/dist/tools/shell/ShellTool.d.ts.map +1 -1
- package/dist/tools/shell/ShellTool.js +9 -29
- package/dist/tools/shell/ShellWorkingDirectory.d.ts +3 -0
- package/dist/tools/shell/ShellWorkingDirectory.d.ts.map +1 -0
- package/dist/tools/shell/ShellWorkingDirectory.js +30 -0
- package/package.json +27 -24
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"corpusId": "codali-terminal-long-v1",
|
|
4
|
+
"kind": "deterministic-fault-coverage",
|
|
5
|
+
"liveModelQualification": "separate; not established by these fixtures",
|
|
6
|
+
"scenarios": [
|
|
7
|
+
{
|
|
8
|
+
"id": "L01-goal-continuity",
|
|
9
|
+
"invariant": "Original intent and mandatory criteria survive five compactions and two real process restarts.",
|
|
10
|
+
"test": "eval/__tests__/TerminalRecoveryJourney.test.ts"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"id": "L02-requirement-coverage",
|
|
14
|
+
"invariant": "Missing criteria, orphan tasks and cyclic dependencies cannot replace an accepted plan.",
|
|
15
|
+
"test": "session/__tests__/WorkState.test.ts"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"id": "L03-architecture-supersession",
|
|
19
|
+
"invariant": "A superseded decision fences affected and transitive dependent work while retaining its history.",
|
|
20
|
+
"test": "session/__tests__/WorkState.test.ts"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"id": "L04-dependency-ordering",
|
|
24
|
+
"invariant": "Tasks and phases cannot start before prerequisites are verified, including after restart.",
|
|
25
|
+
"test": "eval/__tests__/TerminalRecoveryJourney.test.ts"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"id": "L05-scope-and-user-edits",
|
|
29
|
+
"invariant": "Pre-existing and concurrent user edits survive bounded writes, cancellation and recovery.",
|
|
30
|
+
"tests": ["runtime/__tests__/WorkspaceLedger.test.ts", "runtime/__tests__/SessionController.test.ts", "eval/__tests__/TerminalRecoveryJourney.test.ts"]
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": "L06-bad-helper-handoff",
|
|
34
|
+
"invariant": "Invented helper sources are rejected; a poisoned transcript cannot cancel canonical criteria.",
|
|
35
|
+
"test": "eval/__tests__/TerminalRecoveryJourney.test.ts"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"id": "L07-stale-evidence",
|
|
39
|
+
"invariant": "Changed source invalidates acceptance and reopens affected downstream work, including completed goals.",
|
|
40
|
+
"tests": ["session/__tests__/WorkState.test.ts", "runtime/__tests__/StructuralEvidence.test.ts"]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"id": "L08-premature-completion",
|
|
44
|
+
"invariant": "Missing receipts, skipped verification and an unsupported completion claim cannot finish the goal.",
|
|
45
|
+
"tests": ["runtime/__tests__/SessionController.test.ts", "eval/__tests__/TerminalRecoveryJourney.test.ts"]
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"id": "L09-steering-and-ownership",
|
|
49
|
+
"invariant": "User steering adds required work and fences previous attempts without erasing the original objective.",
|
|
50
|
+
"test": "eval/__tests__/TerminalRecoveryJourney.test.ts"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"id": "L10-duplicate-delivery",
|
|
54
|
+
"invariant": "Duplicate project handoff or media admission recovery cannot create duplicate accepted work.",
|
|
55
|
+
"tests": ["runtime/__tests__/SessionController.test.ts", "connectors/media/__tests__/RemoteMediaJob.test.ts"],
|
|
56
|
+
"serverTests": ["/srv/mswarm/tests/durable-media.test.ts", "/srv/mswarm/tests/openai-proxy.test.ts"]
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"id": "L11-stalls-and-cancellation",
|
|
60
|
+
"invariant": "Expired leases, unavailable services, interrupted status reads and process descendants have bounded outcomes.",
|
|
61
|
+
"tests": ["session/__tests__/WorkState.test.ts", "tools/shell/__tests__/AsyncProcess.test.ts", "connectors/media/__tests__/RemoteMediaJob.test.ts"]
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"id": "L12-media-crash-boundaries",
|
|
65
|
+
"invariant": "Lost admission or acknowledgement, corrupt payloads and incomplete local receipts never silently resubmit or claim success.",
|
|
66
|
+
"tests": ["connectors/media/__tests__/RemoteMediaJob.test.ts", "connectors/media/__tests__/MediaJobStore.test.ts"],
|
|
67
|
+
"remainingLiveCase": "Mixed code/media journey against the deployed durable API, including server expiry and tenant isolation."
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoleResolution.d.ts","sourceRoot":"","sources":["../../src/agents/RoleResolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,EAClC,MAAM,iCAAiC,CAAC;AAKzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,sBAAsB,GAC9B,cAAc,GACd,QAAQ,GACR,aAAa,GACb,OAAO,CAAC;AAuBZ,wEAAwE;AACxE,eAAO,MAAM,eAAe,EAAE,sBAAsB,EAInD,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,kFAAkF;IAClF,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,KAAK,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,mBAAmB,CAAC;IAChC,8DAA8D;IAC9D,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC,CAAC;IACnF,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1D;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,4BAA4B,CAAC;IAC3C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAmFD,eAAO,MAAM,wBAAwB,GACnC,OAAO,mBAAmB,KACzB,
|
|
1
|
+
{"version":3,"file":"RoleResolution.d.ts","sourceRoot":"","sources":["../../src/agents/RoleResolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,EAClC,MAAM,iCAAiC,CAAC;AAKzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,sBAAsB,GAC9B,cAAc,GACd,QAAQ,GACR,aAAa,GACb,OAAO,CAAC;AAuBZ,wEAAwE;AACxE,eAAO,MAAM,eAAe,EAAE,sBAAsB,EAInD,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,kFAAkF;IAClF,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,KAAK,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,mBAAmB,CAAC;IAChC,8DAA8D;IAC9D,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC,CAAC;IACnF,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1D;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,4BAA4B,CAAC;IAC3C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAmFD,eAAO,MAAM,wBAAwB,GACnC,OAAO,mBAAmB,KACzB,oBA4FF,CAAC"}
|
|
@@ -153,13 +153,13 @@ export const resolveConfigurableRoles = (input) => {
|
|
|
153
153
|
continue;
|
|
154
154
|
warnings.push(`agent_resolution_error:${error.code}${error.role ? `:${error.role}` : ""}`);
|
|
155
155
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
156
|
+
// An explicitly bound worker wins; otherwise prefer the orchestrator.
|
|
157
|
+
const preferredToolWorker = assignments.worker ?? assignments.orchestrator;
|
|
158
|
+
const toolCapable = findToolCapableAssignment(resolution, preferredToolWorker);
|
|
159
159
|
if (!toolCapable) {
|
|
160
160
|
warnings.push("no_tool_capable_agent");
|
|
161
161
|
}
|
|
162
|
-
else if (toolCapable !==
|
|
162
|
+
else if (toolCapable !== preferredToolWorker) {
|
|
163
163
|
warnings.push(`tool_worker_substituted:${toolCapable.candidate.slug}`);
|
|
164
164
|
}
|
|
165
165
|
return { resolution, assignments, bindings: bindingsOut, toolCapable, warnings };
|
package/dist/api/CodaliApi.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import type { EffortLevel, ResolvedOrchestrationConfig } from "../config/OrchestrationConfig.js";
|
|
2
|
+
import { type ScopedModelUsage } from "../providers/ConfiguredModelScope.js";
|
|
3
|
+
import type { ModelCallerContext, ModelInvocation } from "../providers/ConfiguredProvider.js";
|
|
1
4
|
import { attachMcpTools } from "../connectors/mcp/McpToolSource.js";
|
|
2
5
|
import { type ImageGenerationConfig } from "../connectors/media/ImageGenerationTool.js";
|
|
3
6
|
import { createProviderForAssignment } from "../gateway/LocalGatewayProvider.js";
|
|
@@ -80,6 +83,12 @@ export interface CodaliToolCallRecord {
|
|
|
80
83
|
errorCode?: string;
|
|
81
84
|
}
|
|
82
85
|
export interface CodaliResult {
|
|
86
|
+
orchestration?: {
|
|
87
|
+
configHash: string;
|
|
88
|
+
usage: ScopedModelUsage;
|
|
89
|
+
toolCalls: number;
|
|
90
|
+
routes: ModelInvocation[];
|
|
91
|
+
};
|
|
83
92
|
status: CodaliGatewayStatus;
|
|
84
93
|
/** Text answer, or the clarifying question when status is needs_clarification. */
|
|
85
94
|
answer: string;
|
|
@@ -104,6 +113,13 @@ export interface CodaliResult {
|
|
|
104
113
|
/** Flattens a message list into the single query the gateway plans against. */
|
|
105
114
|
export declare const messagesToQuery: (messages: readonly CodaliMessage[]) => string;
|
|
106
115
|
export interface CodaliRunDependencies {
|
|
116
|
+
/** Trusted host policy, never copied from a tenant's request payload. */
|
|
117
|
+
orchestration?: {
|
|
118
|
+
resolved: ResolvedOrchestrationConfig;
|
|
119
|
+
effort?: EffortLevel;
|
|
120
|
+
caller?: ModelCallerContext;
|
|
121
|
+
};
|
|
122
|
+
signal?: AbortSignal;
|
|
107
123
|
loadInventory?: typeof getAgentInventory;
|
|
108
124
|
resolveRunContext?: (workspaceRoot: string) => Promise<RunContext>;
|
|
109
125
|
buildRegistry?: (workspaceRoot: string, context: RunContext) => ToolRegistry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodaliApi.d.ts","sourceRoot":"","sources":["../../src/api/CodaliApi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CodaliApi.d.ts","sourceRoot":"","sources":["../../src/api/CodaliApi.ts"],"names":[],"mappings":"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"}
|
package/dist/api/CodaliApi.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { ConfiguredModelScope } from "../providers/ConfiguredModelScope.js";
|
|
2
3
|
import { attachHttpTools } from "../connectors/http/HttpToolSource.js";
|
|
3
4
|
import { attachMcpTools } from "../connectors/mcp/McpToolSource.js";
|
|
4
5
|
import { createImageGenerationTool, } from "../connectors/media/ImageGenerationTool.js";
|
|
@@ -62,6 +63,27 @@ const toolCallRecords = (tracer) => tracer.snapshot().toolCalls.map((call) => ({
|
|
|
62
63
|
* The same code path the CLI uses, so a product and the terminal cannot drift.
|
|
63
64
|
*/
|
|
64
65
|
export const runCodali = async (request, deps = {}) => {
|
|
66
|
+
if (!deps.orchestration)
|
|
67
|
+
return runCodaliWithinScope(request, deps);
|
|
68
|
+
if (deps.createProvider)
|
|
69
|
+
throw new Error("Configured Codali API cannot accept a legacy provider override");
|
|
70
|
+
if (request.media)
|
|
71
|
+
throw new Error("Configured Codali API media must be registered by the host using approved bindings; request media overrides are not allowed");
|
|
72
|
+
const routes = [];
|
|
73
|
+
const scope = new ConfiguredModelScope(deps.orchestration.resolved, { effort: deps.orchestration.effort, signal: deps.signal, caller: deps.orchestration.caller,
|
|
74
|
+
onEvent: event => { if (event.type === "intent" && event.route)
|
|
75
|
+
routes.push(event.route); } });
|
|
76
|
+
try {
|
|
77
|
+
for (const binding of ["planner", "synthesizer", "worker"])
|
|
78
|
+
scope.models(binding);
|
|
79
|
+
const result = await runCodaliWithinScope(request, deps, scope);
|
|
80
|
+
return { ...result, orchestration: { configHash: scope.configHash, usage: scope.snapshot(), toolCalls: scope.toolsUsed, routes } };
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
scope.close();
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
const runCodaliWithinScope = async (request, deps, scope) => {
|
|
65
87
|
const workspaceRoot = request.workspaceRoot ?? process.cwd();
|
|
66
88
|
const query = messagesToQuery(request.messages);
|
|
67
89
|
const tracer = new GatewayTracer(query);
|
|
@@ -106,7 +128,7 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
106
128
|
const context = resolvedContext;
|
|
107
129
|
for (const warning of context.warnings ?? [])
|
|
108
130
|
tracer.addWarning(warning);
|
|
109
|
-
const inventory = await (deps.loadInventory ?? getAgentInventory)();
|
|
131
|
+
const inventory = scope ? { agents: [], warnings: [] } : await (deps.loadInventory ?? getAgentInventory)();
|
|
110
132
|
const drivable = filterLocallyDrivable(inventory.agents);
|
|
111
133
|
const roles = resolveConfigurableRoles({
|
|
112
134
|
inventory: drivable,
|
|
@@ -117,7 +139,7 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
117
139
|
tracer.addWarning(warning);
|
|
118
140
|
const orchestrator = roles.assignments.orchestrator;
|
|
119
141
|
const synthesizer = roles.assignments.synthesizer;
|
|
120
|
-
if (!orchestrator && !synthesizer) {
|
|
142
|
+
if (!scope && !orchestrator && !synthesizer) {
|
|
121
143
|
return {
|
|
122
144
|
status: "failed",
|
|
123
145
|
answer: "No usable model agent could be resolved for this run.",
|
|
@@ -139,10 +161,10 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
139
161
|
const clientProduct = resolveMswarmClientProduct(context.tenant?.product);
|
|
140
162
|
const baseProvider = deps.createProvider ?? createProviderForAssignment;
|
|
141
163
|
const makeProvider = (assignment, options) => baseProvider(assignment, { clientIdentity, clientProduct, ...options });
|
|
142
|
-
const primary = makeProvider((synthesizer ?? orchestrator));
|
|
143
|
-
const orchestratorProvider = orchestrator ? makeProvider(orchestrator) : undefined;
|
|
164
|
+
const primary = scope ? scope.provider("synthesizer") : makeProvider((synthesizer ?? orchestrator));
|
|
165
|
+
const orchestratorProvider = scope ? scope.provider("planner") : orchestrator ? makeProvider(orchestrator) : undefined;
|
|
144
166
|
const workerCandidates = [roles.toolCapable, orchestrator, synthesizer].filter(Boolean);
|
|
145
|
-
let worker = primary;
|
|
167
|
+
let worker = scope ? scope.provider("worker") : primary;
|
|
146
168
|
for (const candidate of workerCandidates) {
|
|
147
169
|
const provider = makeProvider(candidate);
|
|
148
170
|
if (providerSupportsToolCalls(provider)) {
|
|
@@ -153,7 +175,7 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
153
175
|
const toolsExecutable = providerSupportsToolCalls(worker);
|
|
154
176
|
const min = (a, b) => (b === undefined ? a : Math.min(a, b));
|
|
155
177
|
// ---- Tools ------------------------------------------------------------
|
|
156
|
-
const registry = deps.buildRegistry?.(workspaceRoot, context) ?? buildDefaultRegistry(workspaceRoot, context);
|
|
178
|
+
const registry = deps.buildRegistry?.(workspaceRoot, context) ?? buildDefaultRegistry(workspaceRoot, context, scope);
|
|
157
179
|
const mcp = await (deps.attachMcp ?? attachMcpTools)({ context, toolRegistry: registry });
|
|
158
180
|
for (const warning of mcp.warnings)
|
|
159
181
|
tracer.addWarning(warning);
|
|
@@ -184,7 +206,7 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
184
206
|
// A run with no tool budget is a run without tools. Offering them anyway
|
|
185
207
|
// produced tasks that could not execute, and a failed job where the honest
|
|
186
208
|
// outcome was an answer given without them.
|
|
187
|
-
const toolBudget = min(request.budgets?.maxToolCalls ?? DEFAULTS.maxToolCalls, context.limits?.maxToolCalls);
|
|
209
|
+
const toolBudget = Math.min(scope?.budget().maxToolCalls ?? Infinity, min(request.budgets?.maxToolCalls ?? DEFAULTS.maxToolCalls, context.limits?.maxToolCalls));
|
|
188
210
|
const allowedTools = toolsExecutable && toolBudget > 0
|
|
189
211
|
? (context.allowedTools ?? defaultAllowed).filter((tool) => registered.includes(tool))
|
|
190
212
|
: [];
|
|
@@ -205,8 +227,9 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
205
227
|
// ---- Budgets ----------------------------------------------------------
|
|
206
228
|
const maxRounds = min(request.budgets?.maxRounds ?? DEFAULTS.maxRounds, context.limits?.maxRounds);
|
|
207
229
|
const maxToolCalls = toolBudget;
|
|
208
|
-
const deadlineMs = min(request.budgets?.deadlineMs ?? DEFAULTS.deadlineMs, context.limits?.deadlineMs);
|
|
230
|
+
const deadlineMs = Math.min(scope?.budget().timeoutMs ?? Infinity, min(request.budgets?.deadlineMs ?? DEFAULTS.deadlineMs, context.limits?.deadlineMs));
|
|
209
231
|
const gatewayRequest = {
|
|
232
|
+
metadata: scope ? { orchestration: { configHash: scope.configHash, effort: scope.effort, scopeId: scope.id } } : undefined,
|
|
210
233
|
id: runId,
|
|
211
234
|
query,
|
|
212
235
|
mode: request.mode ?? "balanced",
|
|
@@ -227,7 +250,7 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
227
250
|
maxIterations: maxRounds,
|
|
228
251
|
maxRuntimeMs: deadlineMs,
|
|
229
252
|
maxToolCalls,
|
|
230
|
-
maxModelCalls: request.budgets?.maxModelCalls ?? DEFAULTS.maxModelCalls,
|
|
253
|
+
maxModelCalls: Math.min(request.budgets?.maxModelCalls ?? DEFAULTS.maxModelCalls, scope?.budget().maxModelCalls ?? Infinity),
|
|
231
254
|
maxEvidenceItems: 40,
|
|
232
255
|
maxImageArtifacts: request.media ? 4 : 0,
|
|
233
256
|
maxContextPackTokens: 16000,
|
|
@@ -257,6 +280,8 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
257
280
|
provider: worker,
|
|
258
281
|
registry,
|
|
259
282
|
toolContext: {
|
|
283
|
+
signal: scope?.signal ?? deps.signal,
|
|
284
|
+
beforeTool: scope ? async () => scope.reserveTool() : undefined,
|
|
260
285
|
workspaceRoot,
|
|
261
286
|
allowShell: false,
|
|
262
287
|
allowDestructiveOperations: false,
|
|
@@ -286,6 +311,7 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
286
311
|
});
|
|
287
312
|
try {
|
|
288
313
|
const result = await gateway.run(gatewayRequest);
|
|
314
|
+
scope?.signal.throwIfAborted();
|
|
289
315
|
return {
|
|
290
316
|
status: result.status,
|
|
291
317
|
answer: result.answer,
|
|
@@ -322,9 +348,12 @@ export const runCodali = async (request, deps = {}) => {
|
|
|
322
348
|
await mcp.registry?.close();
|
|
323
349
|
}
|
|
324
350
|
};
|
|
325
|
-
const buildDefaultRegistry = (workspaceRoot, context) => {
|
|
351
|
+
const buildDefaultRegistry = (workspaceRoot, context, scope) => {
|
|
326
352
|
const registry = new ToolRegistry();
|
|
327
353
|
const client = new DocdexClient({
|
|
354
|
+
signal: () => scope?.signal,
|
|
355
|
+
beforeRequest: scope ? () => scope.reserveTool() : undefined,
|
|
356
|
+
localSearchOnly: Boolean(scope),
|
|
328
357
|
baseUrl: context.docdex?.baseUrl ?? "http://127.0.0.1:28491",
|
|
329
358
|
repoRoot: docdexRepoRootFor(context.repo?.root, context.docdex?.repoId, workspaceRoot),
|
|
330
359
|
repoId: context.docdex?.repoId,
|
package/dist/cli/AskCommand.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type EffortLevel } from "../config/OrchestrationConfig.js";
|
|
1
2
|
import { getAgentInventory } from "../agents/AgentInventory.js";
|
|
2
3
|
import { attachMcpTools } from "../connectors/mcp/McpToolSource.js";
|
|
3
4
|
import { createProviderForAssignment } from "../gateway/LocalGatewayProvider.js";
|
|
@@ -32,6 +33,8 @@ export declare const DEFAULT_DEADLINE_MS = 600000;
|
|
|
32
33
|
*/
|
|
33
34
|
export declare const DEFAULT_MAX_PARALLEL_WORKERS = 3;
|
|
34
35
|
export interface AskOptions {
|
|
36
|
+
orchestrationConfig?: string;
|
|
37
|
+
effort?: EffortLevel;
|
|
35
38
|
query: string;
|
|
36
39
|
workspaceRoot: string;
|
|
37
40
|
mode: CodaliGatewayMode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AskCommand.d.ts","sourceRoot":"","sources":["../../src/cli/AskCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGvF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIpE,OAAO,EACL,2BAA2B,EAE5B,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,EACV,iBAAiB,EAEjB,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG9D;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C;;;GAGG;AACH,eAAO,MAAM,mBAAmB,SAAU,CAAC;AAE3C;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAe9C,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"AskCommand.d.ts","sourceRoot":"","sources":["../../src/cli/AskCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAA2B,KAAK,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAE7F,OAAO,EAAyB,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGvF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIpE,OAAO,EACL,2BAA2B,EAE5B,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,EACV,iBAAiB,EAEjB,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG9D;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C;;;GAGG;AACH,eAAO,MAAM,mBAAmB,SAAU,CAAC;AAE3C;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAe9C,MAAM,WAAW,UAAU;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;CAClB;AAkCD,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,KAAG,UAiF7C,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACzC,iBAAiB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IACnE,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,KAAK,YAAY,CAAC;IAC3E,cAAc,CAAC,EAAE,CACf,UAAU,EAAE,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAAC,KAC1D,QAAQ,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,cAAc,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAkCD,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,MAAM,GACjB,MAAM,MAAM,EAAE,EACd,OAAM,eAAoB,KACzB,OAAO,CAAC,UAAU,CAyBpB,CAAC;AA6ZF,eAAO,MAAM,UAAU;cACL,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAMzC,CAAC"}
|
package/dist/cli/AskCommand.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
+
import { loadOrchestrationConfig } from "../config/OrchestrationConfig.js";
|
|
3
|
+
import { ConfiguredModelScope } from "../providers/ConfiguredModelScope.js";
|
|
2
4
|
import { filterLocallyDrivable, getAgentInventory } from "../agents/AgentInventory.js";
|
|
3
5
|
import { resolveConfigurableRoles } from "../agents/RoleResolution.js";
|
|
4
6
|
import { attachHttpTools } from "../connectors/http/HttpToolSource.js";
|
|
@@ -55,6 +57,9 @@ const DEFAULT_ALLOWED_TOOLS = [
|
|
|
55
57
|
];
|
|
56
58
|
const HELP = `Usage: codali ask "<question>" [options]
|
|
57
59
|
|
|
60
|
+
Configured routing: --orchestration-config PATH --effort low|medium|high|max
|
|
61
|
+
Deployment default: CODALI_ORCHESTRATION_CONFIG
|
|
62
|
+
|
|
58
63
|
Ask Codali a question. The orchestrator routes the request, gathers evidence
|
|
59
64
|
with the tools available to it, and returns a cited answer.
|
|
60
65
|
|
|
@@ -94,10 +99,24 @@ export const parseAskArgs = (argv) => {
|
|
|
94
99
|
let responseSchemaPath;
|
|
95
100
|
let responseFormat;
|
|
96
101
|
let noTools = false;
|
|
102
|
+
let orchestrationConfig;
|
|
103
|
+
let effort;
|
|
97
104
|
for (let index = 0; index < argv.length; index += 1) {
|
|
98
105
|
const arg = argv[index];
|
|
99
106
|
const next = argv[index + 1];
|
|
100
|
-
if (arg === "--
|
|
107
|
+
if (arg === "--orchestration-config") {
|
|
108
|
+
if (!next || next.startsWith("--"))
|
|
109
|
+
throw new Error("--orchestration-config requires a file path");
|
|
110
|
+
orchestrationConfig = next;
|
|
111
|
+
index += 1;
|
|
112
|
+
}
|
|
113
|
+
else if (arg === "--effort") {
|
|
114
|
+
if (!["low", "medium", "high", "max"].includes(next ?? ""))
|
|
115
|
+
throw new Error("--effort requires low|medium|high|max");
|
|
116
|
+
effort = next;
|
|
117
|
+
index += 1;
|
|
118
|
+
}
|
|
119
|
+
else if (arg === "--workspace-root" && next) {
|
|
101
120
|
workspaceRoot = path.resolve(next);
|
|
102
121
|
index += 1;
|
|
103
122
|
}
|
|
@@ -147,6 +166,8 @@ export const parseAskArgs = (argv) => {
|
|
|
147
166
|
throw new Error("codali ask requires a question.\n\n" + HELP);
|
|
148
167
|
}
|
|
149
168
|
return {
|
|
169
|
+
orchestrationConfig,
|
|
170
|
+
effort,
|
|
150
171
|
query,
|
|
151
172
|
workspaceRoot,
|
|
152
173
|
mode,
|
|
@@ -161,11 +182,14 @@ export const parseAskArgs = (argv) => {
|
|
|
161
182
|
noTools,
|
|
162
183
|
};
|
|
163
184
|
};
|
|
164
|
-
const buildDefaultRegistry = (options, context, judgeProvider) => {
|
|
185
|
+
const buildDefaultRegistry = (options, context, judgeProvider, scope) => {
|
|
165
186
|
const registry = new ToolRegistry();
|
|
166
187
|
if (options.noTools)
|
|
167
188
|
return registry;
|
|
168
189
|
const client = new DocdexClient({
|
|
190
|
+
signal: () => scope?.signal,
|
|
191
|
+
beforeRequest: scope ? () => scope.reserveTool() : undefined,
|
|
192
|
+
localSearchOnly: Boolean(scope),
|
|
169
193
|
baseUrl: options.docdexBaseUrl ?? context.docdex?.baseUrl ?? "http://127.0.0.1:28491",
|
|
170
194
|
repoRoot: docdexRepoRootFor(context.repo?.root, context.docdex?.repoId, options.workspaceRoot),
|
|
171
195
|
repoId: context.docdex?.repoId,
|
|
@@ -189,6 +213,35 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
189
213
|
return { tracer: new GatewayTracer(""), exitCode: 0 };
|
|
190
214
|
}
|
|
191
215
|
const options = parseAskArgs(argv);
|
|
216
|
+
const file = options.orchestrationConfig ?? process.env.CODALI_ORCHESTRATION_CONFIG;
|
|
217
|
+
if (!file) {
|
|
218
|
+
if (options.effort)
|
|
219
|
+
throw new Error("Legacy ask requires --orchestration-config to select an effort budget");
|
|
220
|
+
return runAskWithOptions(options, deps);
|
|
221
|
+
}
|
|
222
|
+
if (deps.createProvider)
|
|
223
|
+
throw new Error("Configured ask cannot accept a legacy provider override");
|
|
224
|
+
const resolved = await loadOrchestrationConfig(file);
|
|
225
|
+
const context = deps.resolveRunContext ? await deps.resolveRunContext(options.workspaceRoot)
|
|
226
|
+
: await new LocalConfigRunContextResolver().resolve({ workspaceRoot: options.workspaceRoot });
|
|
227
|
+
const abort = new AbortController();
|
|
228
|
+
const stop = () => abort.abort(new Error("Configured ask cancelled"));
|
|
229
|
+
const scope = new ConfiguredModelScope(resolved, { effort: options.effort, signal: abort.signal,
|
|
230
|
+
caller: { clientIdentity: context.tenant?.slug ?? context.tenant?.id, clientProduct: resolveMswarmClientProduct(context.tenant?.product) ?? "codali" } });
|
|
231
|
+
process.once("SIGINT", stop);
|
|
232
|
+
process.once("SIGTERM", stop);
|
|
233
|
+
try {
|
|
234
|
+
for (const binding of options.noTools ? ["planner", "synthesizer"] : ["planner", "synthesizer", "worker"])
|
|
235
|
+
scope.models(binding);
|
|
236
|
+
return await runAskWithOptions(options, { ...deps, resolveRunContext: async () => context }, scope);
|
|
237
|
+
}
|
|
238
|
+
finally {
|
|
239
|
+
scope.close();
|
|
240
|
+
process.removeListener("SIGINT", stop);
|
|
241
|
+
process.removeListener("SIGTERM", stop);
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
const runAskWithOptions = async (options, deps, scope) => {
|
|
192
245
|
const write = deps.write ?? ((line) => process.stdout.write(`${line}\n`));
|
|
193
246
|
const tracer = new GatewayTracer(options.query, { verbose: options.trace });
|
|
194
247
|
// ---- Resolve what this run may touch --------------------------------
|
|
@@ -200,7 +253,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
200
253
|
for (const warning of context.warnings ?? [])
|
|
201
254
|
tracer.addWarning(warning);
|
|
202
255
|
// ---- Resolve models (inventory is loaded once per process) -----------
|
|
203
|
-
const inventory = await (deps.loadInventory ?? getAgentInventory)();
|
|
256
|
+
const inventory = scope ? { agents: [], warnings: [] } : await (deps.loadInventory ?? getAgentInventory)();
|
|
204
257
|
for (const warning of inventory.warnings)
|
|
205
258
|
tracer.addWarning(warning);
|
|
206
259
|
// Only consider agents this process can actually call. Selecting one it
|
|
@@ -216,9 +269,11 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
216
269
|
for (const warning of roles.warnings)
|
|
217
270
|
tracer.addWarning(warning);
|
|
218
271
|
tracer.setRoleBindings(roles.bindings);
|
|
272
|
+
if (scope)
|
|
273
|
+
tracer.setRoleBindings({ orchestrator: "configured:planner", synthesizer: "configured:synthesizer", worker: "configured:worker" });
|
|
219
274
|
const orchestrator = roles.assignments.orchestrator;
|
|
220
275
|
const synthesizer = roles.assignments.synthesizer;
|
|
221
|
-
if (!orchestrator && !synthesizer) {
|
|
276
|
+
if (!scope && !orchestrator && !synthesizer) {
|
|
222
277
|
write("No usable mcoda agent was found for the orchestrator or synthesizer role.\n" +
|
|
223
278
|
"Check `mcoda agent list --json` and bind roles in ~/.codali/config.json.");
|
|
224
279
|
tracer.finish({ status: "failed", completionReason: "no_agents_resolved" });
|
|
@@ -232,12 +287,12 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
232
287
|
const clientProduct = resolveMswarmClientProduct(context.tenant?.product);
|
|
233
288
|
const baseProvider = deps.createProvider ?? createProviderForAssignment;
|
|
234
289
|
const makeProvider = (assignment, options) => baseProvider(assignment, { clientIdentity, clientProduct, ...options });
|
|
235
|
-
const orchestratorProvider = orchestrator ? makeProvider(orchestrator) : undefined;
|
|
236
|
-
const synthesizerProvider = synthesizer ? makeProvider(synthesizer) : undefined;
|
|
290
|
+
const orchestratorProvider = scope ? scope.provider("planner") : orchestrator ? makeProvider(orchestrator) : undefined;
|
|
291
|
+
const synthesizerProvider = scope ? scope.provider("synthesizer") : synthesizer ? makeProvider(synthesizer) : undefined;
|
|
237
292
|
// Either role can stand in for the other if only one resolved; the trace
|
|
238
293
|
// records which, so a degraded run is visible rather than silent.
|
|
239
294
|
const primary = (synthesizerProvider ?? orchestratorProvider);
|
|
240
|
-
if (!orchestrator || !synthesizer) {
|
|
295
|
+
if (!scope && (!orchestrator || !synthesizer)) {
|
|
241
296
|
tracer.addWarning("agent_role_substituted");
|
|
242
297
|
}
|
|
243
298
|
// Worker tasks need a provider that can emit structured tool calls. The
|
|
@@ -246,7 +301,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
246
301
|
// through text and can never surface a call. So probe the built provider.
|
|
247
302
|
const workerCandidates = [roles.toolCapable, roles.assignments.worker, orchestrator, synthesizer].filter((assignment) => Boolean(assignment));
|
|
248
303
|
let workerAssignment = workerCandidates[0];
|
|
249
|
-
let worker = workerAssignment ? makeProvider(workerAssignment) : primary;
|
|
304
|
+
let worker = scope && !options.noTools ? scope.provider("worker") : workerAssignment ? makeProvider(workerAssignment) : primary;
|
|
250
305
|
for (const candidate of workerCandidates) {
|
|
251
306
|
const provider = makeProvider(candidate);
|
|
252
307
|
if (providerSupportsToolCalls(provider)) {
|
|
@@ -269,7 +324,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
269
324
|
// ---- Tools -----------------------------------------------------------
|
|
270
325
|
const registry = deps.buildRegistry
|
|
271
326
|
? deps.buildRegistry(options, context)
|
|
272
|
-
: buildDefaultRegistry(options, context, orchestratorProvider ?? worker);
|
|
327
|
+
: buildDefaultRegistry(options, context, orchestratorProvider ?? worker, scope);
|
|
273
328
|
// Connect the run's MCP servers and register what they expose into the same
|
|
274
329
|
// registry the built-in and docdex tools live in. A failing server degrades
|
|
275
330
|
// its own tools to unavailable and is reported; it never fails the run.
|
|
@@ -311,9 +366,9 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
311
366
|
const toolDescriptors = gatewayToolDescriptorsFromRegistry(registry, allowedTools);
|
|
312
367
|
// ---- Build the request ------------------------------------------------
|
|
313
368
|
const limits = context.limits ?? {};
|
|
314
|
-
const maxToolCalls = Math.min(options.maxToolCalls, limits.maxToolCalls ?? Infinity);
|
|
369
|
+
const maxToolCalls = Math.min(options.maxToolCalls, limits.maxToolCalls ?? Infinity, scope?.budget().maxToolCalls ?? Infinity);
|
|
315
370
|
const maxRounds = Math.min(options.maxRounds, limits.maxRounds ?? Infinity);
|
|
316
|
-
const deadlineMs = Math.min(options.deadlineMs, limits.deadlineMs ?? Infinity);
|
|
371
|
+
const deadlineMs = Math.min(options.deadlineMs, limits.deadlineMs ?? Infinity, scope?.budget().timeoutMs ?? Infinity);
|
|
317
372
|
// Every tool must be declared to the capability compiler, which otherwise
|
|
318
373
|
// discards it as `not_declared`. That includes docdex tools outside the
|
|
319
374
|
// compiler's hardcoded backing-tool set — `docdex_web_research` among them,
|
|
@@ -326,6 +381,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
326
381
|
responseSchema = JSON.parse(await readFile(path.resolve(options.responseSchemaPath), "utf8"));
|
|
327
382
|
}
|
|
328
383
|
const request = {
|
|
384
|
+
metadata: scope ? { orchestration: { configHash: scope.configHash, effort: scope.effort, scopeId: scope.id } } : undefined,
|
|
329
385
|
query: options.query,
|
|
330
386
|
mode: options.mode,
|
|
331
387
|
product: { name: "codali-cli" },
|
|
@@ -350,7 +406,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
350
406
|
maxIterations: maxRounds,
|
|
351
407
|
maxRuntimeMs: deadlineMs,
|
|
352
408
|
maxToolCalls,
|
|
353
|
-
maxModelCalls: DEFAULT_MAX_MODEL_CALLS,
|
|
409
|
+
maxModelCalls: Math.min(DEFAULT_MAX_MODEL_CALLS, scope?.budget().maxModelCalls ?? Infinity),
|
|
354
410
|
maxEvidenceItems: 40,
|
|
355
411
|
maxContextPackTokens: 16000,
|
|
356
412
|
allowWrites: false,
|
|
@@ -381,6 +437,8 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
381
437
|
provider: worker,
|
|
382
438
|
registry,
|
|
383
439
|
toolContext: {
|
|
440
|
+
signal: scope?.signal,
|
|
441
|
+
beforeTool: scope ? async () => scope.reserveTool() : undefined,
|
|
384
442
|
workspaceRoot: options.workspaceRoot,
|
|
385
443
|
allowShell: false,
|
|
386
444
|
allowDestructiveOperations: false,
|
|
@@ -417,6 +475,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
417
475
|
});
|
|
418
476
|
try {
|
|
419
477
|
const planning = await gateway.plan(request);
|
|
478
|
+
scope?.signal.throwIfAborted();
|
|
420
479
|
tracer.setRunId(planning.runId);
|
|
421
480
|
tracer.recordPlan({
|
|
422
481
|
capabilities: planning.classifier.capabilities,
|
|
@@ -448,6 +507,7 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
448
507
|
return { result: clarified, tracer, exitCode: 0 };
|
|
449
508
|
}
|
|
450
509
|
const workers = await gateway.executePlannedWorkerTasks(request, planning);
|
|
510
|
+
scope?.signal.throwIfAborted();
|
|
451
511
|
tracer.recordRound(1);
|
|
452
512
|
// Surface worker failures. Without this a run whose every task failed still
|
|
453
513
|
// reaches the synthesizer, which correctly reports it cannot answer — and
|
|
@@ -459,12 +519,15 @@ export const runAsk = async (argv, deps = {}) => {
|
|
|
459
519
|
}
|
|
460
520
|
for (const error of workers.workers.errors)
|
|
461
521
|
tracer.addWarning(`worker_error:${error}`);
|
|
462
|
-
const
|
|
522
|
+
const synthesized = await gateway.synthesizeFinalAnswer({
|
|
463
523
|
runId: planning.runId,
|
|
464
524
|
request,
|
|
465
525
|
planning,
|
|
466
526
|
workers: workers.workers,
|
|
467
527
|
});
|
|
528
|
+
scope?.signal.throwIfAborted();
|
|
529
|
+
const result = { ...synthesized, telemetry: { ...synthesized.telemetry,
|
|
530
|
+
...(scope ? { orchestration: { configHash: scope.configHash, usage: scope.snapshot(), toolCalls: scope.toolsUsed } } : {}) } };
|
|
468
531
|
tracer.finish({
|
|
469
532
|
status: result.status,
|
|
470
533
|
finalizerMode: String(result.telemetry.finalizerMode ?? "synthesizer"),
|
package/dist/cli/RunCommand.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import { type EffortLevel } from "../config/OrchestrationConfig.js";
|
|
1
2
|
import type { ToolConfig } from "../config/Config.js";
|
|
2
3
|
import type { ProviderConfig } from "../providers/ProviderTypes.js";
|
|
3
4
|
import { type PipelinePhase } from "../cognitive/ProviderRouting.js";
|
|
4
5
|
import { type PhaseAgentSelection } from "../agents/PhaseAgentSelector.js";
|
|
5
6
|
interface ParsedArgs {
|
|
7
|
+
orchestrationConfig?: string;
|
|
8
|
+
effort?: EffortLevel;
|
|
6
9
|
workspaceRoot?: string;
|
|
7
10
|
project?: string;
|
|
8
11
|
command?: string;
|
|
@@ -88,6 +91,7 @@ export declare const assessPhaseFallbackSuitability: (phase: PipelinePhase, buil
|
|
|
88
91
|
};
|
|
89
92
|
export declare class RunCommand {
|
|
90
93
|
static run(argv: string[]): Promise<void>;
|
|
94
|
+
private static runParsed;
|
|
91
95
|
}
|
|
92
96
|
export {};
|
|
93
97
|
//# sourceMappingURL=RunCommand.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RunCommand.d.ts","sourceRoot":"","sources":["../../src/cli/RunCommand.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RunCommand.d.ts","sourceRoot":"","sources":["../../src/cli/RunCommand.ts"],"names":[],"mappings":"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"}
|