@mcoda/codali 0.1.133 → 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 +37 -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 +16 -4
- 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/gateway/LocalGatewayTaskRunner.d.ts.map +1 -1
- package/dist/gateway/LocalGatewayTaskRunner.js +13 -1
- 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 +134 -52
- package/dist/providers/ProviderTypes.d.ts +14 -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 +30 -0
- package/dist/runtime/CodaliRuntime.d.ts.map +1 -1
- package/dist/runtime/CodaliRuntime.js +71 -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 +13 -0
- package/dist/runtime/Runner.d.ts.map +1 -1
- package/dist/runtime/Runner.js +220 -158
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProviderTypes.d.ts","sourceRoot":"","sources":["../../src/providers/ProviderTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,mBAAmB,EACnB,eAAe,EACf,iCAAiC,EAClC,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;AAEpE,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;AAE9E,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAClD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GACD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,gBAAgB,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ProviderTypes.d.ts","sourceRoot":"","sources":["../../src/providers/ProviderTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type CodaliRuntimeAgentInput, type CodaliRuntimeEvent, type CodaliRuntimeInput, type CodaliRuntimePolicy, type CodaliRuntimeProviderInput, type CodaliRuntimeResult, type CodaliRuntimeTelemetry, type CodaliRuntimeToolManifest } from "./CodaliRuntime.js";
|
|
2
2
|
import type { ProviderMessage, ProviderUsage } from "../providers/ProviderTypes.js";
|
|
3
|
+
import { type ScopedModelUsage } from "../providers/ConfiguredModelScope.js";
|
|
3
4
|
export type CodaliJobStageKind = "router" | "planner" | "worker" | "adjudicator" | "synthesizer" | "verifier" | "repair" | (string & {});
|
|
4
5
|
export type CodaliJobStageStatus = "completed" | "failed" | "skipped";
|
|
5
6
|
export type CodaliJobStatus = "succeeded" | "failed" | "partial" | "needs_clarification";
|
|
@@ -178,6 +179,11 @@ export interface CodaliJobTelemetry {
|
|
|
178
179
|
stages: CodaliJobTelemetryStage[];
|
|
179
180
|
}
|
|
180
181
|
export interface CodaliJobRuntimeResult {
|
|
182
|
+
orchestration?: {
|
|
183
|
+
configHash: string;
|
|
184
|
+
usage: ScopedModelUsage;
|
|
185
|
+
toolCalls: number;
|
|
186
|
+
};
|
|
181
187
|
output: string;
|
|
182
188
|
status: CodaliJobStatus;
|
|
183
189
|
runId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodaliJobRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/CodaliJobRuntime.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC/B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"CodaliJobRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/CodaliJobRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { runCodaliTask, } from "./CodaliRuntime.js";
|
|
3
|
+
import { ConfiguredModelScope } from "../providers/ConfiguredModelScope.js";
|
|
3
4
|
const DEFAULT_JOB_TYPE = "codali_job";
|
|
4
5
|
const DEFAULT_MAX_RUNTIME_MS = 3600000;
|
|
5
6
|
const DEFAULT_MAX_FOLLOWUPS = 1;
|
|
@@ -322,6 +323,39 @@ const pickFinalOutput = (stages) => {
|
|
|
322
323
|
return "";
|
|
323
324
|
};
|
|
324
325
|
export const runCodaliJob = async (input) => {
|
|
326
|
+
if (!input.runtime.orchestration)
|
|
327
|
+
return runCodaliJobWithinScope(input);
|
|
328
|
+
if (input.runTask)
|
|
329
|
+
throw new Error("Configured orchestration cannot accept a task-runner override");
|
|
330
|
+
if (input.request.agentPolicy?.defaultProvider || Object.keys(input.request.agentPolicy?.stageProviders ?? {}).length || input.request.stages?.some(stage => stage.provider))
|
|
331
|
+
throw new Error("Configured orchestration cannot accept stage provider overrides");
|
|
332
|
+
const configured = input.runtime.orchestration;
|
|
333
|
+
const scope = configured.scope ?? new ConfiguredModelScope(configured.resolved, { effort: configured.effort, signal: input.runtime.signal, caller: configured.caller });
|
|
334
|
+
try {
|
|
335
|
+
if (scope.configHash !== configured.resolved.hash || (configured.effort !== undefined && scope.effort !== configured.effort))
|
|
336
|
+
throw new Error("Parent orchestration scope does not match configuration or effort");
|
|
337
|
+
if (configured.caller && !scope.matchesCaller(configured.caller))
|
|
338
|
+
throw new Error("Parent orchestration scope does not match caller identity");
|
|
339
|
+
const budget = scope.budget();
|
|
340
|
+
// Validate every binding before any stage starts or external operation occurs.
|
|
341
|
+
for (const stage of normalizeStages(input.request.stages))
|
|
342
|
+
scope.models(stage.role ?? stage.kind);
|
|
343
|
+
const result = await runCodaliJobWithinScope({ ...input,
|
|
344
|
+
runtime: { ...input.runtime, signal: input.runtime.signal ? AbortSignal.any([input.runtime.signal, scope.signal]) : scope.signal,
|
|
345
|
+
orchestration: { ...configured, scope } },
|
|
346
|
+
request: { ...input.request, budgets: { ...input.request.budgets,
|
|
347
|
+
maxRuntimeMs: Math.min(input.request.budgets?.maxRuntimeMs ?? input.runtime.policy.timeoutMs, budget.timeoutMs),
|
|
348
|
+
maxToolCalls: Math.min(input.request.budgets?.maxToolCalls ?? input.runtime.policy.maxToolCalls, budget.maxToolCalls),
|
|
349
|
+
} },
|
|
350
|
+
});
|
|
351
|
+
return { ...result, orchestration: { configHash: scope.configHash, usage: scope.snapshot(), toolCalls: scope.toolsUsed } };
|
|
352
|
+
}
|
|
353
|
+
finally {
|
|
354
|
+
if (!configured.scope)
|
|
355
|
+
scope.close();
|
|
356
|
+
}
|
|
357
|
+
};
|
|
358
|
+
const runCodaliJobWithinScope = async (input) => {
|
|
325
359
|
const jobId = input.request.id ?? input.runtime.metadata?.jobId ?? randomUUID();
|
|
326
360
|
const jobType = input.request.jobType || DEFAULT_JOB_TYPE;
|
|
327
361
|
const runId = input.runtime.metadata?.requestId ?? jobId;
|
|
@@ -381,6 +415,7 @@ export const runCodaliJob = async (input) => {
|
|
|
381
415
|
try {
|
|
382
416
|
const runtimeResult = await runTask({
|
|
383
417
|
...input.runtime,
|
|
418
|
+
orchestration: input.runtime.orchestration ? { ...input.runtime.orchestration, binding: stage.role ?? stage.kind } : undefined,
|
|
384
419
|
task,
|
|
385
420
|
messages: input.runtime.messages,
|
|
386
421
|
provider: stageProvider,
|
|
@@ -429,7 +464,7 @@ export const runCodaliJob = async (input) => {
|
|
|
429
464
|
endedAt: new Date(ended).toISOString(),
|
|
430
465
|
durationMs: ended - Date.parse(startedAt),
|
|
431
466
|
agentSlug: stageAgent?.slug,
|
|
432
|
-
model: stageProvider.model,
|
|
467
|
+
model: runtimeResult.orchestration?.routes.at(-1)?.catalogId ?? stageProvider.model,
|
|
433
468
|
metadata: stage.metadata,
|
|
434
469
|
};
|
|
435
470
|
await emit({
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
+
import { type RequiredRetrievalNeed } from "./RequiredRetrieval.js";
|
|
1
2
|
import type { LocalOpenAiCompatibleRunnerConfig, LocalRunnerAuthMode, LocalRunnerKind, LocalRunnerResponseFormatStrategy } from "@mcoda/shared";
|
|
3
|
+
import type { ModelCallerContext, ModelInvocation } from "../providers/ConfiguredProvider.js";
|
|
4
|
+
import { ConfiguredModelScope, type ScopedModelUsage } from "../providers/ConfiguredModelScope.js";
|
|
5
|
+
import { type ResolvedOrchestrationConfig, type EffortLevel } from "../config/OrchestrationConfig.js";
|
|
2
6
|
import type { AgentStatusPhase, Provider, ProviderMessage, ProviderUsage } from "../providers/ProviderTypes.js";
|
|
3
7
|
import { ToolRegistry } from "../tools/ToolRegistry.js";
|
|
4
8
|
import { type ToolContext, type ToolDefinition } from "../tools/ToolTypes.js";
|
|
@@ -145,6 +149,8 @@ export interface CodaliRuntimePolicy {
|
|
|
145
149
|
appVirtualTools?: string[];
|
|
146
150
|
appToolGateway?: CodaliRuntimeAppToolGatewayContract;
|
|
147
151
|
maxSteps: number;
|
|
152
|
+
finalStepWithoutTools?: boolean;
|
|
153
|
+
maxToolResultChars?: number;
|
|
148
154
|
maxToolCalls: number;
|
|
149
155
|
maxTokens?: number;
|
|
150
156
|
timeoutMs: number;
|
|
@@ -160,6 +166,7 @@ export interface CodaliRuntimeSubagentsInput {
|
|
|
160
166
|
}
|
|
161
167
|
export interface CodaliRuntimeSessionInput {
|
|
162
168
|
id?: string;
|
|
169
|
+
parentSessionId?: string;
|
|
163
170
|
storageDir?: string;
|
|
164
171
|
resume?: boolean;
|
|
165
172
|
compactOnFinish?: boolean;
|
|
@@ -220,6 +227,20 @@ export type CodaliRuntimeEvent = {
|
|
|
220
227
|
at: string;
|
|
221
228
|
};
|
|
222
229
|
export interface CodaliRuntimeInput {
|
|
230
|
+
/** Execute required retrieval using normal tool authorization, without a synthetic model override. */
|
|
231
|
+
requiredRetrieval?: readonly RequiredRetrievalNeed[];
|
|
232
|
+
/** Trusted host configuration. Never populate from an untrusted repository or tenant request. */
|
|
233
|
+
orchestration?: {
|
|
234
|
+
resolved: ResolvedOrchestrationConfig;
|
|
235
|
+
binding?: string;
|
|
236
|
+
effort?: EffortLevel;
|
|
237
|
+
caller?: ModelCallerContext;
|
|
238
|
+
/** Trusted parent job scope; configuration and effort must match. */
|
|
239
|
+
scope?: ConfiguredModelScope;
|
|
240
|
+
};
|
|
241
|
+
signal?: AbortSignal;
|
|
242
|
+
continueAfterFinal?: (message: ProviderMessage) => string | undefined | Promise<string | undefined>;
|
|
243
|
+
onMessages?: (messages: ProviderMessage[]) => Promise<void>;
|
|
223
244
|
task: string;
|
|
224
245
|
messages?: ProviderMessage[];
|
|
225
246
|
workspace: CodaliRuntimeWorkspace;
|
|
@@ -239,6 +260,9 @@ export interface CodaliRuntimeInput {
|
|
|
239
260
|
metadata?: {
|
|
240
261
|
jobId?: string;
|
|
241
262
|
requestId?: string;
|
|
263
|
+
gatewayRunId?: string;
|
|
264
|
+
gatewayTaskId?: string;
|
|
265
|
+
parentSessionId?: string;
|
|
242
266
|
tenantId?: string;
|
|
243
267
|
ownerUserId?: string;
|
|
244
268
|
apiKeyId?: string;
|
|
@@ -261,6 +285,12 @@ export interface CodaliOpenAIChunkOptions {
|
|
|
261
285
|
includeInternalEvents?: boolean;
|
|
262
286
|
}
|
|
263
287
|
export interface CodaliRuntimeResult {
|
|
288
|
+
orchestration?: {
|
|
289
|
+
configHash: string;
|
|
290
|
+
routes: ModelInvocation[];
|
|
291
|
+
cumulativeUsage: ScopedModelUsage;
|
|
292
|
+
cumulativeToolCalls: number;
|
|
293
|
+
};
|
|
264
294
|
finalMessage: string;
|
|
265
295
|
messages: ProviderMessage[];
|
|
266
296
|
toolCallsExecuted: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodaliRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/CodaliRuntime.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"CodaliRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/CodaliRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { requiredRetrievalProvider } from "./RequiredRetrieval.js";
|
|
2
3
|
import { normalizeAgentRequest, parseAgentRequest, } from "../agents/AgentProtocol.js";
|
|
3
4
|
import { createProvider } from "../providers/ProviderRegistry.js";
|
|
4
5
|
import { OpenAiCompatibleProvider } from "../providers/OpenAiCompatibleProvider.js";
|
|
@@ -6,6 +7,8 @@ import { OllamaRemoteProvider } from "../providers/OllamaRemoteProvider.js";
|
|
|
6
7
|
import { CodexCliProvider } from "../providers/CodexCliProvider.js";
|
|
7
8
|
import { ClaudeCliProvider } from "../providers/ClaudeCliProvider.js";
|
|
8
9
|
import { MswarmWorkerProvider } from "../providers/MswarmWorkerProvider.js";
|
|
10
|
+
import { ConfiguredModelScope } from "../providers/ConfiguredModelScope.js";
|
|
11
|
+
import { validateOrchestrationConfig, orchestrationHash } from "../config/OrchestrationConfig.js";
|
|
9
12
|
import { DocdexClient, normalizeDocdexRuntimeOperation, } from "../docdex/DocdexClient.js";
|
|
10
13
|
import { AppToolGatewayDispatchError, dispatchAppToolGateway, } from "../gateway/AppToolGatewayDispatcher.js";
|
|
11
14
|
import { createDiffTool } from "../tools/diff/DiffTool.js";
|
|
@@ -74,6 +77,12 @@ const DOCDEX_TOOL_OPERATIONS = new Map([
|
|
|
74
77
|
["docdex_tree", ["tree"]],
|
|
75
78
|
["docdex_memory_save", ["memory_save"]],
|
|
76
79
|
["docdex_memory_recall", ["memory_recall"]],
|
|
80
|
+
["docdex_wakeup", ["wakeup"]],
|
|
81
|
+
["docdex_diary_read", ["diary_read"]],
|
|
82
|
+
["docdex_diary_write", ["diary_write"]],
|
|
83
|
+
["docdex_conversation_read", ["conversation_read"]],
|
|
84
|
+
["docdex_conversation_search", ["conversation_search"]],
|
|
85
|
+
["docdex_kg_query", ["kg_query"]],
|
|
77
86
|
["docdex_get_profile", ["profile_read"]],
|
|
78
87
|
["docdex_save_preference", ["profile_write"]],
|
|
79
88
|
["docdex_web_research", ["web_research"]],
|
|
@@ -1266,6 +1275,7 @@ const initializeRuntimeSession = async (input, runId, warnings) => {
|
|
|
1266
1275
|
const instructionSources = instructionBlocks.map((block) => block.sourcePath);
|
|
1267
1276
|
const metadata = await store.getOrCreateSession({
|
|
1268
1277
|
sessionId: input.session.id,
|
|
1278
|
+
parentSessionId: input.session.parentSessionId,
|
|
1269
1279
|
repoRoot: input.workspace.root,
|
|
1270
1280
|
task: input.task,
|
|
1271
1281
|
instructionSources,
|
|
@@ -1282,6 +1292,9 @@ const initializeRuntimeSession = async (input, runId, warnings) => {
|
|
|
1282
1292
|
data: {
|
|
1283
1293
|
task: input.task,
|
|
1284
1294
|
mode: input.policy.mode,
|
|
1295
|
+
gatewayRunId: input.metadata?.gatewayRunId,
|
|
1296
|
+
gatewayTaskId: input.metadata?.gatewayTaskId,
|
|
1297
|
+
parentSessionId: input.session.parentSessionId,
|
|
1285
1298
|
agent: input.agent?.slug,
|
|
1286
1299
|
model: input.provider.model,
|
|
1287
1300
|
},
|
|
@@ -1752,6 +1765,7 @@ const runProtocolLoop = async (options) => {
|
|
|
1752
1765
|
maxTokens: input.policy.maxTokens,
|
|
1753
1766
|
}, warnings);
|
|
1754
1767
|
const response = await withTimeout(provider.generate({
|
|
1768
|
+
signal: input.signal,
|
|
1755
1769
|
messages: [...messages],
|
|
1756
1770
|
maxTokens: input.policy.maxTokens,
|
|
1757
1771
|
stream: input.streaming?.enabled,
|
|
@@ -1916,6 +1930,40 @@ export const createCodaliRuntime = (input) => ({
|
|
|
1916
1930
|
run: () => runCodaliTask(input),
|
|
1917
1931
|
});
|
|
1918
1932
|
export const runCodaliTask = async (input) => {
|
|
1933
|
+
if (!input.orchestration)
|
|
1934
|
+
return runCodaliTaskWithinScope(input);
|
|
1935
|
+
const configured = input.orchestration;
|
|
1936
|
+
validateOrchestrationConfig(configured.resolved.config);
|
|
1937
|
+
if (orchestrationHash(configured.resolved.config) !== configured.resolved.hash)
|
|
1938
|
+
throw new Error("Orchestration configuration changed after resolution");
|
|
1939
|
+
if (input.providerInstance)
|
|
1940
|
+
throw new Error("Configured orchestration cannot be bypassed by a provider override");
|
|
1941
|
+
if (input.subagents?.enabled)
|
|
1942
|
+
throw new Error("Configured orchestration requires controller-managed helper bindings; legacy subagents must be disabled");
|
|
1943
|
+
const scope = configured.scope ?? new ConfiguredModelScope(configured.resolved, { effort: configured.effort, signal: input.signal, caller: configured.caller });
|
|
1944
|
+
try {
|
|
1945
|
+
if (scope.configHash !== configured.resolved.hash || (configured.effort !== undefined && scope.effort !== configured.effort))
|
|
1946
|
+
throw new Error("Parent orchestration scope does not match configuration or effort");
|
|
1947
|
+
if (configured.caller && !scope.matchesCaller(configured.caller))
|
|
1948
|
+
throw new Error("Parent orchestration scope does not match caller identity");
|
|
1949
|
+
const budget = scope.budget();
|
|
1950
|
+
const signals = [scope.signal, input.signal, input.toolContext?.signal].filter((value) => Boolean(value));
|
|
1951
|
+
return await runCodaliTaskWithinScope({ ...input, signal: AbortSignal.any(signals), policy: { ...input.policy,
|
|
1952
|
+
maxSteps: Math.min(input.policy.maxSteps, budget.maxSteps),
|
|
1953
|
+
maxToolCalls: Math.min(input.policy.maxToolCalls, budget.maxToolCalls),
|
|
1954
|
+
maxTokens: Math.min(input.policy.maxTokens ?? budget.maxOutputTokens, budget.maxOutputTokens),
|
|
1955
|
+
timeoutMs: Math.min(input.policy.timeoutMs, budget.timeoutMs),
|
|
1956
|
+
} }, scope);
|
|
1957
|
+
}
|
|
1958
|
+
finally {
|
|
1959
|
+
if (!configured.scope)
|
|
1960
|
+
scope.close();
|
|
1961
|
+
}
|
|
1962
|
+
};
|
|
1963
|
+
const runCodaliTaskWithinScope = async (input, scope) => {
|
|
1964
|
+
input.signal?.throwIfAborted();
|
|
1965
|
+
if (input.requiredRetrieval && input.policy.mode !== "protocol_loop")
|
|
1966
|
+
throw new Error("Required retrieval needs protocol_loop mode");
|
|
1919
1967
|
const runId = input.metadata?.requestId ?? randomUUID();
|
|
1920
1968
|
const touchedFiles = new Set();
|
|
1921
1969
|
const warnings = [];
|
|
@@ -1927,16 +1975,31 @@ export const runCodaliTask = async (input) => {
|
|
|
1927
1975
|
events.push(event);
|
|
1928
1976
|
emitRuntimeEvent(event, input.onEvent, warnings);
|
|
1929
1977
|
};
|
|
1930
|
-
const
|
|
1978
|
+
const routes = [];
|
|
1979
|
+
const selected = input.requiredRetrieval ? requiredRetrievalProvider(input.requiredRetrieval, `${runId}:required-tools`)
|
|
1980
|
+
: scope ? scope.provider(input.orchestration?.binding ?? "lead") : input.providerInstance ?? createRuntimeProvider(input.provider);
|
|
1981
|
+
const provider = scope ? { ...selected, generate: async (request) => {
|
|
1982
|
+
const response = await selected.generate(request);
|
|
1983
|
+
if (response.route)
|
|
1984
|
+
routes.push(response.route);
|
|
1985
|
+
return response;
|
|
1986
|
+
} } : selected;
|
|
1987
|
+
const orchestration = () => scope ? { configHash: scope.configHash, routes, cumulativeUsage: scope.snapshot(), cumulativeToolCalls: scope.toolsUsed } : undefined;
|
|
1931
1988
|
const registry = buildRuntimeToolRegistry(input, dynamicToolState, warnings);
|
|
1932
1989
|
const originalRecordTouchedFile = input.toolContext?.recordTouchedFile;
|
|
1933
1990
|
const toolContext = {
|
|
1934
1991
|
...input.toolContext,
|
|
1992
|
+
signal: input.signal ?? input.toolContext?.signal,
|
|
1935
1993
|
workspaceRoot: input.workspace.root,
|
|
1936
1994
|
runId: input.toolContext?.runId ?? runId,
|
|
1937
1995
|
allowOutsideWorkspace: input.policy.allowOutsideWorkspace,
|
|
1938
1996
|
allowShell: input.policy.allowShell,
|
|
1939
1997
|
allowDestructiveOperations: input.policy.allowDestructiveOperations,
|
|
1998
|
+
beforeTool: scope ? async (...args) => {
|
|
1999
|
+
scope.reserveTool();
|
|
2000
|
+
await input.toolContext?.beforeTool?.(...args);
|
|
2001
|
+
input.signal?.throwIfAborted();
|
|
2002
|
+
} : input.toolContext?.beforeTool,
|
|
1940
2003
|
recordTouchedFile: (filePath) => {
|
|
1941
2004
|
touchedFiles.add(filePath);
|
|
1942
2005
|
originalRecordTouchedFile?.(filePath);
|
|
@@ -1976,6 +2039,7 @@ export const runCodaliTask = async (input) => {
|
|
|
1976
2039
|
await appendSessionEvent(session, runId, "final", { content: result.finalMessage.content }, warnings);
|
|
1977
2040
|
const finalSession = await compactRuntimeSession(session, "completed", warnings);
|
|
1978
2041
|
return {
|
|
2042
|
+
orchestration: orchestration(),
|
|
1979
2043
|
finalMessage: result.finalMessage.content,
|
|
1980
2044
|
messages: result.messages,
|
|
1981
2045
|
toolCallsExecuted: result.toolCallsExecuted,
|
|
@@ -2008,10 +2072,15 @@ export const runCodaliTask = async (input) => {
|
|
|
2008
2072
|
}
|
|
2009
2073
|
}
|
|
2010
2074
|
const runner = new Runner({
|
|
2075
|
+
signal: input.signal,
|
|
2076
|
+
continueAfterFinal: input.continueAfterFinal,
|
|
2077
|
+
onMessages: input.onMessages,
|
|
2011
2078
|
provider,
|
|
2012
2079
|
tools: registry,
|
|
2013
2080
|
context: toolContext,
|
|
2014
2081
|
maxSteps: input.policy.maxSteps,
|
|
2082
|
+
finalStepWithoutTools: input.policy.finalStepWithoutTools,
|
|
2083
|
+
maxToolResultChars: input.policy.maxToolResultChars,
|
|
2015
2084
|
maxToolCalls: input.policy.maxToolCalls,
|
|
2016
2085
|
maxTokens: input.policy.maxTokens,
|
|
2017
2086
|
timeoutMs: input.policy.timeoutMs,
|
|
@@ -2035,6 +2104,7 @@ export const runCodaliTask = async (input) => {
|
|
|
2035
2104
|
await appendSessionEvent(session, runId, "final", { content: result.finalMessage.content }, warnings);
|
|
2036
2105
|
const finalSession = await compactRuntimeSession(session, "completed", warnings);
|
|
2037
2106
|
return {
|
|
2107
|
+
orchestration: orchestration(),
|
|
2038
2108
|
finalMessage: result.finalMessage.content,
|
|
2039
2109
|
messages: result.messages,
|
|
2040
2110
|
toolCallsExecuted: result.toolCallsExecuted,
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { WorkState } from "../session/WorkTypes.js";
|
|
2
|
+
/** Delivery repeats accepted evidence instead of asking the model to introduce
|
|
3
|
+
* new factual claims after the goal has already passed review. */
|
|
4
|
+
export declare function completionReport(state: WorkState, budgetExhausted?: boolean): string;
|
|
5
|
+
//# sourceMappingURL=CompletionReport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompletionReport.d.ts","sourceRoot":"","sources":["../../src/runtime/CompletionReport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD;kEACkE;AAClE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,UAAQ,GAAG,MAAM,CASlF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Delivery repeats accepted evidence instead of asking the model to introduce
|
|
2
|
+
* new factual claims after the goal has already passed review. */
|
|
3
|
+
export function completionReport(state, budgetExhausted = false) {
|
|
4
|
+
const accepted = new Set(state.tasks.filter(task => task.status === "verified").flatMap(task => task.evidenceIds));
|
|
5
|
+
const summaries = [...new Set(state.evidence.filter(item => accepted.has(item.id) && item.kind === "review" && item.ok)
|
|
6
|
+
.map(item => item.summary.trim()).filter(Boolean))];
|
|
7
|
+
const heading = state.projectTask ? "Execution verified and submitted for mcoda review." : "Required work completed with recorded verification evidence.";
|
|
8
|
+
const selected = summaries.slice(-5).map(summary => summary.length <= 2000 ? summary : summary.slice(0, 2000) + "\n[Summary shortened; full evidence is retained in the session.]");
|
|
9
|
+
const more = summaries.length > selected.length ? `\n\n${summaries.length - selected.length} additional accepted task summaries are retained in the session.` : "";
|
|
10
|
+
return heading + (selected.length ? "\n\n" + selected.join("\n\n") : "") + more
|
|
11
|
+
+ (budgetExhausted ? "\n\nThe model budget was exhausted; this report uses the recorded verification evidence." : "");
|
|
12
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Counts unchanged local operations, not wall-clock-dependent tool diagnostics.
|
|
2
|
+
* A changed input or task attempt gets its own counter. Controls/remote polling
|
|
3
|
+
* are excluded: repetition alone does not prove those operations stalled. */
|
|
4
|
+
export declare class ProgressTracker {
|
|
5
|
+
private counts;
|
|
6
|
+
clear(): void;
|
|
7
|
+
observe(input: {
|
|
8
|
+
tool: string;
|
|
9
|
+
args: unknown;
|
|
10
|
+
ok: boolean;
|
|
11
|
+
hashes: Record<string, string>;
|
|
12
|
+
task?: unknown;
|
|
13
|
+
output: string;
|
|
14
|
+
errorCode?: string;
|
|
15
|
+
}): number;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=ProgressTracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressTracker.d.ts","sourceRoot":"","sources":["../../src/runtime/ProgressTracker.ts"],"names":[],"mappings":"AAKA;;6EAE6E;AAC7E,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAA6B;IAC3C,KAAK,IAAI,IAAI;IACb,OAAO,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC;QAAC,EAAE,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;CAYzJ"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
const canonical = (value) => Array.isArray(value) ? value.map(canonical)
|
|
3
|
+
: value && typeof value === "object" ? Object.fromEntries(Object.entries(value).sort(([a], [b]) => a.localeCompare(b)).map(([key, entry]) => [key, canonical(entry)])) : value;
|
|
4
|
+
/** Counts unchanged local operations, not wall-clock-dependent tool diagnostics.
|
|
5
|
+
* A changed input or task attempt gets its own counter. Controls/remote polling
|
|
6
|
+
* are excluded: repetition alone does not prove those operations stalled. */
|
|
7
|
+
export class ProgressTracker {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.counts = new Map();
|
|
10
|
+
}
|
|
11
|
+
clear() { this.counts.clear(); }
|
|
12
|
+
observe(input) {
|
|
13
|
+
if (!["read_file", "list_files", "run_shell"].includes(input.tool) || input.ok && input.tool === "run_shell")
|
|
14
|
+
return 0;
|
|
15
|
+
const signature = createHash("sha256").update(JSON.stringify(canonical({
|
|
16
|
+
tool: input.tool, args: input.args, ok: input.ok, hashes: input.hashes, task: input.task,
|
|
17
|
+
// File/list results can change without a prior snapshot, e.g. a user edit.
|
|
18
|
+
observed: input.ok ? createHash("sha256").update(input.output).digest("hex") : input.errorCode,
|
|
19
|
+
}))).digest("hex");
|
|
20
|
+
const count = (this.counts.get(signature) ?? 0) + 1;
|
|
21
|
+
this.counts.delete(signature);
|
|
22
|
+
this.counts.set(signature, count);
|
|
23
|
+
if (this.counts.size > 512)
|
|
24
|
+
this.counts.delete(this.counts.keys().next().value);
|
|
25
|
+
return count;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Recognize only direct requests to add/extend tests. This is a conservative
|
|
2
|
+
* extra evidence check, not a natural-language requirement parser. The full
|
|
3
|
+
* request still goes to independent review. Existing-test execution alone is
|
|
4
|
+
* not evidence that the agent added requested regression coverage. */
|
|
5
|
+
export declare const requestsAddedTests: (requirements: readonly {
|
|
6
|
+
description: string;
|
|
7
|
+
}[]) => boolean;
|
|
8
|
+
export declare const isTestSourcePath: (file: string) => boolean;
|
|
9
|
+
export declare const assertRequestedTestEvidence: (requirements: readonly {
|
|
10
|
+
description: string;
|
|
11
|
+
}[], changedPaths: readonly string[], currentHashes: Record<string, string>, codeChanged: boolean) => void;
|
|
12
|
+
//# sourceMappingURL=RequestedTestEvidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestedTestEvidence.d.ts","sourceRoot":"","sources":["../../src/runtime/RequestedTestEvidence.ts"],"names":[],"mappings":"AAAA;;;sEAGsE;AACtE,eAAO,MAAM,kBAAkB,GAAI,cAAc,SAAS;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,EAAE,KAAG,OAC4M,CAAC;AAEnS,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,OAI/C,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,cAAc,SAAS;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,cAAc,SAAS,MAAM,EAAE,EAAE,eAAe,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,OAAO,KAAG,IAI5L,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Recognize only direct requests to add/extend tests. This is a conservative
|
|
2
|
+
* extra evidence check, not a natural-language requirement parser. The full
|
|
3
|
+
* request still goes to independent review. Existing-test execution alone is
|
|
4
|
+
* not evidence that the agent added requested regression coverage. */
|
|
5
|
+
export const requestsAddedTests = (requirements) => requirements.some(({ description }) => /(?:^\s*(?:[-*+]\s+|\d+[.)]\s+)?|[.!?;:,]\s*|\band\s+)(?:please\s+)?(?:add|write|create|extend|expand)\s+(?:(?:a|the|some|new|more|additional|meaningful|public|focused|unit|integration|regression|automated|end-to-end|e2e)\s+)*(?:tests?\b|test\s+(?:cases|coverage)\b)/im.test(description));
|
|
6
|
+
export const isTestSourcePath = (file) => {
|
|
7
|
+
const normalized = file.replace(/\\/g, '/');
|
|
8
|
+
if (!/\.(?:[cm]?[jt]sx?|py|rs|go|java|kt|rb|php|swift|cs|c|cpp|sh)$/.test(normalized))
|
|
9
|
+
return false;
|
|
10
|
+
return /(?:^|\/)(?:__tests__|tests?|specs?)(?:\/|$)|\.(?:test|spec)\.[^/]+$|(?:^|\/)test_[^/]+\.py$|_test\.(?:go|py|rs)$|(?:Test|Tests|Spec)\.(?:java|kt|cs|php|swift)$/.test(normalized);
|
|
11
|
+
};
|
|
12
|
+
export const assertRequestedTestEvidence = (requirements, changedPaths, currentHashes, codeChanged) => {
|
|
13
|
+
if (codeChanged && requestsAddedTests(requirements) && !changedPaths.some(file => isTestSourcePath(file) && /^[a-f0-9]{64}$/.test(currentHashes[file] ?? ''))) {
|
|
14
|
+
throw new Error('This task explicitly requires added or extended tests, but no test source has changed from the workspace baseline. Running an existing test does not satisfy that requirement. Add meaningful coverage, rerun the checks, then request verification again.');
|
|
15
|
+
}
|
|
16
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Provider } from "../providers/ProviderTypes.js";
|
|
2
|
+
export type RequiredRetrievalNeed = {
|
|
3
|
+
type: "docdex.search";
|
|
4
|
+
query: string;
|
|
5
|
+
limit: number;
|
|
6
|
+
} | {
|
|
7
|
+
type: "docdex.web";
|
|
8
|
+
query: string;
|
|
9
|
+
force_web: true;
|
|
10
|
+
};
|
|
11
|
+
/** Deterministic retrieval through the ordinary authorized tool loop; makes no model call. */
|
|
12
|
+
export declare function requiredRetrievalProvider(needs: readonly RequiredRetrievalNeed[], requestId: string): Provider;
|
|
13
|
+
//# sourceMappingURL=RequiredRetrieval.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequiredRetrieval.d.ts","sourceRoot":"","sources":["../../src/runtime/RequiredRetrieval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE9D,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3D,8FAA8F;AAC9F,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,SAAS,qBAAqB,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,QAAQ,CAoB9G"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** Deterministic retrieval through the ordinary authorized tool loop; makes no model call. */
|
|
2
|
+
export function requiredRetrievalProvider(needs, requestId) {
|
|
3
|
+
if (!Array.isArray(needs) || !needs.length || needs.length > 32)
|
|
4
|
+
throw new Error("Required retrieval needs must contain 1–32 entries");
|
|
5
|
+
for (const need of needs) {
|
|
6
|
+
if (!need || typeof need.query !== "string" || !need.query.trim() || need.query.length > 16000
|
|
7
|
+
|| (need.type !== "docdex.search" && need.type !== "docdex.web")
|
|
8
|
+
|| (need.type === "docdex.search" && (!Number.isSafeInteger(need.limit) || need.limit < 1 || need.limit > 100))
|
|
9
|
+
|| (need.type === "docdex.web" && need.force_web !== true))
|
|
10
|
+
throw new Error("Invalid required retrieval need");
|
|
11
|
+
}
|
|
12
|
+
const pinned = structuredClone(needs);
|
|
13
|
+
let requested = false;
|
|
14
|
+
return { name: "required-retrieval", async generate(request) {
|
|
15
|
+
request.signal?.throwIfAborted();
|
|
16
|
+
if (!requested) {
|
|
17
|
+
requested = true;
|
|
18
|
+
return { message: { role: "assistant", content: JSON.stringify({ version: "v1", role: "rag_worker", request_id: requestId, needs: pinned }) } };
|
|
19
|
+
}
|
|
20
|
+
const response = [...request.messages].reverse().find(message => message.role === "user" && message.content.startsWith("CODALI_RESPONSE v1"));
|
|
21
|
+
if (!response)
|
|
22
|
+
throw new Error("Required retrieval response missing");
|
|
23
|
+
return { message: { role: "assistant", content: response.content.replace(/^CODALI_RESPONSE v1\s*/, "") } };
|
|
24
|
+
} };
|
|
25
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Bounded review evidence; binary assets remain checksums, never prompt data. */
|
|
2
|
+
export declare const readReviewSource: (root: string, relative: string, expectedHash: string, maxChars: number) => Promise<{
|
|
3
|
+
content: string;
|
|
4
|
+
truncated: boolean;
|
|
5
|
+
}>;
|
|
6
|
+
//# sourceMappingURL=ReviewSource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReviewSource.d.ts","sourceRoot":"","sources":["../../src/runtime/ReviewSource.ts"],"names":[],"mappings":"AAIA,kFAAkF;AAClF,eAAO,MAAM,gBAAgB,GAAU,MAAM,MAAM,EAAE,UAAU,MAAM,EAAE,cAAc,MAAM,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAuB9J,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { constants, promises as fs } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { createHash } from 'node:crypto';
|
|
4
|
+
/** Bounded review evidence; binary assets remain checksums, never prompt data. */
|
|
5
|
+
export const readReviewSource = async (root, relative, expectedHash, maxChars) => {
|
|
6
|
+
if (!/^[a-f0-9]{64}$/.test(expectedHash))
|
|
7
|
+
return { content: '[missing or not a regular source file]', truncated: false };
|
|
8
|
+
const canonicalRoot = await fs.realpath(root);
|
|
9
|
+
const file = await fs.realpath(path.join(canonicalRoot, relative));
|
|
10
|
+
if (!file.startsWith(canonicalRoot + path.sep))
|
|
11
|
+
throw new Error(`Review source escapes the workspace: ${relative}`);
|
|
12
|
+
const handle = await fs.open(file, constants.O_RDONLY | constants.O_NOFOLLOW);
|
|
13
|
+
try {
|
|
14
|
+
const metadata = await handle.stat();
|
|
15
|
+
if (!metadata.isFile())
|
|
16
|
+
throw new Error(`Review source is not a regular file: ${relative}`);
|
|
17
|
+
if (metadata.size > 128 * 1024)
|
|
18
|
+
return { content: '[large source omitted; use bounded source/diff receipts for review]', truncated: true };
|
|
19
|
+
const bytes = Buffer.alloc(metadata.size + 1);
|
|
20
|
+
let length = 0;
|
|
21
|
+
while (length < bytes.length) {
|
|
22
|
+
const { bytesRead } = await handle.read(bytes, length, bytes.length - length, length);
|
|
23
|
+
if (!bytesRead)
|
|
24
|
+
break;
|
|
25
|
+
length += bytesRead;
|
|
26
|
+
}
|
|
27
|
+
const content = bytes.subarray(0, length);
|
|
28
|
+
if (createHash('sha256').update(content).digest('hex') !== expectedHash)
|
|
29
|
+
throw new Error(`Review source changed before inspection: ${relative}`);
|
|
30
|
+
if (content.includes(0) || /\.(?:png|jpe?g|gif|webp|ico|pdf|zip|tgz|gz|mp[34]|mov|webm|wav|flac|gguf|bin|exe)$/i.test(relative))
|
|
31
|
+
return { content: '[binary artifact omitted; checksum and tool receipt identify its content]', truncated: false };
|
|
32
|
+
const text = content.toString('utf8');
|
|
33
|
+
return { content: text.slice(0, maxChars), truncated: text.length > maxChars };
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
await handle.close();
|
|
37
|
+
}
|
|
38
|
+
};
|