@claudexor/orchestrator 4.0.1 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/account-pool.d.ts +2 -0
  2. package/dist/account-pool.d.ts.map +1 -1
  3. package/dist/account-pool.js +7 -4
  4. package/dist/account-pool.js.map +1 -1
  5. package/dist/account-resolution.d.ts +2 -0
  6. package/dist/account-resolution.d.ts.map +1 -1
  7. package/dist/account-resolution.js +9 -8
  8. package/dist/account-resolution.js.map +1 -1
  9. package/dist/candidateReview.d.ts +3 -1
  10. package/dist/candidateReview.d.ts.map +1 -1
  11. package/dist/candidateReview.js +6 -1
  12. package/dist/candidateReview.js.map +1 -1
  13. package/dist/contract-gates.d.ts +10 -2
  14. package/dist/contract-gates.d.ts.map +1 -1
  15. package/dist/contract-gates.js +14 -1
  16. package/dist/contract-gates.js.map +1 -1
  17. package/dist/credential-cooldown.d.ts +2 -1
  18. package/dist/credential-cooldown.d.ts.map +1 -1
  19. package/dist/credential-cooldown.js +6 -2
  20. package/dist/credential-cooldown.js.map +1 -1
  21. package/dist/credential-profile-rotation.d.ts +2 -1
  22. package/dist/credential-profile-rotation.d.ts.map +1 -1
  23. package/dist/credential-profile-rotation.js +4 -1
  24. package/dist/credential-profile-rotation.js.map +1 -1
  25. package/dist/index.d.ts +1 -0
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/inrun-continuity.test-support.d.ts +6 -2
  28. package/dist/inrun-continuity.test-support.d.ts.map +1 -1
  29. package/dist/orchestrator.d.ts +11 -3
  30. package/dist/orchestrator.d.ts.map +1 -1
  31. package/dist/orchestrator.js +64 -79
  32. package/dist/orchestrator.js.map +1 -1
  33. package/dist/reviewEvidence.d.ts +4 -0
  34. package/dist/reviewEvidence.d.ts.map +1 -0
  35. package/dist/reviewEvidence.js +46 -0
  36. package/dist/reviewEvidence.js.map +1 -0
  37. package/dist/runScope.d.ts +86 -0
  38. package/dist/runScope.d.ts.map +1 -0
  39. package/dist/runScope.js +181 -0
  40. package/dist/runScope.js.map +1 -0
  41. package/dist/runSupport.d.ts +1 -2
  42. package/dist/runSupport.d.ts.map +1 -1
  43. package/dist/runSupport.js +2 -1
  44. package/dist/runSupport.js.map +1 -1
  45. package/dist/runTerminalHelpers.d.ts +26 -0
  46. package/dist/runTerminalHelpers.d.ts.map +1 -0
  47. package/dist/runTerminalHelpers.js +137 -0
  48. package/dist/runTerminalHelpers.js.map +1 -0
  49. package/dist/runTerminals.d.ts +1 -11
  50. package/dist/runTerminals.d.ts.map +1 -1
  51. package/dist/runTerminals.js +67 -130
  52. package/dist/runTerminals.js.map +1 -1
  53. package/package.json +17 -17
@@ -0,0 +1,4 @@
1
+ import type { ArtifactStore } from "@claudexor/artifact-store";
2
+ export declare function prepareReviewEvidenceDir(sourceDir: string, _candidateCwd: string): string;
3
+ export declare function recordReviewEvidenceCleanup(store: ArtifactStore, metadataPath: string, attemptId: string, candidateEvidenceDir: string, candidateCwd: string): void;
4
+ //# sourceMappingURL=reviewEvidence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviewEvidence.d.ts","sourceRoot":"","sources":["../src/reviewEvidence.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG/D,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CASzF;AAqBD,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,aAAa,EACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,oBAAoB,EAAE,MAAM,EAC5B,YAAY,EAAE,MAAM,GACnB,IAAI,CAYN"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Review evidence preflight and cleanup for candidate review (`candidateReview.ts`):
3
+ * the evidence packet is an external runtime artifact that ReviewEngine copies
4
+ * into its own reviewer workspace; nothing is ever written into the candidate tree.
5
+ */
6
+ import { existsSync } from "node:fs";
7
+ import { preflightEvidence } from "@claudexor/context";
8
+ export function prepareReviewEvidenceDir(sourceDir, _candidateCwd) {
9
+ // Evidence is an external runtime artifact. ReviewEngine builds a separate
10
+ // reviewer workspace and copies the packet there; writing/copying it into
11
+ // the candidate tree would contaminate the Git diff and, worse, overwrite a
12
+ // user-owned path with the same name.
13
+ if (!existsSync(sourceDir)) {
14
+ throw new Error(`review evidence preflight failed for ${sourceDir}: source packet missing`);
15
+ }
16
+ return requireReviewEvidence(sourceDir);
17
+ }
18
+ function requireReviewEvidence(dir) {
19
+ const result = preflightEvidence(dir);
20
+ if (result.ok)
21
+ return dir;
22
+ const missing = result.missing.length ? `missing=${result.missing.join(",")}` : "";
23
+ const empty = result.empty.length ? `empty=${result.empty.join(",")}` : "";
24
+ throw new Error(`review evidence preflight failed for ${dir}: ${[missing, empty].filter(Boolean).join(" ")}`);
25
+ }
26
+ function cleanupReviewEvidenceDir(_candidateEvidenceDir, _candidateCwd) {
27
+ // No candidate-tree packet exists in v2; external runtime retention is
28
+ // governed by the artifact/journal lifecycle rather than best-effort rm.
29
+ return null;
30
+ }
31
+ export function recordReviewEvidenceCleanup(store, metadataPath, attemptId, candidateEvidenceDir, candidateCwd) {
32
+ const cleanupMetadata = cleanupReviewEvidenceDir(candidateEvidenceDir, candidateCwd);
33
+ if (!cleanupMetadata)
34
+ return;
35
+ try {
36
+ store.writeYaml(metadataPath, {
37
+ ...cleanupMetadata,
38
+ attempt_id: attemptId,
39
+ });
40
+ }
41
+ catch {
42
+ // Cleanup telemetry must not mask the review/revalidation failure that
43
+ // triggered best-effort cleanup.
44
+ }
45
+ }
46
+ //# sourceMappingURL=reviewEvidence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviewEvidence.js","sourceRoot":"","sources":["../src/reviewEvidence.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,UAAU,wBAAwB,CAAC,SAAiB,EAAE,aAAqB;IAC/E,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,sCAAsC;IACtC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,wCAAwC,SAAS,yBAAyB,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,qBAAqB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW;IACxC,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,MAAM,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,MAAM,IAAI,KAAK,CACb,wCAAwC,GAAG,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC7F,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,qBAA6B,EAC7B,aAAqB;IAErB,uEAAuE;IACvE,yEAAyE;IACzE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,KAAoB,EACpB,YAAoB,EACpB,SAAiB,EACjB,oBAA4B,EAC5B,YAAoB;IAEpB,MAAM,eAAe,GAAG,wBAAwB,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;IACrF,IAAI,CAAC,eAAe;QAAE,OAAO;IAC7B,IAAI,CAAC;QACH,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE;YAC5B,GAAG,eAAe;YAClB,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;QACvE,iCAAiC;IACnC,CAAC;AACH,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { type ScopeReapOptions, type ScopeReapOutcome } from "@claudexor/core";
2
+ import { type RunProcessScopeOutcome as RunProcessScopeOutcomeType } from "@claudexor/schema";
3
+ import type { AnnouncedRunContext } from "./runTerminalContext.js";
4
+ import type { ResolvedRouteContext } from "./routeContext.js";
5
+ export interface RunScopeCustodian {
6
+ /**
7
+ * Mint and durably record the run's scope marker BEFORE its first launch.
8
+ * Returns the marker NAME to carry in every spec env. Must not throw for a
9
+ * recoverable persistence failure — it degrades to in-process custody and
10
+ * discloses, never fails the run.
11
+ */
12
+ open(runId: string): Promise<{
13
+ marker: string;
14
+ }>;
15
+ /**
16
+ * End every live process carrying the run's marker and retire/disclose the
17
+ * durable entry. Idempotent per run.
18
+ */
19
+ settle(runId: string, marker: string): Promise<ScopeReapOutcome>;
20
+ }
21
+ /**
22
+ * The default custodian for an embedder/test with no daemon index: it mints
23
+ * and reaps in process (no durable crash-recovery record), remembering each
24
+ * marker's opening time so the census can skip processes older than the
25
+ * scope. The reaper's own per-marker coalescing makes repeat settles safe.
26
+ */
27
+ export declare function createInProcessRunScopeCustodian(reap?: (opts: ScopeReapOptions) => Promise<ScopeReapOutcome>): RunScopeCustodian;
28
+ export declare const inProcessRunScopeCustodian: RunScopeCustodian;
29
+ /**
30
+ * Add the run's scope marker (and, when the env is a scoped native-state HOME,
31
+ * the host facts) to a harness spec env WITHOUT overwriting the existing
32
+ * HOME/config/auth patch. The marker is applied last so it always survives.
33
+ * `baseEnv` may be absent (an in-place run that inherits the operator env):
34
+ * the marker still applies so the run can end what it leaves. Returns
35
+ * `undefined` only when there is no marker (custody disabled).
36
+ */
37
+ export declare function scopedSpecEnv(marker: string | undefined, baseEnv: Record<string, string> | undefined, options?: {
38
+ source?: NodeJS.ProcessEnv;
39
+ }): Record<string, string> | undefined;
40
+ /**
41
+ * The env patch for a deterministic command the run itself launches (its
42
+ * candidate gates, final verification and adoption): the scope marker alone, so
43
+ * whatever the command leaves running is ended at the whole-run barrier. The
44
+ * gate keeps its own HOME and allowlist; nothing is cleaned up per command.
45
+ */
46
+ export declare function runScopeGateEnv(marker: string | undefined): Record<string, string> | undefined;
47
+ /** The outcome written when the custodian itself failed: unknown, never clean. */
48
+ export declare function failedScopeOutcome(reason: string): ScopeReapOutcome;
49
+ /**
50
+ * Write the scope outcome to its OWN terminal artifact (`final/process_scope.yaml`)
51
+ * so it survives the record rewrites and projections the immutable RunFacts
52
+ * receipt goes through. Best-effort: a write failure never fails an
53
+ * already-terminal run (the reap itself already happened).
54
+ */
55
+ export declare function writeRunScopeFacts(ctx: AnnouncedRunContext, marker: string, outcome: ScopeReapOutcome): RunProcessScopeOutcomeType | null;
56
+ /**
57
+ * The route-admitting readiness probe and the run must share the EXACT env
58
+ * (W3.3 / TZ-1 §B: evidence gathered in one env while the run executes in
59
+ * another is not evidence). The marker and host facts therefore join the
60
+ * route context itself, so the probe, the model inventory and the spawn all
61
+ * see one env; `scopedSpecEnv` on the eventual spec is then idempotent.
62
+ */
63
+ export declare function scopedRouteContext(ctx: ResolvedRouteContext, marker: string | undefined): ResolvedRouteContext;
64
+ /**
65
+ * The per-run custody wiring of `Orchestrator.run()` (owner 1A, #449): the
66
+ * marker minted and recorded BEFORE the first launch, the announced context
67
+ * holding its terminal (the existing deferred-terminal mechanism) until the
68
+ * barrier has settled custody, settlement memoised so the barrier, the
69
+ * terminalization fallback and the never-announced path agree on ONE outcome,
70
+ * and the typed facts recorded exactly once. A settlement that throws is
71
+ * disclosed as a failed outcome, never as a run failure. Without a custodian
72
+ * (an embedder), custody is in-process only.
73
+ */
74
+ export interface RunScopeCustody {
75
+ readonly marker: string;
76
+ /** Wrap `announce`: remember the context and hold its terminal for the barrier. */
77
+ announced(announce: (a: AnnouncedRunContext) => void): (a: AnnouncedRunContext) => void;
78
+ /** The whole-run barrier body: `drain` first; settle and record in `finally`. */
79
+ barrier(drain: () => Promise<void>): Promise<void>;
80
+ /** Idempotent fallback for a path that never reached the barrier. */
81
+ record(): Promise<void>;
82
+ /** A run that never announced launched nothing, but its marker was recorded: settle it. */
83
+ settleUnannounced(): Promise<void>;
84
+ }
85
+ export declare function openRunScopeCustody(custodian: RunScopeCustodian | undefined, runId: string): Promise<RunScopeCustody>;
86
+ //# sourceMappingURL=runScope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runScope.d.ts","sourceRoot":"","sources":["../src/runScope.ts"],"names":[],"mappings":"AAcA,OAAO,EAKL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEL,KAAK,sBAAsB,IAAI,0BAA0B,EAC1D,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAClE;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,GAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,gBAAgB,CAAoB,GAC7E,iBAAiB,CAcnB;AAED,eAAO,MAAM,0BAA0B,EAAE,iBAAsD,CAAC;AAEhG;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC3C,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAO,GAC3C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAOpC;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAE9F;AAoBD,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAgBnE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,mBAAmB,EACxB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,GACxB,0BAA0B,GAAG,IAAI,CAQnC;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,oBAAoB,EACzB,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,oBAAoB,CAetB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,mFAAmF;IACnF,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACxF,iFAAiF;IACjF,OAAO,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,qEAAqE;IACrE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,2FAA2F;IAC3F,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,iBAAiB,GAAG,SAAS,EACxC,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,eAAe,CAAC,CAyC1B"}
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Per-run process custody: mint one scope marker before the first launch,
3
+ * carry it (plus the host facts a scoped HOME owes the child) in every harness
4
+ * `spec.env` the run builds, and end the marker's members at the whole-run
5
+ * terminal barrier on every terminal — the engine side of "a finished
6
+ * delegated run ends every OS process it left" (owner 1A).
7
+ *
8
+ * The durable discovery index lives in the daemon data root and is injected as
9
+ * a {@link RunScopeCustodian} (the daemon wires {@link DaemonRunScopeIndex};
10
+ * tests inject a temp one). An embedder without one still gets in-process
11
+ * custody — a minted marker, carried and reaped at the barrier — but no
12
+ * crash-recovery index, which is disclosed here rather than silently absent.
13
+ */
14
+ import { join } from "node:path";
15
+ import { harnessHostFactsEnv, mintRunScopeMarker, reapScopeMembers, scopeMarkerEnv, } from "@claudexor/core";
16
+ import { RunProcessScopeOutcome, } from "@claudexor/schema";
17
+ /**
18
+ * The default custodian for an embedder/test with no daemon index: it mints
19
+ * and reaps in process (no durable crash-recovery record), remembering each
20
+ * marker's opening time so the census can skip processes older than the
21
+ * scope. The reaper's own per-marker coalescing makes repeat settles safe.
22
+ */
23
+ export function createInProcessRunScopeCustodian(reap = reapScopeMembers) {
24
+ const openedAt = new Map();
25
+ return {
26
+ async open() {
27
+ const marker = mintRunScopeMarker();
28
+ openedAt.set(marker, new Date().toISOString());
29
+ return { marker };
30
+ },
31
+ async settle(_runId, marker) {
32
+ const scopeStartAt = openedAt.get(marker) ?? null;
33
+ openedAt.delete(marker);
34
+ return reap({ marker, scopeStartAt });
35
+ },
36
+ };
37
+ }
38
+ export const inProcessRunScopeCustodian = createInProcessRunScopeCustodian();
39
+ /**
40
+ * Add the run's scope marker (and, when the env is a scoped native-state HOME,
41
+ * the host facts) to a harness spec env WITHOUT overwriting the existing
42
+ * HOME/config/auth patch. The marker is applied last so it always survives.
43
+ * `baseEnv` may be absent (an in-place run that inherits the operator env):
44
+ * the marker still applies so the run can end what it leaves. Returns
45
+ * `undefined` only when there is no marker (custody disabled).
46
+ */
47
+ export function scopedSpecEnv(marker, baseEnv, options = {}) {
48
+ if (!marker)
49
+ return baseEnv;
50
+ return {
51
+ ...(baseEnv ?? {}),
52
+ ...harnessHostFactsEnv(baseEnv, options),
53
+ ...scopeMarkerEnv(marker),
54
+ };
55
+ }
56
+ /**
57
+ * The env patch for a deterministic command the run itself launches (its
58
+ * candidate gates, final verification and adoption): the scope marker alone, so
59
+ * whatever the command leaves running is ended at the whole-run barrier. The
60
+ * gate keeps its own HOME and allowlist; nothing is cleaned up per command.
61
+ */
62
+ export function runScopeGateEnv(marker) {
63
+ return marker ? scopeMarkerEnv(marker) : undefined;
64
+ }
65
+ function toFacts(marker, outcome) {
66
+ return RunProcessScopeOutcome.parse({
67
+ marker,
68
+ coverage: outcome.coverage,
69
+ census: outcome.census,
70
+ census_failure: outcome.censusFailure,
71
+ restricted: outcome.restricted,
72
+ ended: outcome.ended.map((m) => ({ pid: m.pid, start_token: m.startToken })),
73
+ survivors: outcome.survivors.map((m) => ({ pid: m.pid, start_token: m.startToken })),
74
+ unreadable: outcome.unreadable.map((u) => ({ pid: u.pid, reason: u.reason })),
75
+ reused_groups: outcome.reusedGroups,
76
+ settled: outcome.settled,
77
+ completeness: outcome.completeness,
78
+ completeness_reason: outcome.completenessReason,
79
+ incomplete: outcome.incomplete,
80
+ });
81
+ }
82
+ /** The outcome written when the custodian itself failed: unknown, never clean. */
83
+ export function failedScopeOutcome(reason) {
84
+ return {
85
+ coverage: "marker",
86
+ census: "failed",
87
+ censusFailure: reason,
88
+ ended: [],
89
+ survivors: [],
90
+ unreadable: [],
91
+ reusedGroups: [],
92
+ settled: false,
93
+ incomplete: false,
94
+ completeness: "not_provable",
95
+ completenessReason: reason,
96
+ restricted: process.platform === "darwin",
97
+ durationMs: 0,
98
+ };
99
+ }
100
+ /**
101
+ * Write the scope outcome to its OWN terminal artifact (`final/process_scope.yaml`)
102
+ * so it survives the record rewrites and projections the immutable RunFacts
103
+ * receipt goes through. Best-effort: a write failure never fails an
104
+ * already-terminal run (the reap itself already happened).
105
+ */
106
+ export function writeRunScopeFacts(ctx, marker, outcome) {
107
+ try {
108
+ const facts = toFacts(marker, outcome);
109
+ ctx.store.writeYaml(join(ctx.paths.finalDir, "process_scope.yaml"), facts);
110
+ return facts;
111
+ }
112
+ catch {
113
+ return null;
114
+ }
115
+ }
116
+ /**
117
+ * The route-admitting readiness probe and the run must share the EXACT env
118
+ * (W3.3 / TZ-1 §B: evidence gathered in one env while the run executes in
119
+ * another is not evidence). The marker and host facts therefore join the
120
+ * route context itself, so the probe, the model inventory and the spawn all
121
+ * see one env; `scopedSpecEnv` on the eventual spec is then idempotent.
122
+ */
123
+ export function scopedRouteContext(ctx, marker) {
124
+ if (!marker)
125
+ return ctx;
126
+ const envForHarness = ctx.envForHarness;
127
+ return {
128
+ ...ctx,
129
+ env: scopedSpecEnv(marker, ctx.env) ?? ctx.env,
130
+ ...(envForHarness
131
+ ? {
132
+ envForHarness: (harnessId) => {
133
+ const lane = envForHarness(harnessId);
134
+ return lane ? (scopedSpecEnv(marker, lane) ?? lane) : null;
135
+ },
136
+ }
137
+ : {}),
138
+ };
139
+ }
140
+ export async function openRunScopeCustody(custodian, runId) {
141
+ const custody = custodian ?? inProcessRunScopeCustodian;
142
+ const { marker } = await custody.open(runId);
143
+ let announcedContext = null;
144
+ let settlement = null;
145
+ const settle = () => {
146
+ settlement ??= custody
147
+ .settle(runId, marker)
148
+ .catch((error) => failedScopeOutcome(`scope settlement failed: ${error instanceof Error ? error.message : String(error)}`));
149
+ return settlement;
150
+ };
151
+ let recorded = false;
152
+ const record = async () => {
153
+ const outcome = await settle();
154
+ if (!announcedContext || recorded)
155
+ return;
156
+ recorded = true;
157
+ writeRunScopeFacts(announcedContext, marker, outcome);
158
+ };
159
+ return {
160
+ marker,
161
+ announced: (announce) => (a) => {
162
+ announcedContext = a;
163
+ announce(a);
164
+ a.log.deferTerminal();
165
+ },
166
+ barrier: async (drain) => {
167
+ try {
168
+ await drain();
169
+ }
170
+ finally {
171
+ await record();
172
+ }
173
+ },
174
+ record,
175
+ settleUnannounced: async () => {
176
+ if (!announcedContext)
177
+ await settle();
178
+ },
179
+ };
180
+ }
181
+ //# sourceMappingURL=runScope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runScope.js","sourceRoot":"","sources":["../src/runScope.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,9 @@
4
4
  * run summary/findings renderers. Pure functions — no orchestrator state.
5
5
  */
6
6
  import type { HarnessEvent, ModeKind, ProtectedPathApproval, ReviewFinding, DecisionRecord, FinalVerifyRecord, RunOutcomeFacts } from "@claudexor/schema";
7
- import type { RouteDropStage } from "@claudexor/schema";
7
+ import type { BudgetObservation, RouteDropStage } from "@claudexor/schema";
8
8
  import type { EventLog } from "@claudexor/event-log";
9
9
  import type { CandidateEvidence } from "@claudexor/arbitration";
10
- import type { BudgetObservation } from "@claudexor/schema";
11
10
  import { ArtifactStore } from "@claudexor/artifact-store";
12
11
  /** D9: the reviewer NEEDS_HUMAN gate is WINNER-ONLY and FAIL-CLOSED. Only an
13
12
  * escalation belonging to the selected deliverable blocks — a losing
@@ -1 +1 @@
1
- {"version":3,"file":"runSupport.d.ts","sourceRoot":"","sources":["../src/runSupport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runSupport.d.ts","sourceRoot":"","sources":["../src/runSupport.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { FallbackReason as FallbackReasonSchema, RouteFallbackPayload as RouteFallbackPayloadSchema, RoutePrimaryDivergedPayload as RoutePrimaryDivergedPayloadSchema, RoutePoolDegradedPayload as RoutePoolDegradedPayloadSchema, makeOutcomeFacts, runOutcomeLabel, } from "@claudexor/schema";
2
- import { isBlocking } from "@claudexor/schema";
2
+ import { isBlocking, quotaConstraintAppliesToRequestKind } from "@claudexor/schema";
3
3
  import { redactSecrets } from "@claudexor/util";
4
4
  import { observationsFromEvent, recordHarnessMetric } from "@claudexor/budget";
5
5
  import { blockedDecisionOverride } from "@claudexor/delivery";
@@ -349,6 +349,7 @@ export function observeBudgetSignals(ledger, log, harnessId, attemptId, ev, stat
349
349
  for (const obs of observationsFromEvent(harnessId, ev)) {
350
350
  ledger.observe(obs);
351
351
  if (obs.kind === "quota_constraint" &&
352
+ quotaConstraintAppliesToRequestKind(obs, "text") &&
352
353
  (obs.used_ratio ?? 0) >= 0.5 &&
353
354
  !state.quotaPressureDisclosed) {
354
355
  state.quotaPressureDisclosed = true;
@@ -1 +1 @@
1
- {"version":3,"file":"runSupport.js","sourceRoot":"","sources":["../src/runSupport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runSupport.js","sourceRoot":"","sources":["../src/runSupport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { type CancelReasonCode, type RunOutcomeFacts as RunOutcomeFactsType } from "@claudexor/schema";
2
+ import type { BudgetTerminal } from "@claudexor/budget";
3
+ import type { TerminalRunEventType } from "@claudexor/event-log";
4
+ import { type SettledBudgetSnapshot } from "./decisionBudget.js";
5
+ import type { OrchestratorResult } from "./orchestrator.js";
6
+ import type { AnnouncedRunContext } from "./runTerminalContext.js";
7
+ export declare function ownsDelegateDrain(context: AnnouncedRunContext): boolean;
8
+ export declare function postDrainBudgetFailure(context: AnnouncedRunContext, terminal: Exclude<BudgetTerminal, null>, budget: SettledBudgetSnapshot, prior: OrchestratorResult): OrchestratorResult;
9
+ export declare function terminalEventTypeFor(_originalType: TerminalRunEventType, outcome: RunOutcomeFactsType): TerminalRunEventType;
10
+ /** Map an abort-signal reason token to its typed terminal RunReason. The
11
+ * abort reason is the ONE channel a cancel's provenance survives on — before
12
+ * this mapping every host-initiated cancel coerced to user_cancelled (the
13
+ * daemon's own ctrl-c relay and the MCP host teardown included). The client
14
+ * vocabulary is read from CANCEL_REASON_CODES so a future member cannot be
15
+ * silently coerced away here while the HTTP boundary already admits it;
16
+ * wall_clock_exceeded stays daemon-internal (deliberately NOT in the client
17
+ * enum — unforgeable). Unknown tokens keep the user_cancelled coercion for
18
+ * wire compatibility. */
19
+ export declare function cancelReasonFromSignalToken(reason: unknown): "wall_clock_exceeded" | CancelReasonCode;
20
+ export declare function cancellationFacts(signal: AbortSignal, prior: RunOutcomeFactsType): RunOutcomeFactsType;
21
+ export declare function terminalOutcomeFromPayload(payload: Record<string, unknown>): RunOutcomeFactsType;
22
+ export declare function settledSpend(a: AnnouncedRunContext): number | null;
23
+ export declare function isTerminalRecoveryRequired(error: unknown): boolean;
24
+ export declare function committedOutcome(a: AnnouncedRunContext): RunOutcomeFactsType | null;
25
+ export declare function committedResult(a: AnnouncedRunContext, outcome: RunOutcomeFactsType, spendUsd: number | null): OrchestratorResult;
26
+ //# sourceMappingURL=runTerminalHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runTerminalHelpers.d.ts","sourceRoot":"","sources":["../src/runTerminalHelpers.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,gBAAgB,EAKrB,KAAK,eAAe,IAAI,mBAAmB,EAC5C,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,EAA2B,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAInE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CASvE;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,EACvC,MAAM,EAAE,qBAAqB,EAC7B,KAAK,EAAE,kBAAkB,GACxB,kBAAkB,CAkCpB;AAED,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,oBAAoB,EACnC,OAAO,EAAE,mBAAmB,GAC3B,oBAAoB,CAOtB;AAED;;;;;;;;yBAQyB;AACzB,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,OAAO,GACd,qBAAqB,GAAG,gBAAgB,CAG1C;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,mBAAmB,GACzB,mBAAmB,CAErB;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,mBAAmB,CAmBhG;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,CAMlE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOlE;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,GAAG,IAAI,CAWnF;AAED,wBAAgB,eAAe,CAC7B,CAAC,EAAE,mBAAmB,EACtB,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,kBAAkB,CAgBpB"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Pure helpers of the whole-strategy terminal net (`runTerminals.ts`): the
3
+ * terminal event type from the canonical axes, cancel-reason mapping, payload
4
+ * decoding, committed-outcome recovery and the post-drain budget failure.
5
+ */
6
+ import { join } from "node:path";
7
+ import { makeOutcomeFacts, needsOperatorAttention, normalizeCancelReasonCode, RunOutcomeFacts, } from "@claudexor/schema";
8
+ import { readTextSafe } from "@claudexor/util";
9
+ import { budgetFailureRecord, classifyBudgetFailure } from "./budgetFailure.js";
10
+ import { reconcileDecisionBudget } from "./decisionBudget.js";
11
+ import { writeFailure } from "./runTerminalResults.js";
12
+ import { reconcileWorkProductTerminal, terminalOutcomeFacts } from "./terminalOutcome.js";
13
+ export function ownsDelegateDrain(context) {
14
+ try {
15
+ return context.recheckBudgetAfterBarrier?.() === true;
16
+ }
17
+ catch {
18
+ // Reconciliation is an extra authority granted only to a proven Delegate
19
+ // drain owner. An unreadable ownership predicate must fail closed instead
20
+ // of touching an ordinary Agent's already-terminal artifacts.
21
+ return false;
22
+ }
23
+ }
24
+ export function postDrainBudgetFailure(context, terminal, budget, prior) {
25
+ const mapping = classifyBudgetFailure({ denial: null, terminal });
26
+ const facts = terminalOutcomeFacts(prior.facts, "failed", mapping.reason);
27
+ reconcileDecisionBudget(context, budget, { facts, why: mapping.safeMessage });
28
+ reconcileWorkProductTerminal(context, facts);
29
+ context.store.writeText(join(context.paths.finalDir, "summary.md"), `# Run ${context.runId} (${context.mode})\n\n- Lifecycle: failed (${mapping.reason})\n- Phase: budget\n\n${mapping.safeMessage}\n`);
30
+ writeFailure(context.store, context.paths, budgetFailureRecord(mapping, { runDir: context.paths.root }));
31
+ context.log.emit("output.ready", {
32
+ kind: "summary",
33
+ path: "final/summary.md",
34
+ state: "diagnostic",
35
+ });
36
+ context.log.emit("run.failed", {
37
+ lifecycle: "failed",
38
+ facts,
39
+ reason: mapping.reason,
40
+ phase: "budget",
41
+ error: mapping.safeMessage,
42
+ failure_ref: "final/failure.yaml",
43
+ });
44
+ return {
45
+ ...prior,
46
+ lifecycle: "failed",
47
+ facts,
48
+ summary: mapping.safeMessage,
49
+ spendUsd: budget.spendUsd,
50
+ };
51
+ }
52
+ export function terminalEventTypeFor(_originalType, outcome) {
53
+ if (outcome.lifecycle !== "succeeded")
54
+ return "run.failed";
55
+ if (needsOperatorAttention(outcome, false))
56
+ return "run.blocked";
57
+ // The canonical axes own terminal type. Preserving a producer-authored
58
+ // run.blocked with clean axes creates an unexplainable block (no reason or
59
+ // required action), so it is normalized to completed.
60
+ return "run.completed";
61
+ }
62
+ /** Map an abort-signal reason token to its typed terminal RunReason. The
63
+ * abort reason is the ONE channel a cancel's provenance survives on — before
64
+ * this mapping every host-initiated cancel coerced to user_cancelled (the
65
+ * daemon's own ctrl-c relay and the MCP host teardown included). The client
66
+ * vocabulary is read from CANCEL_REASON_CODES so a future member cannot be
67
+ * silently coerced away here while the HTTP boundary already admits it;
68
+ * wall_clock_exceeded stays daemon-internal (deliberately NOT in the client
69
+ * enum — unforgeable). Unknown tokens keep the user_cancelled coercion for
70
+ * wire compatibility. */
71
+ export function cancelReasonFromSignalToken(reason) {
72
+ if (reason === "wall_clock_exceeded")
73
+ return "wall_clock_exceeded";
74
+ return normalizeCancelReasonCode(reason) ?? "user_cancelled";
75
+ }
76
+ export function cancellationFacts(signal, prior) {
77
+ return terminalOutcomeFacts(prior, "cancelled", cancelReasonFromSignalToken(signal.reason));
78
+ }
79
+ export function terminalOutcomeFromPayload(payload) {
80
+ const parsed = RunOutcomeFacts.safeParse(payload["facts"]);
81
+ if (parsed.success)
82
+ return parsed.data;
83
+ // Older in-process terminal producers (including the Delegate drain
84
+ // contract) supplied only lifecycle. Keep that compatible while treating an
85
+ // explicitly malformed facts object as a contradiction that must fail
86
+ // closed through the terminal-facts path below.
87
+ if (!Object.prototype.hasOwnProperty.call(payload, "facts")) {
88
+ const lifecycle = payload["lifecycle"];
89
+ if (lifecycle === "succeeded" ||
90
+ lifecycle === "failed" ||
91
+ lifecycle === "cancelled" ||
92
+ lifecycle === "interrupted") {
93
+ return makeOutcomeFacts(lifecycle);
94
+ }
95
+ }
96
+ return RunOutcomeFacts.parse(payload["facts"]);
97
+ }
98
+ export function settledSpend(a) {
99
+ try {
100
+ return a.spend ? a.spend() : null;
101
+ }
102
+ catch {
103
+ return null;
104
+ }
105
+ }
106
+ export function isTerminalRecoveryRequired(error) {
107
+ return (!!error &&
108
+ typeof error === "object" &&
109
+ "code" in error &&
110
+ error.code === "terminal_recovery_required");
111
+ }
112
+ export function committedOutcome(a) {
113
+ const terminal = [...a.log.readAll().events]
114
+ .reverse()
115
+ .find((event) => event.type === "run.completed" ||
116
+ event.type === "run.blocked" ||
117
+ event.type === "run.failed");
118
+ const parsed = RunOutcomeFacts.safeParse(terminal?.payload["facts"]);
119
+ return parsed.success ? parsed.data : null;
120
+ }
121
+ export function committedResult(a, outcome, spendUsd) {
122
+ const summary = readTextSafe(join(a.paths.finalDir, "summary.md"))?.trim().slice(0, 400) ??
123
+ `run terminal committed with lifecycle ${outcome.lifecycle}`;
124
+ return {
125
+ runId: a.runId,
126
+ taskId: a.taskId,
127
+ mode: a.mode,
128
+ lifecycle: outcome.lifecycle,
129
+ facts: outcome,
130
+ winner: null,
131
+ runDir: a.paths.root,
132
+ summary,
133
+ candidates: [],
134
+ spendUsd,
135
+ };
136
+ }
137
+ //# sourceMappingURL=runTerminalHelpers.js.map