@claudexor/orchestrator 2.1.2 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/attemptTelemetry.d.ts +9 -0
- package/dist/attemptTelemetry.d.ts.map +1 -1
- package/dist/attemptTelemetry.js +25 -0
- package/dist/attemptTelemetry.js.map +1 -1
- package/dist/attemptUsage.d.ts +19 -0
- package/dist/attemptUsage.d.ts.map +1 -0
- package/dist/attemptUsage.js +29 -0
- package/dist/attemptUsage.js.map +1 -0
- package/dist/candidateEvidence.d.ts +22 -0
- package/dist/candidateEvidence.d.ts.map +1 -0
- package/dist/candidateEvidence.js +40 -0
- package/dist/candidateEvidence.js.map +1 -0
- package/dist/candidateOutputs.d.ts +56 -0
- package/dist/candidateOutputs.d.ts.map +1 -0
- package/dist/candidateOutputs.js +209 -0
- package/dist/candidateOutputs.js.map +1 -0
- package/dist/continuity-facts.d.ts +37 -0
- package/dist/continuity-facts.d.ts.map +1 -0
- package/dist/continuity-facts.js +100 -0
- package/dist/continuity-facts.js.map +1 -0
- package/dist/continuity-summary.d.ts +45 -0
- package/dist/continuity-summary.d.ts.map +1 -0
- package/dist/continuity-summary.js +113 -0
- package/dist/continuity-summary.js.map +1 -0
- package/dist/continuity.d.ts +119 -0
- package/dist/continuity.d.ts.map +1 -0
- package/dist/continuity.js +220 -0
- package/dist/continuity.js.map +1 -0
- package/dist/contract-gates.d.ts +2 -3
- package/dist/contract-gates.d.ts.map +1 -1
- package/dist/contract-gates.js +2 -3
- package/dist/contract-gates.js.map +1 -1
- package/dist/council.d.ts +57 -0
- package/dist/council.d.ts.map +1 -0
- package/dist/council.js +98 -0
- package/dist/council.js.map +1 -0
- package/dist/credential-profiles.d.ts +37 -1
- package/dist/credential-profiles.d.ts.map +1 -1
- package/dist/credential-profiles.js +111 -3
- package/dist/credential-profiles.js.map +1 -1
- package/dist/diffReview.d.ts +3 -0
- package/dist/diffReview.d.ts.map +1 -1
- package/dist/diffReview.js +3 -0
- package/dist/diffReview.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/orchestrator.d.ts +218 -62
- package/dist/orchestrator.d.ts.map +1 -1
- package/dist/orchestrator.js +1078 -1236
- package/dist/orchestrator.js.map +1 -1
- package/dist/planQuestions.d.ts +11 -0
- package/dist/planQuestions.d.ts.map +1 -0
- package/dist/planQuestions.js +119 -0
- package/dist/planQuestions.js.map +1 -0
- package/dist/planRun.d.ts +114 -0
- package/dist/planRun.d.ts.map +1 -0
- package/dist/planRun.js +346 -0
- package/dist/planRun.js.map +1 -0
- package/dist/runSupport.d.ts +31 -80
- package/dist/runSupport.d.ts.map +1 -1
- package/dist/runSupport.js +33 -106
- package/dist/runSupport.js.map +1 -1
- package/dist/runTerminals.d.ts.map +1 -1
- package/dist/runTerminals.js +18 -7
- package/dist/runTerminals.js.map +1 -1
- package/package.json +18 -19
- package/dist/orchestrateExecutor.d.ts +0 -43
- package/dist/orchestrateExecutor.d.ts.map +0 -1
- package/dist/orchestrateExecutor.js +0 -207
- package/dist/orchestrateExecutor.js.map +0 -1
- package/dist/orchestratePlanner.d.ts +0 -12
- package/dist/orchestratePlanner.d.ts.map +0 -1
- package/dist/orchestratePlanner.js +0 -91
- package/dist/orchestratePlanner.js.map +0 -1
- package/dist/outcomeReducer.d.ts +0 -25
- package/dist/outcomeReducer.d.ts.map +0 -1
- package/dist/outcomeReducer.js +0 -121
- package/dist/outcomeReducer.js.map +0 -1
package/dist/orchestrator.d.ts
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import type { AccessProfile, Attachment, ControlReviewerPanelEntry, EffortHint, ExternalContextPolicy, HarnessEvent, InteractionAnswerSet, InteractionRequest, ModeKind, PaidBudget, QuotaSnapshot, RoutingGoal, ProtectedPathApproval, RunEvent,
|
|
2
|
-
import { type
|
|
3
|
-
import type { AdapterRegistry } from "@claudexor/core";
|
|
1
|
+
import type { AccessProfile, Attachment, ControlReviewerPanelEntry, EffortHint, KnownModelEntry, ExternalContextPolicy, HarnessEvent, Intent, InteractionAnswerSet, InteractionRequest, ModeKind, PaidBudget, QuotaSnapshot, RoutingGoal, ProtectedPathApproval, RequestRequirementResolution, RunEvent, RunLifecycle, RunOutcomeFacts, TaskContract, TestCommandInvocation, ProviderFamily, ImplementationTransport, WebPolicySupport } from "@claudexor/schema";
|
|
2
|
+
import { type ExtraMcpServer } from "@claudexor/schema";
|
|
3
|
+
import type { AdapterRegistry, HarnessAdapter } from "@claudexor/core";
|
|
4
|
+
import { type ContinuityDisclosureResult } from "./continuity.js";
|
|
4
5
|
import { type DiffReviewInput, type DiffReviewResult } from "./diffReview.js";
|
|
6
|
+
import { type AttemptTelemetry } from "./attemptTelemetry.js";
|
|
7
|
+
import { ArtifactStore, type RunPaths } from "@claudexor/artifact-store";
|
|
8
|
+
import { EventLog } from "@claudexor/event-log";
|
|
5
9
|
import { type ReviewerSpec } from "@claudexor/review";
|
|
6
10
|
import { type SynthesisMode } from "@claudexor/synthesis";
|
|
7
11
|
import { BudgetLedger } from "@claudexor/budget";
|
|
@@ -26,6 +30,29 @@ export interface OrchestratorDeps {
|
|
|
26
30
|
/** Optional per-provider-family reviewer effort override where the harness supports it. */
|
|
27
31
|
reviewerEfforts?: Partial<Record<ProviderFamily, EffortHint>>;
|
|
28
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Continuity facts the daemon hands the engine for a thread turn (INV-137).
|
|
35
|
+
* Cheap thread-store data only; the engine reads prior outputs + git anchor
|
|
36
|
+
* itself (it owns the artifact store) and does the checkpoint math.
|
|
37
|
+
*/
|
|
38
|
+
export interface ThreadContinuityContext {
|
|
39
|
+
/** The current turn being run (the disclosure is stamped here). */
|
|
40
|
+
turnId: string;
|
|
41
|
+
/** Requested credential profile for this run (null = engine default). */
|
|
42
|
+
profileId: string | null;
|
|
43
|
+
/** Prior turns of the thread, in order (EXCLUDES the current turn). */
|
|
44
|
+
priorTurns: Array<{
|
|
45
|
+
id: string;
|
|
46
|
+
prompt: string;
|
|
47
|
+
runId: string | null;
|
|
48
|
+
}>;
|
|
49
|
+
/** All lane checkpoints of the thread (to locate the prior head's lane). */
|
|
50
|
+
laneCheckpoints: Array<{
|
|
51
|
+
harness: string;
|
|
52
|
+
profileId: string | null;
|
|
53
|
+
turnId: string;
|
|
54
|
+
}>;
|
|
55
|
+
}
|
|
29
56
|
export interface RunInput {
|
|
30
57
|
repoRoot: string;
|
|
31
58
|
/**
|
|
@@ -58,19 +85,37 @@ export interface RunInput {
|
|
|
58
85
|
attempts?: number | null;
|
|
59
86
|
/** agent flag: iterate until the convergence predicate is clean (no fixed cap). */
|
|
60
87
|
untilClean?: boolean;
|
|
61
|
-
/**
|
|
62
|
-
|
|
88
|
+
/** ask flag: bounded multi-scout research sweep with synthesis. */
|
|
89
|
+
deepScan?: boolean;
|
|
90
|
+
/** Server-owned frozen-plan reference (implement-plan turns): the engine
|
|
91
|
+
* verifies the hash and materializes the plan as a file in the run context —
|
|
92
|
+
* plan text NEVER rides the prompt (D17/D27). */
|
|
93
|
+
planRef?: {
|
|
94
|
+
runId: string;
|
|
95
|
+
sha256: string;
|
|
96
|
+
path: string;
|
|
97
|
+
};
|
|
63
98
|
/** agent flag: create-from-scratch intent (the old `create` mode). */
|
|
64
99
|
create?: boolean;
|
|
100
|
+
/** plan strategy (INV-031): N harnesses draft plans in parallel, the primary
|
|
101
|
+
* merges them into one unified plan + one question set. Plan mode only;
|
|
102
|
+
* `n` sets the member count (2..4). */
|
|
103
|
+
council?: boolean;
|
|
104
|
+
/** agent flag (D32): the harness may spawn bounded isolated sub-runs through
|
|
105
|
+
* the injected delegation belt. Requires a lane with
|
|
106
|
+
* `capability_profile.mcp_injection`; else a typed preflight refusal. */
|
|
107
|
+
delegate?: boolean;
|
|
108
|
+
/** The daemon-built delegation belt MCP server descriptor (carries the
|
|
109
|
+
* delegation env: parent run id, depth, sub-run cap, budget snapshot). Injected
|
|
110
|
+
* into agent lanes when `delegate` is on and the lane supports mcp_injection.
|
|
111
|
+
* Null when the embedder cannot build one (delegate then refuses). */
|
|
112
|
+
delegationBelt?: ExtraMcpServer | null;
|
|
65
113
|
synthesis?: SynthesisMode;
|
|
66
114
|
/** Explicit typed-argv deterministic gates from caller-provided run configuration. */
|
|
67
115
|
tests?: TestCommandInvocation[];
|
|
68
116
|
/** Typed per-run approval for changing auto-protected gate/test paths. */
|
|
69
117
|
protectedPathApprovals?: ProtectedPathApproval[];
|
|
70
118
|
paidBudget?: PaidBudget;
|
|
71
|
-
budgetLedger?: BudgetLedger;
|
|
72
|
-
/** Orchestrate executor: cap on plan tool calls. */
|
|
73
|
-
maxToolCalls?: number | null;
|
|
74
119
|
/** Access profile; e.g. `full` for autonomous terminal tasks (agent and in-place convergence). */
|
|
75
120
|
access?: AccessProfile;
|
|
76
121
|
/** External/web context policy. Separate from shell/network sandboxing. */
|
|
@@ -87,10 +132,6 @@ export interface RunInput {
|
|
|
87
132
|
models?: Record<string, string>;
|
|
88
133
|
/** Optional reasoning-effort hint forwarded to harnesses that support it. */
|
|
89
134
|
effort?: EffortHint;
|
|
90
|
-
/** Frozen SpecPack provenance when a run is bound to a hard-locked spec. */
|
|
91
|
-
specId?: string;
|
|
92
|
-
specHash?: string;
|
|
93
|
-
specPath?: string;
|
|
94
135
|
/** Pre-assigned ids so a caller (daemon/control-api) knows them before the run starts. */
|
|
95
136
|
runId?: string;
|
|
96
137
|
taskId?: string;
|
|
@@ -114,6 +155,16 @@ export interface RunInput {
|
|
|
114
155
|
/** profileId = the EFFECTIVE profile the session was created under
|
|
115
156
|
* (adapter-stamped; rotation makes it differ from the requested id). */
|
|
116
157
|
onSessionObserved?: (harnessId: string, nativeSessionId: string, observedModel?: string | null, profileId?: string | null) => void;
|
|
158
|
+
/**
|
|
159
|
+
* Continuity facts for this thread turn (INV-137), supplied by the daemon
|
|
160
|
+
* which owns the thread store. The engine computes the per-lane continuation
|
|
161
|
+
* packet at spec-build (checkpoint math + delta/budget), materializes it as a
|
|
162
|
+
* file, and points the prompt at it. Absent for non-thread one-shots.
|
|
163
|
+
*/
|
|
164
|
+
threadContinuity?: ThreadContinuityContext;
|
|
165
|
+
/** Records the resolved continuity disclosure onto the current turn (the
|
|
166
|
+
* daemon writes it to the thread store). Called once per resolved lane. */
|
|
167
|
+
onContinuityResolved?: (turnId: string, disclosure: ContinuityDisclosureResult) => void;
|
|
117
168
|
/** In-process sink for every RunEvent (mirrors events.jsonl) for live observers. */
|
|
118
169
|
onEvent?: (event: RunEvent) => void;
|
|
119
170
|
/** In-process sink for the full per-harness event stream (richer than RunEvent). */
|
|
@@ -167,29 +218,6 @@ export interface RunInput {
|
|
|
167
218
|
* ignored knob instead of silently dropping it.
|
|
168
219
|
*/
|
|
169
220
|
maxTurns?: number | null;
|
|
170
|
-
/**
|
|
171
|
-
* How much the orchestrate planner may act without confirmation
|
|
172
|
-
* (suggest/auto_safe/auto_full). Honored ONLY by mode=orchestrate; the
|
|
173
|
-
* executor over the typed plan classifies each tool_call via toolRisk and
|
|
174
|
-
* runs safe steps as isolated sub-runs / reads, blocking risky steps under
|
|
175
|
-
* auto_safe. Defaults to `suggest` (plan-only) when unset.
|
|
176
|
-
*/
|
|
177
|
-
autonomy?: OrchestrateAutonomy;
|
|
178
|
-
/**
|
|
179
|
-
* Recursion-depth guard for orchestrate. The executor spawns sub-runs via
|
|
180
|
-
* `this.run`; a sub-run must NOT itself orchestrate (orchestrate-within-
|
|
181
|
-
* orchestrate throws). The top-level orchestrate run is depth 0; sub-runs it
|
|
182
|
-
* spawns inherit depth+1 and are forbidden from mode=orchestrate.
|
|
183
|
-
*/
|
|
184
|
-
orchestrateDepth?: number;
|
|
185
|
-
/**
|
|
186
|
-
* Optional live answer-delivery service for the executor's `answer_question`
|
|
187
|
-
* step (the daemon owns the InteractionRegistry; the engine does not). When
|
|
188
|
-
* absent, an answer_question step is honestly SKIPPED (no live interaction
|
|
189
|
-
* surface in this context) rather than silently claimed done. Read-only
|
|
190
|
-
* w.r.t. the tree. Returns true when the answer was delivered.
|
|
191
|
-
*/
|
|
192
|
-
answerInteraction?: (runId: string, interactionId: string, answers: InteractionAnswerSet) => Promise<boolean>;
|
|
193
221
|
}
|
|
194
222
|
/** Context handed to RunInput.onInteraction for one pending question. */
|
|
195
223
|
export interface PendingInteractionContext {
|
|
@@ -205,7 +233,10 @@ export interface OrchestratorResult {
|
|
|
205
233
|
runId: string;
|
|
206
234
|
taskId: string;
|
|
207
235
|
mode: ModeKind;
|
|
208
|
-
|
|
236
|
+
/** Terminal run LIFECYCLE (D8) — how far the process got. */
|
|
237
|
+
lifecycle: RunLifecycle;
|
|
238
|
+
/** The terminal outcome AXES (checks/review/reason/noChanges). */
|
|
239
|
+
facts: RunOutcomeFacts;
|
|
209
240
|
winner: string | null;
|
|
210
241
|
runDir: string;
|
|
211
242
|
summary: string;
|
|
@@ -224,6 +255,92 @@ export interface OrchestratorResult {
|
|
|
224
255
|
* user-initiated cancel. */
|
|
225
256
|
cancelReason?: string;
|
|
226
257
|
}
|
|
258
|
+
/** User-level per-harness defaults (from the global config) applied at route time. */
|
|
259
|
+
interface HarnessRouteSettings {
|
|
260
|
+
defaultModel: string | null;
|
|
261
|
+
effort: EffortHint | null;
|
|
262
|
+
web: ExternalContextPolicy | null;
|
|
263
|
+
maxTurns: number | null;
|
|
264
|
+
maxRounds: number | null;
|
|
265
|
+
toolsAllow: string[];
|
|
266
|
+
toolsDeny: string[];
|
|
267
|
+
fallbackModel: string | null;
|
|
268
|
+
}
|
|
269
|
+
/** A routed candidate adapter plus its manifest capabilities and user settings. */
|
|
270
|
+
/** The two access profiles that map to codex `danger-full-access` / an
|
|
271
|
+
* unsandboxed lane — the only ones under which a full-access-requiring MCP
|
|
272
|
+
* injection (the belt on codex) can reach the daemon. */
|
|
273
|
+
export declare function isFullAccess(access: AccessProfile): boolean;
|
|
274
|
+
export interface RoutedAdapter {
|
|
275
|
+
adapter: HarnessAdapter;
|
|
276
|
+
adapterAccess: AccessProfile;
|
|
277
|
+
webSupport: WebPolicySupport;
|
|
278
|
+
providerFamily: ProviderFamily;
|
|
279
|
+
supportsMaxTurns: boolean;
|
|
280
|
+
supportsToolLists: boolean;
|
|
281
|
+
browserRequirement: RequestRequirementResolution;
|
|
282
|
+
/** Per-lane deny-path enforcement disclosure (postdiff_only until an adapter
|
|
283
|
+
* supports native pre-write deny). */
|
|
284
|
+
denyRequirement: RequestRequirementResolution;
|
|
285
|
+
/** Declared effort ladder (empty = effort is not a tunable surface; a
|
|
286
|
+
* requested effort is then DISCLOSED as ignored, never silently dropped). */
|
|
287
|
+
effortLevels: readonly EffortHint[];
|
|
288
|
+
/** Manifest model truth source (used when the adapter has no live models()). */
|
|
289
|
+
knownModels: readonly KnownModelEntry[];
|
|
290
|
+
/** Pre-spawn credential-route estimate (INV-061 projection of preference x
|
|
291
|
+
* doctor source readiness); null = undecidable, model gates stay fail-closed. */
|
|
292
|
+
authRouteEstimate: "local_session" | "api_key" | null;
|
|
293
|
+
/** Manifest `interactive` capability: only such routes are OFFERED an
|
|
294
|
+
* InteractionChannel (gate). */
|
|
295
|
+
supportsInteractive: boolean;
|
|
296
|
+
/** Manifest `json_schema_output`: only such routes receive
|
|
297
|
+
* HarnessRunSpec.output_schema (gate); others keep fenced-JSON parsing. */
|
|
298
|
+
supportsJsonSchemaOutput: boolean;
|
|
299
|
+
/** Manifest `capability_profile.mcp_injection`: only such routes can receive
|
|
300
|
+
* engine-injected MCP servers (browser, delegation belt). Delegate on a lane
|
|
301
|
+
* without it is a typed preflight refusal. */
|
|
302
|
+
supportsMcpInjection: boolean;
|
|
303
|
+
/** Manifest `capability_profile.mcp_injection_requires_full_access`: the
|
|
304
|
+
* injected belt can only reach the daemon at full access (codex's sandbox
|
|
305
|
+
* cancels it below full). A delegate lane below full access on such a harness
|
|
306
|
+
* is a typed preflight refusal, never a silently non-delegating belt. */
|
|
307
|
+
mcpInjectionRequiresFullAccess: boolean;
|
|
308
|
+
implementationTransport: ImplementationTransport;
|
|
309
|
+
settings: HarnessRouteSettings | null;
|
|
310
|
+
}
|
|
311
|
+
/** Result of one planner spawn (solo pool member, council draft, or the
|
|
312
|
+
* council merge iteration). Bookkeeping that differs per path — artifact
|
|
313
|
+
* naming, fallback disclosure, accumulation — stays with the caller. */
|
|
314
|
+
export interface PlannerAttemptOutcome {
|
|
315
|
+
attemptId: string;
|
|
316
|
+
harnessId: string;
|
|
317
|
+
status: "success" | "failed" | "blocked";
|
|
318
|
+
error: string | null;
|
|
319
|
+
/** Plan/merge body on success; null otherwise. */
|
|
320
|
+
text: string | null;
|
|
321
|
+
telemetry: AttemptTelemetry | null;
|
|
322
|
+
/** True when the budget lease was denied — the solo loop stops trying
|
|
323
|
+
* further fallbacks; council treats it as a failed member. */
|
|
324
|
+
budgetDenied: boolean;
|
|
325
|
+
}
|
|
326
|
+
/** Inputs to one planner spawn. Shared by the solo plan loop and the Council
|
|
327
|
+
* strategy (planRun.ts) so both drive the SAME machinery. */
|
|
328
|
+
export interface PlannerAttemptArgs {
|
|
329
|
+
input: RunInput;
|
|
330
|
+
contract: TaskContract;
|
|
331
|
+
taskId: string;
|
|
332
|
+
runId: string;
|
|
333
|
+
log: EventLog;
|
|
334
|
+
store: ArtifactStore;
|
|
335
|
+
paths: RunPaths;
|
|
336
|
+
ledger: BudgetLedger;
|
|
337
|
+
routed: RoutedAdapter;
|
|
338
|
+
attemptId: string;
|
|
339
|
+
laneRun: boolean;
|
|
340
|
+
fallbackHome: Record<string, string>;
|
|
341
|
+
promptBody: string;
|
|
342
|
+
intent: Intent;
|
|
343
|
+
}
|
|
227
344
|
export declare class Orchestrator {
|
|
228
345
|
private readonly deps;
|
|
229
346
|
private readonly gateway;
|
|
@@ -261,6 +378,27 @@ export declare class Orchestrator {
|
|
|
261
378
|
private estimateUsdFloor;
|
|
262
379
|
private execRootOf;
|
|
263
380
|
private sessionSpecFields;
|
|
381
|
+
/**
|
|
382
|
+
* The DURABLE per-lane read-only HOME env for a THREAD turn (INV-034), or
|
|
383
|
+
* null for a non-thread one-shot (which keeps the disposable route-context
|
|
384
|
+
* home). Anchored to the PROJECT partition (`input.repoRoot`), not the
|
|
385
|
+
* per-turn execution root, so the home is the SAME across turns of the same
|
|
386
|
+
* lane and the lifecycle owners (which key off `thread.repo.root`) reach it.
|
|
387
|
+
* Keyed by the run's REQUESTED credential profile — the same key the daemon's
|
|
388
|
+
* `resumeMap` lookup uses (INV-135), so record and resume land in one home.
|
|
389
|
+
*/
|
|
390
|
+
private laneHomeEnvFor;
|
|
391
|
+
/**
|
|
392
|
+
* The per-harness EFFECTIVE credential profile id (INV-135 accounts
|
|
393
|
+
* authority): an explicit per-run/per-thread pin wins; else null — POOL AUTO,
|
|
394
|
+
* the native/CLI login default subject (enabled profiles route only by
|
|
395
|
+
* explicit pin or quota rotation, never as a silent Active default).
|
|
396
|
+
*/
|
|
397
|
+
private effectiveProfileId;
|
|
398
|
+
/** Whether the native/CLI login is EXCLUDED from this harness's credential
|
|
399
|
+
* ladder (INV-135). When excluded, a harness with no effective profile has
|
|
400
|
+
* nothing routable and must refuse — never silently fall back into it. */
|
|
401
|
+
private nativeCredentialsDisabled;
|
|
264
402
|
private resolveCredentialProfile;
|
|
265
403
|
/** The typed effective auth route for a SELECTED credential profile
|
|
266
404
|
* (round-18 #2): adapters execute strictly by credential_kind, so routing,
|
|
@@ -269,17 +407,7 @@ export declare class Orchestrator {
|
|
|
269
407
|
* metric. null = no profile selected or it does not resolve here. */
|
|
270
408
|
private profileAuthRoute;
|
|
271
409
|
private profilePolicy;
|
|
272
|
-
/** null = no profile selected (default verdict stands); "available" = the
|
|
273
|
-
* profile's own probe admits the route; any other string = typed refusal. */
|
|
274
|
-
private profileAvailabilityOverride;
|
|
275
410
|
private preflightProfile;
|
|
276
|
-
/**
|
|
277
|
-
* Lift an adapter's auth-route override marker into the typed
|
|
278
|
-
* `route.fallback.auth_switched` run event (validated payload). An explicit
|
|
279
|
-
* subscription/api_key preference that could not be honored is never silent;
|
|
280
|
-
* neither is an `auto` choice that selects a smoke-proven paid route over an
|
|
281
|
-
* available native route.
|
|
282
|
-
*/
|
|
283
411
|
/**
|
|
284
412
|
* Resolve candidate adapters: explicit `--harness`, else available real harnesses, then
|
|
285
413
|
* **capability-gate** to those that can actually produce work for `intent` (e.g. a
|
|
@@ -329,11 +457,25 @@ export declare class Orchestrator {
|
|
|
329
457
|
* execution — owner Quiz-5a); reviewers and the auth smoke build their own
|
|
330
458
|
* specs and never call this.
|
|
331
459
|
*/
|
|
460
|
+
/** The extra MCP servers injected into one agent lane's sandbox. Today only
|
|
461
|
+
* the delegation belt (D32): present when `--delegate` is on, the daemon built
|
|
462
|
+
* a belt descriptor, the lane's adapter can inject MCP servers, and the lane is
|
|
463
|
+
* a WRITING agent intent (the delegator integrates results in its workspace;
|
|
464
|
+
* read lanes and reviewers have nothing to delegate). */
|
|
465
|
+
private delegationBeltFor;
|
|
332
466
|
private harnessSpecKnobs;
|
|
333
467
|
private routeSpecKnobs;
|
|
334
|
-
/**
|
|
468
|
+
/**
|
|
469
|
+
* Build the per-lane continuation packet for a thread turn (INV-137).
|
|
470
|
+
* Resolves the lane (harness + effective profile), computes the delta since
|
|
471
|
+
* the lane's checkpoint, reads prior outputs + the git anchor, and — for a
|
|
472
|
+
* lane switch or gap — materializes `context/THREAD.md` and returns the
|
|
473
|
+
* one-line prompt pointer. Emits `session.continuity` and stamps the turn.
|
|
474
|
+
* Returns null (no packet, no pointer) for native resume, a fresh thread, or
|
|
475
|
+
* a non-thread run. Never throws: continuity failure degrades to no packet.
|
|
476
|
+
*/
|
|
477
|
+
private resolveContinuity;
|
|
335
478
|
private runCandidateInEnvelope;
|
|
336
|
-
private toEvidence;
|
|
337
479
|
private interactionChannelFor;
|
|
338
480
|
/**
|
|
339
481
|
* Guarantee a git boundary for write-mode runs. Non-git project folders are
|
|
@@ -344,6 +486,15 @@ export declare class Orchestrator {
|
|
|
344
486
|
* emitted); null on success.
|
|
345
487
|
*/
|
|
346
488
|
private ensureWriteModeGitBoundary;
|
|
489
|
+
/**
|
|
490
|
+
* Freeze-on-implement delivery (D17/D27): verify the frozen plan's hash and
|
|
491
|
+
* materialize it as context/PLAN.md in the run artifact tree — OUTSIDE every
|
|
492
|
+
* worktree, so it can never dirty a diff — then point the prompt at the
|
|
493
|
+
* absolute path. A mismatched or unreadable plan fails LOUDLY before any
|
|
494
|
+
* harness spawns (the tamper fence; retry replays planRef verbatim, so a
|
|
495
|
+
* retried implement can never silently run without its plan).
|
|
496
|
+
*/
|
|
497
|
+
private withPlanBrief;
|
|
347
498
|
private runRace;
|
|
348
499
|
/** Single-owner telemetry artifact (final/telemetry.yaml); surfaces project it, never recompute. */
|
|
349
500
|
private writeRunTelemetry;
|
|
@@ -364,7 +515,7 @@ export declare class Orchestrator {
|
|
|
364
515
|
private cleanupReviewEvidenceDir;
|
|
365
516
|
private recordReviewEvidenceCleanup;
|
|
366
517
|
private runConvergence;
|
|
367
|
-
/** plan mode: multi-harness planning -> aggregate -> (optional) plan review ->
|
|
518
|
+
/** plan mode: multi-harness planning -> aggregate -> (optional) plan review -> plan. Read-only. */
|
|
368
519
|
/**
|
|
369
520
|
* Wrap the user's goal in an explicit "plan, do not implement" instruction.
|
|
370
521
|
* Without this the raw prompt ("make a racing game") reaches the harness with
|
|
@@ -373,25 +524,30 @@ export declare class Orchestrator {
|
|
|
373
524
|
* read-only access still enforces it; this gives the model the right job.
|
|
374
525
|
*/
|
|
375
526
|
private planPrompt;
|
|
527
|
+
/**
|
|
528
|
+
* Run ONE planner spawn (native plan mode, read-only) end to end: budget
|
|
529
|
+
* lease, spec build, continuity hydration, event streaming, telemetry, and
|
|
530
|
+
* settle. Shared by the solo plan loop (each pool member is a sequential
|
|
531
|
+
* fallback) and the Council strategy (each member is a parallel draft, then
|
|
532
|
+
* one merge iteration on the primary — same machinery, different prompt +
|
|
533
|
+
* intent). The caller owns bookkeeping that differs per path: which artifact
|
|
534
|
+
* a success writes to, fallback disclosure, and accumulation.
|
|
535
|
+
*/
|
|
536
|
+
runPlannerAttempt(args: PlannerAttemptArgs): Promise<PlannerAttemptOutcome>;
|
|
376
537
|
private runPlan;
|
|
538
|
+
/** Bind the few orchestrator methods planRun.ts needs (the rest of its
|
|
539
|
+
* collaborators are module-level imports). Kept as a factory so each call
|
|
540
|
+
* gets correctly-bound `this` without leaking the whole orchestrator. */
|
|
541
|
+
private planRunDeps;
|
|
377
542
|
/** ask: one selected harness answers read-only questions; no patch/apply controls. */
|
|
378
543
|
private runAsk;
|
|
379
|
-
/**
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
private runAudit;
|
|
544
|
+
/** ask --deep-scan: bounded multi-scout research sweep with synthesis
|
|
545
|
+
* (the old `audit --swarm` / `explore`). */
|
|
546
|
+
private runDeepScan;
|
|
383
547
|
private resolvePaidBudget;
|
|
384
548
|
private rootLedger;
|
|
385
549
|
private routeBillingKnowledge;
|
|
386
|
-
private runOrchestrate;
|
|
387
550
|
private runReadOnlyReport;
|
|
388
|
-
/**
|
|
389
|
-
* Run one SAFE plan step. start_run/race spawn ISOLATED ENVELOPE sub-runs
|
|
390
|
-
* (inPlace=false, ASSERTED); review/status/answer_question are pure reads /
|
|
391
|
-
* answer delivery that never mutate the live tree.
|
|
392
|
-
*/
|
|
393
|
-
private executeSafeStep;
|
|
394
|
-
/** Execute an auto_full apply through the shared fresh-verification gate. */
|
|
395
|
-
private executeApplyStep;
|
|
396
551
|
}
|
|
552
|
+
export {};
|
|
397
553
|
//# sourceMappingURL=orchestrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
|