@claudexor/orchestrator 4.8.2 → 5.0.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.
Files changed (228) hide show
  1. package/dist/account-pool.d.ts +4 -1
  2. package/dist/account-pool.d.ts.map +1 -1
  3. package/dist/account-pool.js +25 -19
  4. package/dist/account-pool.js.map +1 -1
  5. package/dist/account-resolution.d.ts +1 -4
  6. package/dist/account-resolution.d.ts.map +1 -1
  7. package/dist/account-resolution.js +19 -42
  8. package/dist/account-resolution.js.map +1 -1
  9. package/dist/attemptOutputMarkers.d.ts +7 -0
  10. package/dist/attemptOutputMarkers.d.ts.map +1 -1
  11. package/dist/attemptOutputMarkers.js +1 -1
  12. package/dist/attemptOutputMarkers.js.map +1 -1
  13. package/dist/attemptTelemetry.d.ts +4 -1
  14. package/dist/attemptTelemetry.d.ts.map +1 -1
  15. package/dist/attemptTelemetry.js +9 -26
  16. package/dist/attemptTelemetry.js.map +1 -1
  17. package/dist/candidateEvidence.d.ts +29 -9
  18. package/dist/candidateEvidence.d.ts.map +1 -1
  19. package/dist/candidateEvidence.js +68 -16
  20. package/dist/candidateEvidence.js.map +1 -1
  21. package/dist/candidateOutputs.d.ts +44 -22
  22. package/dist/candidateOutputs.d.ts.map +1 -1
  23. package/dist/candidateOutputs.js +116 -72
  24. package/dist/candidateOutputs.js.map +1 -1
  25. package/dist/candidateReview.d.ts.map +1 -1
  26. package/dist/candidateReview.js +44 -8
  27. package/dist/candidateReview.js.map +1 -1
  28. package/dist/candidateTerminals.d.ts +1 -0
  29. package/dist/candidateTerminals.d.ts.map +1 -1
  30. package/dist/candidateTerminals.js +38 -15
  31. package/dist/candidateTerminals.js.map +1 -1
  32. package/dist/candidateWorkProduct.d.ts +2 -1
  33. package/dist/candidateWorkProduct.d.ts.map +1 -1
  34. package/dist/candidateWorkProduct.js +6 -3
  35. package/dist/candidateWorkProduct.js.map +1 -1
  36. package/dist/captureRefusal.d.ts +41 -3
  37. package/dist/captureRefusal.d.ts.map +1 -1
  38. package/dist/captureRefusal.js +168 -25
  39. package/dist/captureRefusal.js.map +1 -1
  40. package/dist/continuation-chain.test-support.d.ts +473 -0
  41. package/dist/continuation-chain.test-support.d.ts.map +1 -0
  42. package/dist/continuation-chain.test-support.js +206 -0
  43. package/dist/continuation-chain.test-support.js.map +1 -0
  44. package/dist/continuation-custody.d.ts +4 -1
  45. package/dist/continuation-custody.d.ts.map +1 -1
  46. package/dist/continuation-custody.js +71 -29
  47. package/dist/continuation-custody.js.map +1 -1
  48. package/dist/continuation-evidence-io.d.ts +30 -4
  49. package/dist/continuation-evidence-io.d.ts.map +1 -1
  50. package/dist/continuation-evidence-io.js +162 -46
  51. package/dist/continuation-evidence-io.js.map +1 -1
  52. package/dist/continuation-evidence.d.ts +40 -3
  53. package/dist/continuation-evidence.d.ts.map +1 -1
  54. package/dist/continuation-evidence.js +85 -11
  55. package/dist/continuation-evidence.js.map +1 -1
  56. package/dist/continuation-input.d.ts +10 -1
  57. package/dist/continuation-input.d.ts.map +1 -1
  58. package/dist/continuation-input.js +21 -20
  59. package/dist/continuation-input.js.map +1 -1
  60. package/dist/continuation-later.d.ts +30 -0
  61. package/dist/continuation-later.d.ts.map +1 -0
  62. package/dist/continuation-later.js +108 -0
  63. package/dist/continuation-later.js.map +1 -0
  64. package/dist/continue-from.d.ts +4 -3
  65. package/dist/continue-from.d.ts.map +1 -1
  66. package/dist/continue-from.js +62 -26
  67. package/dist/continue-from.js.map +1 -1
  68. package/dist/continuity-notice.d.ts +3 -1
  69. package/dist/continuity-notice.d.ts.map +1 -1
  70. package/dist/continuity-notice.js +3 -1
  71. package/dist/continuity-notice.js.map +1 -1
  72. package/dist/continuity-terminal.d.ts +16 -0
  73. package/dist/continuity-terminal.d.ts.map +1 -1
  74. package/dist/continuity-terminal.js +21 -0
  75. package/dist/continuity-terminal.js.map +1 -1
  76. package/dist/continuity.d.ts +1 -1
  77. package/dist/continuity.d.ts.map +1 -1
  78. package/dist/contract-gates.d.ts.map +1 -1
  79. package/dist/contract-gates.js +11 -6
  80. package/dist/contract-gates.js.map +1 -1
  81. package/dist/credential-cooldown.d.ts +2 -1
  82. package/dist/credential-cooldown.d.ts.map +1 -1
  83. package/dist/credential-cooldown.js +16 -7
  84. package/dist/credential-cooldown.js.map +1 -1
  85. package/dist/credential-preflight.d.ts.map +1 -1
  86. package/dist/credential-preflight.js +10 -7
  87. package/dist/credential-preflight.js.map +1 -1
  88. package/dist/credential-profile-rotation.d.ts +10 -3
  89. package/dist/credential-profile-rotation.d.ts.map +1 -1
  90. package/dist/credential-profile-rotation.js +28 -26
  91. package/dist/credential-profile-rotation.js.map +1 -1
  92. package/dist/deepScanReducer.d.ts +0 -3
  93. package/dist/deepScanReducer.d.ts.map +1 -1
  94. package/dist/deepScanReducer.js +22 -26
  95. package/dist/deepScanReducer.js.map +1 -1
  96. package/dist/delegationFailure.d.ts +105 -15
  97. package/dist/delegationFailure.d.ts.map +1 -1
  98. package/dist/delegationFailure.js +43 -12
  99. package/dist/delegationFailure.js.map +1 -1
  100. package/dist/delegationToolEvidence.d.ts +2 -0
  101. package/dist/delegationToolEvidence.d.ts.map +1 -1
  102. package/dist/delegationToolEvidence.js +21 -0
  103. package/dist/delegationToolEvidence.js.map +1 -1
  104. package/dist/diffReview.d.ts +1 -8
  105. package/dist/diffReview.d.ts.map +1 -1
  106. package/dist/diffReview.js +3 -18
  107. package/dist/diffReview.js.map +1 -1
  108. package/dist/directoryCandidate.d.ts +11 -1
  109. package/dist/directoryCandidate.d.ts.map +1 -1
  110. package/dist/directoryCandidate.js +34 -14
  111. package/dist/directoryCandidate.js.map +1 -1
  112. package/dist/inrun-continuity-carrier.d.ts +11 -1
  113. package/dist/inrun-continuity-carrier.d.ts.map +1 -1
  114. package/dist/inrun-continuity-carrier.js +32 -10
  115. package/dist/inrun-continuity-carrier.js.map +1 -1
  116. package/dist/inrun-continuity-types.d.ts +17 -4
  117. package/dist/inrun-continuity-types.d.ts.map +1 -1
  118. package/dist/inrun-continuity.d.ts +8 -3
  119. package/dist/inrun-continuity.d.ts.map +1 -1
  120. package/dist/inrun-continuity.js +41 -37
  121. package/dist/inrun-continuity.js.map +1 -1
  122. package/dist/inrun-continuity.test-support.d.ts +61 -4
  123. package/dist/inrun-continuity.test-support.d.ts.map +1 -1
  124. package/dist/inrun-continuity.test-support.js +12 -2
  125. package/dist/inrun-continuity.test-support.js.map +1 -1
  126. package/dist/modelGovernance.d.ts +87 -9
  127. package/dist/modelGovernance.d.ts.map +1 -1
  128. package/dist/modelGovernance.js +110 -15
  129. package/dist/modelGovernance.js.map +1 -1
  130. package/dist/orchestrator-credentials.d.ts +9 -4
  131. package/dist/orchestrator-credentials.d.ts.map +1 -1
  132. package/dist/orchestrator-credentials.js +14 -6
  133. package/dist/orchestrator-credentials.js.map +1 -1
  134. package/dist/orchestrator.d.ts +3 -2
  135. package/dist/orchestrator.d.ts.map +1 -1
  136. package/dist/orchestrator.js +298 -277
  137. package/dist/orchestrator.js.map +1 -1
  138. package/dist/planFinalize.d.ts.map +1 -1
  139. package/dist/planFinalize.js +3 -7
  140. package/dist/planFinalize.js.map +1 -1
  141. package/dist/planRun.js +2 -2
  142. package/dist/planRun.js.map +1 -1
  143. package/dist/plannerAttempt.d.ts +0 -2
  144. package/dist/plannerAttempt.d.ts.map +1 -1
  145. package/dist/plannerAttempt.js +64 -30
  146. package/dist/plannerAttempt.js.map +1 -1
  147. package/dist/policyFindings.d.ts +3 -0
  148. package/dist/policyFindings.d.ts.map +1 -1
  149. package/dist/policyFindings.js +11 -1
  150. package/dist/policyFindings.js.map +1 -1
  151. package/dist/pool-attempt-evidence.d.ts +1 -1
  152. package/dist/pool-attempt-evidence.d.ts.map +1 -1
  153. package/dist/pool-attempt-evidence.js +1 -1
  154. package/dist/pool-attempt-evidence.js.map +1 -1
  155. package/dist/primary-divergence.d.ts +7 -2
  156. package/dist/primary-divergence.d.ts.map +1 -1
  157. package/dist/primary-divergence.js +13 -5
  158. package/dist/primary-divergence.js.map +1 -1
  159. package/dist/quota-refusal-scope.d.ts +39 -1
  160. package/dist/quota-refusal-scope.d.ts.map +1 -1
  161. package/dist/quota-refusal-scope.js +95 -1
  162. package/dist/quota-refusal-scope.js.map +1 -1
  163. package/dist/readonlyTerminals.d.ts +0 -1
  164. package/dist/readonlyTerminals.d.ts.map +1 -1
  165. package/dist/readonlyTerminals.js +5 -3
  166. package/dist/readonlyTerminals.js.map +1 -1
  167. package/dist/requestRequirements.d.ts +23 -0
  168. package/dist/requestRequirements.d.ts.map +1 -1
  169. package/dist/requestRequirements.js +22 -0
  170. package/dist/requestRequirements.js.map +1 -1
  171. package/dist/resultNotice.d.ts +14 -0
  172. package/dist/resultNotice.d.ts.map +1 -0
  173. package/dist/resultNotice.js +21 -0
  174. package/dist/resultNotice.js.map +1 -0
  175. package/dist/reviewerInventory.d.ts +47 -0
  176. package/dist/reviewerInventory.d.ts.map +1 -0
  177. package/dist/reviewerInventory.js +74 -0
  178. package/dist/reviewerInventory.js.map +1 -0
  179. package/dist/reviewerPanel.d.ts.map +1 -1
  180. package/dist/reviewerPanel.js +37 -60
  181. package/dist/reviewerPanel.js.map +1 -1
  182. package/dist/routing-failure.d.ts +2 -1
  183. package/dist/routing-failure.d.ts.map +1 -1
  184. package/dist/routing-failure.js +2 -0
  185. package/dist/routing-failure.js.map +1 -1
  186. package/dist/runAdmission.d.ts.map +1 -1
  187. package/dist/runAdmission.js +1 -14
  188. package/dist/runAdmission.js.map +1 -1
  189. package/dist/runEventLog.d.ts +2 -1
  190. package/dist/runEventLog.d.ts.map +1 -1
  191. package/dist/runEventLog.js +5 -3
  192. package/dist/runEventLog.js.map +1 -1
  193. package/dist/runFactsBuilder.d.ts.map +1 -1
  194. package/dist/runFactsBuilder.js +18 -10
  195. package/dist/runFactsBuilder.js.map +1 -1
  196. package/dist/runFactsDeliverable.d.ts.map +1 -1
  197. package/dist/runFactsDeliverable.js +7 -1
  198. package/dist/runFactsDeliverable.js.map +1 -1
  199. package/dist/runSupport.d.ts +5 -10
  200. package/dist/runSupport.d.ts.map +1 -1
  201. package/dist/runSupport.js +38 -40
  202. package/dist/runSupport.js.map +1 -1
  203. package/dist/runTerminalResults.d.ts +9 -1
  204. package/dist/runTerminalResults.d.ts.map +1 -1
  205. package/dist/runTerminalResults.js +27 -5
  206. package/dist/runTerminalResults.js.map +1 -1
  207. package/dist/runTerminals.d.ts.map +1 -1
  208. package/dist/runTerminals.js +6 -3
  209. package/dist/runTerminals.js.map +1 -1
  210. package/dist/savedCandidate.d.ts +43 -0
  211. package/dist/savedCandidate.d.ts.map +1 -0
  212. package/dist/savedCandidate.js +88 -0
  213. package/dist/savedCandidate.js.map +1 -0
  214. package/dist/secretDiff.d.ts +85 -46
  215. package/dist/secretDiff.d.ts.map +1 -1
  216. package/dist/secretDiff.js +123 -126
  217. package/dist/secretDiff.js.map +1 -1
  218. package/dist/task-contract-builder.d.ts.map +1 -1
  219. package/dist/task-contract-builder.js +5 -7
  220. package/dist/task-contract-builder.js.map +1 -1
  221. package/dist/workReportEnvelope.d.ts.map +1 -1
  222. package/dist/workReportEnvelope.js +4 -16
  223. package/dist/workReportEnvelope.js.map +1 -1
  224. package/package.json +17 -17
  225. package/dist/persistedPatch.d.ts +0 -55
  226. package/dist/persistedPatch.d.ts.map +0 -1
  227. package/dist/persistedPatch.js +0 -132
  228. package/dist/persistedPatch.js.map +0 -1
@@ -5,7 +5,8 @@
5
5
  * adapter cannot move, the mind asked for a re-brief), the successor is a
6
6
  * FRESH vendor session re-grounded by an EVIDENCE INDEX: the original work
7
7
  * order, admitted steering (live messages) with their delivery status, the
8
- * retained assistant output, a tool-call index (name, completed / unresolved),
8
+ * retained assistant output, a tool-call index (name, completed / unconfirmed
9
+ * command / unresolved),
9
10
  * the diff stat and absolute paths to the predecessor's event log and attempt
10
11
  * artifacts readable from the new environment. Bounded inline with honest
11
12
  * truncation (`summarized` is true also when a single section was cut). No
@@ -16,7 +17,7 @@
16
17
  * continuation keep that packet; the evidence index serves in-run packet hops
17
18
  * and `continueFrom`.
18
19
  */
19
- import type { ResumableCause } from "@claudexor/schema";
20
+ import { type ResumableCause } from "@claudexor/schema";
20
21
  /** Admitted steering message of the predecessor (POST /v2/runs/:id/messages). */
21
22
  export interface EvidenceSteering {
22
23
  text: string;
@@ -27,7 +28,14 @@ export interface EvidenceSteering {
27
28
  export interface EvidenceIndexSources {
28
29
  runDir: string;
29
30
  attemptId: string;
31
+ /** Serial attempts of this run whose evidence the source carries, in order
32
+ * (default: `attemptId`); each keeps its own tool-result pairing boundary. */
33
+ attemptIds?: readonly string[];
30
34
  workOrder: string;
35
+ /** The complete chain work order file (`context/work-order.md`), when one exists. */
36
+ workOrderPath?: string | null;
37
+ /** The prompt carries the whole work order itself (a route that cannot read files). */
38
+ workOrderInPrompt?: boolean;
31
39
  steering: EvidenceSteering[];
32
40
  /** Earlier runs, oldest first; each keeps its own tool-result pairing boundary. */
33
41
  predecessors?: readonly PredecessorEvidenceSource[];
@@ -39,14 +47,24 @@ export type PredecessorEvidenceSource = Omit<EvidenceIndexSources, "predecessors
39
47
  export interface EvidenceToolCall {
40
48
  name: string;
41
49
  target: string | null;
42
- /** False when the call never saw its result (cut off). */
50
+ /** True only when a result or a typed completion was recorded for it. */
43
51
  resolved: boolean;
52
+ /** A recorded non-ok outcome of that result or completion (completed is not success). */
53
+ outcome?: "error" | "cancelled" | "denied";
54
+ /** The result's stored `command_outcome` (#450), when it reported one. */
55
+ commandOutcome?: unknown;
56
+ /** An untyped edit frame repeated: the repeat may be its completion or another start. */
57
+ unconfirmed?: true;
58
+ /** The attempt that recorded it, when the evidence spans several attempts of one run. */
59
+ attempt?: string;
44
60
  }
45
61
  /** Fully-resolved inputs of the pure builder (the collector reads them from the run dir). */
46
62
  export interface EvidenceIndexInput {
47
63
  cause: ResumableCause;
48
64
  completed?: boolean;
49
65
  workOrder: string;
66
+ workOrderPath?: string | null;
67
+ workOrderInPrompt?: boolean;
50
68
  steering: EvidenceSteering[];
51
69
  /** The retained assistant output (`final/retained-output.md` or the attempt's answer), "" when none. */
52
70
  retainedOutput: string;
@@ -78,4 +96,23 @@ export declare const EVIDENCE_TOTAL_BUDGET_BYTES: number;
78
96
  export declare const EVIDENCE_TOOL_ROWS = 60;
79
97
  /** Pure: render the bounded evidence index for a packet carrier. */
80
98
  export declare function buildEvidenceIndex(input: EvidenceIndexInput): EvidenceIndex;
99
+ /**
100
+ * The complete work order a route that cannot read files must receive inline
101
+ * (`git_patch_envelope`: its process reads no path), set only when the index
102
+ * would cut it and the prompt does not already carry it. Every other route
103
+ * keeps the bounded section plus the file.
104
+ */
105
+ export declare function readlessWorkOrder(route: {
106
+ implementationTransport?: string;
107
+ } | undefined, workOrder: string, prompt: string): string | null;
108
+ /** Recorded work of the previous run's other processes that a resumed native session never received. */
109
+ export interface UncoveredWork {
110
+ /** Steering delivered only to those processes. */
111
+ steering: string[];
112
+ retainedOutput: string;
113
+ toolCalls: EvidenceToolCall[];
114
+ eventsLog: string | null;
115
+ }
116
+ /** Pure: the bounded, labelled evidence a native resume adds for work outside its session ("" when none). */
117
+ export declare function uncoveredWorkSection(work: UncoveredWork): string;
81
118
  //# sourceMappingURL=continuation-evidence.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"continuation-evidence.d.ts","sourceRoot":"","sources":["../src/continuation-evidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,iFAAiF;AACjF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,mGAAmG;IACnG,QAAQ,EAAE,WAAW,GAAG,WAAW,CAAC;CACrC;AAED,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,mFAAmF;IACnF,YAAY,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;CACrD;AAED,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IACnF,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,0DAA0D;IAC1D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,6FAA6F;AAC7F,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,cAAc,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,wGAAwG;IACxG,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,sFAAsF;IACtF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,0EAA0E;IAC1E,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACzF,oBAAoB,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;CAC1D;AAED,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,mCAAmC;AACnC,eAAO,MAAM,6BAA6B,QAAW,CAAC;AACtD,sEAAsE;AACtE,eAAO,MAAM,2BAA2B,QAAY,CAAC;AACrD,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAsCrC,oEAAoE;AACpE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CAgF3E"}
1
+ {"version":3,"file":"continuation-evidence.d.ts","sourceRoot":"","sources":["../src/continuation-evidence.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,23 @@
1
+ /**
2
+ * Evidence-index packet builder — PURE (A10).
3
+ *
4
+ * When no native carrier exists (the vendor refused the moved session, the
5
+ * adapter cannot move, the mind asked for a re-brief), the successor is a
6
+ * FRESH vendor session re-grounded by an EVIDENCE INDEX: the original work
7
+ * order, admitted steering (live messages) with their delivery status, the
8
+ * retained assistant output, a tool-call index (name, completed / unconfirmed
9
+ * command / unresolved),
10
+ * the diff stat and absolute paths to the predecessor's event log and attempt
11
+ * artifacts readable from the new environment. Bounded inline with honest
12
+ * truncation (`summarized` is true also when a single section was cut). No
13
+ * second summarizer, no recap model call.
14
+ *
15
+ * This is NOT the thread continuation packet (`continuity.ts`
16
+ * `buildContinuation`, INV-137): thread turns and the D-16d context-exhaustion
17
+ * continuation keep that packet; the evidence index serves in-run packet hops
18
+ * and `continueFrom`.
19
+ */
20
+ import { commandOutcomeLabel } from "@claudexor/schema";
1
21
  /** Per-section verbatim budget. */
2
22
  export const EVIDENCE_SECTION_BUDGET_BYTES = 8 * 1024;
3
23
  /** Whole-index budget; the tool index collapses to counts past it. */
@@ -46,6 +66,10 @@ export function buildEvidenceIndex(input) {
46
66
  return b.text;
47
67
  };
48
68
  const unresolved = input.toolCalls.filter((call) => !call.resolved);
69
+ const unconfirmed = unresolved.filter((call) => call.unconfirmed).length;
70
+ const workOrder = input.workOrder.trim();
71
+ const shownWorkOrder = bound(workOrder, EVIDENCE_SECTION_BUDGET_BYTES);
72
+ summarized ||= shownWorkOrder.cut;
49
73
  const parts = [
50
74
  input.completed
51
75
  ? "# Evidence index of the previous work"
@@ -57,7 +81,12 @@ export function buildEvidenceIndex(input) {
57
81
  "",
58
82
  "## Original work order",
59
83
  "",
60
- section(input.workOrder) || "(empty)",
84
+ shownWorkOrder.text || "(empty)",
85
+ ...(shownWorkOrder.cut
86
+ ? [
87
+ `[Work order truncated to the ${EVIDENCE_SECTION_BUDGET_BYTES}-byte section budget; the whole work order is ${bytes(workOrder)} bytes.${input.workOrderInPrompt ? " It is given in full above." : input.workOrderPath ? ` It is complete in the file ${input.workOrderPath}.` : ""}]`,
88
+ ]
89
+ : []),
61
90
  "",
62
91
  ];
63
92
  if (input.steering.length > 0) {
@@ -77,20 +106,21 @@ export function buildEvidenceIndex(input) {
77
106
  }
78
107
  else if (input.toolCalls.length > EVIDENCE_TOOL_ROWS) {
79
108
  summarized = true;
80
- parts.push(`${input.toolCalls.length} tool calls recorded, ${unresolved.length} without a recorded result (cut off). The last ${EVIDENCE_TOOL_ROWS} follow:`, "", ...input.toolCalls.slice(-EVIDENCE_TOOL_ROWS).map(toolRow));
109
+ parts.push(`${input.toolCalls.length} tool calls recorded, ${unresolved.length - unconfirmed} without a recorded result (cut off)${unconfirmed ? `, ${unconfirmed} with completion not confirmed` : ""}. The last ${EVIDENCE_TOOL_ROWS} follow:`, "", ...input.toolCalls.slice(-EVIDENCE_TOOL_ROWS).map(toolRow));
81
110
  }
82
111
  else {
83
112
  parts.push(...input.toolCalls.map(toolRow));
84
113
  }
85
114
  parts.push("", "## Changed files", "");
86
115
  parts.push(input.diffStat && input.diffStat.trim() ? section(input.diffStat) : "(no diff stat)");
87
- const refs = [input.artifacts, ...(input.predecessorArtifacts ?? [])]
88
- .flatMap((artifacts) => [
89
- artifacts.eventsLog && `- Event log: ${artifacts.eventsLog}`,
90
- artifacts.attemptDir && `- Attempt artifacts: ${artifacts.attemptDir}`,
91
- artifacts.patch && `- Patch so far: ${artifacts.patch}`,
92
- ])
93
- .filter((line) => typeof line === "string");
116
+ const refs = [
117
+ input.workOrderPath ? `- Complete work order: ${input.workOrderPath}` : null,
118
+ ...[input.artifacts, ...(input.predecessorArtifacts ?? [])].flatMap((artifacts) => [
119
+ artifacts.eventsLog && `- Event log: ${artifacts.eventsLog}`,
120
+ artifacts.attemptDir && `- Attempt artifacts: ${artifacts.attemptDir}`,
121
+ artifacts.patch && `- Patch so far: ${artifacts.patch}`,
122
+ ]),
123
+ ].filter((line) => typeof line === "string");
94
124
  const footer = [
95
125
  "",
96
126
  "",
@@ -98,7 +128,7 @@ export function buildEvidenceIndex(input) {
98
128
  "",
99
129
  refs.length ? section(refs.join("\n")) : "(no artifact paths available)",
100
130
  "",
101
- `Tool calls: ${input.toolCalls.length}; unresolved: ${unresolved.length}.`,
131
+ `Tool calls: ${input.toolCalls.length}; unresolved: ${unresolved.length}${unconfirmed ? ` (completion not confirmed: ${unconfirmed})` : ""}.`,
102
132
  "",
103
133
  ].join("\n");
104
134
  const prose = parts
@@ -116,8 +146,52 @@ export function buildEvidenceIndex(input) {
116
146
  bytes: bytes(markdown),
117
147
  };
118
148
  }
149
+ /**
150
+ * The complete work order a route that cannot read files must receive inline
151
+ * (`git_patch_envelope`: its process reads no path), set only when the index
152
+ * would cut it and the prompt does not already carry it. Every other route
153
+ * keeps the bounded section plus the file.
154
+ */
155
+ export function readlessWorkOrder(route, workOrder, prompt) {
156
+ const whole = workOrder.trim();
157
+ return route?.implementationTransport === "git_patch_envelope" &&
158
+ bytes(whole) > EVIDENCE_SECTION_BUDGET_BYTES &&
159
+ !prompt.includes(whole)
160
+ ? whole
161
+ : null;
162
+ }
163
+ /** Pure: the bounded, labelled evidence a native resume adds for work outside its session ("" when none). */
164
+ export function uncoveredWorkSection(work) {
165
+ if (!work.steering.length && !work.retainedOutput.trim() && !work.toolCalls.length)
166
+ return "";
167
+ const section = (text) => bound(text.trim(), EVIDENCE_SECTION_BUDGET_BYTES).text;
168
+ const parts = [
169
+ "Other processes of the previous run recorded the work below after or apart from the session you are resuming. It is not part of the resumed session's history: reconcile it against the workspace; do not replay it blindly.",
170
+ ];
171
+ if (work.steering.length)
172
+ parts.push(`Messages delivered to them:\n\n${work.steering.map((text, i) => `### Message ${i + 1}\n\n${section(text)}`).join("\n\n")}`);
173
+ if (work.retainedOutput.trim())
174
+ parts.push(`Their output:\n\n${section(work.retainedOutput)}`);
175
+ if (work.toolCalls.length) {
176
+ const shown = work.toolCalls.slice(-EVIDENCE_TOOL_ROWS);
177
+ parts.push(`Their tool calls${shown.length < work.toolCalls.length ? ` (the last ${shown.length} of ${work.toolCalls.length})` : ""}:\n\n${shown.map(toolRow).join("\n")}`);
178
+ }
179
+ // The record's path survives any cut of the prose above it.
180
+ const footer = work.eventsLog ? `\n\nFull record: ${work.eventsLog}` : "";
181
+ return bound(parts.join("\n\n"), EVIDENCE_TOTAL_BUDGET_BYTES - bytes(footer)).text + footer;
182
+ }
119
183
  function toolRow(call) {
120
184
  const target = call.target ? ` — ${call.target.replace(/\s+/g, " ").slice(0, 160)}` : "";
121
- return `- ${call.name}${target} (${call.resolved ? "completed" : "unresolved: no result recorded"})`;
185
+ // A recorded result whose command was moved to the background, timed out or
186
+ // ended unknown is not a completed command (#450).
187
+ const unconfirmed = call.resolved ? commandOutcomeLabel(call.commandOutcome) : null;
188
+ const state = unconfirmed
189
+ ? `unconfirmed: ${unconfirmed}`
190
+ : call.resolved
191
+ ? `completed${call.outcome ? `: ${call.outcome}` : ""}`
192
+ : call.unconfirmed
193
+ ? "completion not confirmed"
194
+ : "unresolved: no result recorded";
195
+ return `- ${call.name}${target} (${state})${call.attempt ? ` · attempt ${call.attempt}` : ""}`;
122
196
  }
123
197
  //# sourceMappingURL=continuation-evidence.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"continuation-evidence.js","sourceRoot":"","sources":["../src/continuation-evidence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"continuation-evidence.js","sourceRoot":"","sources":["../src/continuation-evidence.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type ContinuationSources } from "@claudexor/schema";
1
+ import type { ContinuationSources } from "@claudexor/schema";
2
2
  export interface UncertainInput {
3
3
  text: string;
4
4
  runDir: string;
@@ -7,4 +7,13 @@ export interface UncertainInput {
7
7
  export declare function completeInputPath(input: UncertainInput, currentRunDir: string): string;
8
8
  /** Reference only: the notice tells the next process to reconcile, never replay blindly. */
9
9
  export declare function unconfirmedContinuationInputs(sources: ContinuationSources): UncertainInput[];
10
+ /** What a first try that delivered nothing (it never started, or its handshake
11
+ * named another session) leaves to reconcile: a successor's individual
12
+ * undelivered callers newest first, this run's own correction included, else
13
+ * the run's own work order. Further undelivered tries keep these references. */
14
+ export declare function undeliveredInputs(run: {
15
+ runDir: string;
16
+ runId: string;
17
+ workOrder: string;
18
+ }): UncertainInput[];
10
19
  //# sourceMappingURL=continuation-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"continuation-input.d.ts","sourceRoot":"","sources":["../src/continuation-input.ts"],"names":[],"mappings":"AAKA,OAAO,EAAwB,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAKnF,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAYtF;AAED,4FAA4F;AAC5F,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,mBAAmB,GAAG,cAAc,EAAE,CAiD5F"}
1
+ {"version":3,"file":"continuation-input.d.ts","sourceRoot":"","sources":["../src/continuation-input.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAS7D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAYtF;AAED,4FAA4F;AAC5F,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,mBAAmB,GAAG,cAAc,EAAE,CA+B5F;AAED;;;gFAGgF;AAChF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,cAAc,EAAE,CAQnB"}
@@ -3,8 +3,7 @@ import { createHash } from "node:crypto";
3
3
  import { mkdirSync, writeFileSync } from "node:fs";
4
4
  import { dirname, join, resolve } from "node:path";
5
5
  import { readRunEvents } from "@claudexor/event-log";
6
- import { RunContinuityReceipt } from "@claudexor/schema";
7
- import { readContinuationSources } from "@claudexor/workspace";
6
+ import { continuedTryStarted, readContinuationSources, runExecutionFacts, } from "@claudexor/workspace";
8
7
  import { readTextSafe } from "@claudexor/util";
9
8
  import { steeringFromRunLog } from "./continuation-evidence-io.js";
10
9
  /** Reuse complete durable context; only missing text needs a new context file. */
@@ -29,7 +28,10 @@ export function unconfirmedContinuationInputs(sources) {
29
28
  let newerStarted = false;
30
29
  for (const [index, source] of sources.entries()) {
31
30
  const { events } = readRunEvents(join(source.runDir, "events.jsonl"));
32
- const startedHere = events.some((event) => event.type === "harness.event" && event.payload["type"] === "started");
31
+ // Only a continued try (receipt joined to its own accepted start) was handed
32
+ // the notice; a reviewer, repair or unplanned process proves nothing.
33
+ const facts = runExecutionFacts(events);
34
+ const startedHere = continuedTryStarted(facts);
33
35
  // A stopped run's admitted steering without delivery proof is newer than its caller text.
34
36
  // The live run's own steering is read per attempt by `uncertainInputFor`.
35
37
  if (!newerStarted && source.state !== "running") {
@@ -44,26 +46,25 @@ export function unconfirmedContinuationInputs(sources) {
44
46
  const text = events.find((event) => event.type === "run.created")?.payload["prompt"];
45
47
  if (typeof text !== "string" || !text.trim())
46
48
  continue;
47
- const settled = events
48
- .map((event, index) => ({
49
- index,
50
- receipt: event.type === "run.continuity"
51
- ? RunContinuityReceipt.safeParse(event.payload["receipt"]).data
52
- : undefined,
53
- }))
54
- .find((entry) => entry.receipt?.tryIndex === 0);
55
- const receipt = settled?.receipt;
56
- // A mismatched handshake is not delivery. A missing receipt (including a crash
57
- // during the first try) leaves delivery unproved even if a session file exists.
58
- const delivered = receipt &&
59
- !receipt.identityCheck.startsWith("mismatch") &&
60
- events.some((event, index) => event.type === "harness.event" &&
61
- index < settled.index &&
62
- event.payload["attempt_id"] === receipt.attemptId &&
63
- event.payload["type"] === "started");
49
+ // Any continued first try (a fallback's included) that started proves delivery;
50
+ // a mismatched handshake or a missing receipt leaves it unproved.
51
+ const delivered = continuedTryStarted(facts, true);
64
52
  if (!delivered)
65
53
  uncertain.push({ text, runDir: source.runDir });
66
54
  }
67
55
  return uncertain;
68
56
  }
57
+ /** What a first try that delivered nothing (it never started, or its handshake
58
+ * named another session) leaves to reconcile: a successor's individual
59
+ * undelivered callers newest first, this run's own correction included, else
60
+ * the run's own work order. Further undelivered tries keep these references. */
61
+ export function undeliveredInputs(run) {
62
+ const sources = readContinuationSources(run.runDir);
63
+ return sources.length
64
+ ? unconfirmedContinuationInputs([
65
+ { runDir: run.runDir, runId: run.runId, state: "running" },
66
+ ...sources,
67
+ ])
68
+ : [{ text: run.workOrder, runDir: run.runDir }];
69
+ }
69
70
  //# sourceMappingURL=continuation-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"continuation-input.js","sourceRoot":"","sources":["../src/continuation-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"continuation-input.js","sourceRoot":"","sources":["../src/continuation-input.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { type HarnessRunSpec, type ResumableCause, type RunContinuityReceipt } from "@claudexor/schema";
2
+ import { type PredecessorEvidenceSource } from "./continuation-evidence.js";
3
+ import { InRunContinuity } from "./inrun-continuity.js";
4
+ import type { InRunContinuityDeps } from "./inrun-continuity-types.js";
5
+ /** What the first planned attempt of a continued run leaves for its later attempts. */
6
+ export interface ContinuationPlan {
7
+ /** The chain's work order (predecessor's plus this run's caller text). */
8
+ workOrder: string;
9
+ /** The ancestral evidence sources, oldest first. */
10
+ evidenceSources: PredecessorEvidenceSource[];
11
+ acted: boolean;
12
+ cause: ResumableCause;
13
+ completed: boolean;
14
+ from: {
15
+ runId: string;
16
+ attemptId: string;
17
+ };
18
+ fromProfileId: string | null;
19
+ workspace: RunContinuityReceipt["workspace"];
20
+ }
21
+ /** A fallback attempt, or the D-16d one-shot checkpoint continuation. */
22
+ export type LaterAttempt = "fallback" | "checkpoint";
23
+ export declare function openLaterAttempt(deps: InRunContinuityDeps, first: {
24
+ spec: HarnessRunSpec;
25
+ later: LaterAttempt;
26
+ }, plan: ContinuationPlan): {
27
+ continuity: InRunContinuity;
28
+ spec: HarnessRunSpec;
29
+ };
30
+ //# sourceMappingURL=continuation-later.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"continuation-later.d.ts","sourceRoot":"","sources":["../src/continuation-later.ts"],"names":[],"mappings":"AAiBA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAE1B,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EAGL,KAAK,yBAAyB,EAC/B,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,uFAAuF;AACvF,MAAM,WAAW,gBAAgB;IAC/B,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,eAAe,EAAE,yBAAyB,EAAE,CAAC;IAC7C,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,cAAc,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;CAC9C;AAED,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,YAAY,CAAC;AAWrD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,EACpD,IAAI,EAAE,gBAAgB,GACrB;IAAE,UAAU,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,CAwFvD"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Later attempts of a continued run: an Ask `fallback_model` or required-web
3
+ * fallback attempt, or the D-16d checkpoint continuation (Ask and Agent),
4
+ * after an earlier attempt of the same run already planned the predecessor
5
+ * (`continue-from.ts`). The predecessor's session is never moved or retired a
6
+ * second time. The new attempt's first try is a fresh session re-briefed by
7
+ * the evidence index over the ancestral sources plus this run's earlier
8
+ * attempts. A checkpoint continuation's checkpoint carries only the exhausted
9
+ * try's last typed final as its report, so its index keeps every other output
10
+ * recorded in this run once (earlier tries of the exhausted attempt and that
11
+ * try's other narration and earlier native-turn finals included). Its receipt names
12
+ * the actual source: this run's latest attempt that started, else the planned
13
+ * predecessor.
14
+ */
15
+ import { mkdirSync, writeFileSync } from "node:fs";
16
+ import { join } from "node:path";
17
+ import { readRunEvents, retainedOutput } from "@claudexor/event-log";
18
+ import { HarnessRunSpec as HarnessRunSpecSchema, } from "@claudexor/schema";
19
+ import { carryingAttempt, readContinuationSources, readSessionCapsule, runExecutionFacts, unrepresentedOutput, } from "@claudexor/workspace";
20
+ import { buildEvidenceIndex, readlessWorkOrder, } from "./continuation-evidence.js";
21
+ import { collectEvidenceIndexInput, workOrderFile } from "./continuation-evidence-io.js";
22
+ import { unconfirmedContinuationInputs } from "./continuation-input.js";
23
+ import { continuationNotice, packetContinuationPrompt } from "./continuity-notice.js";
24
+ import { InRunContinuity } from "./inrun-continuity.js";
25
+ import { uncertainInputFor } from "./inrun-continuity-carrier.js";
26
+ /** The attempt whose last try's report the D-16d checkpoint carries: its `run.continuation`
27
+ * row is written before the checkpoint attempt is planned. */
28
+ function exhaustedAttempt(events) {
29
+ const from = events.findLast((event) => event.type === "run.continuation")?.payload["from_attempt"];
30
+ return typeof from === "string" ? from : null;
31
+ }
32
+ export function openLaterAttempt(deps, first, plan) {
33
+ const { events } = readRunEvents(join(deps.runDir, "events.jsonl"));
34
+ const facts = runExecutionFacts(events);
35
+ const earlier = facts.attempts.filter((id) => id !== deps.attemptId);
36
+ const earlierEvents = events.filter((event) => event.type === "harness.event" && earlier.includes(String(event.payload["attempt_id"])));
37
+ // The source: the attempt of this run that carries its latest work; without
38
+ // one, nothing of this run reached a vendor and the planned predecessor stays it.
39
+ const previous = carryingAttempt(facts) ?? undefined;
40
+ const source = {
41
+ runDir: deps.runDir,
42
+ attemptId: previous ?? earlier.at(-1) ?? deps.attemptId,
43
+ attemptIds: earlier,
44
+ workOrder: plan.workOrder,
45
+ steering: [],
46
+ retainedOutput: (first.later === "checkpoint"
47
+ ? unrepresentedOutput(earlierEvents, facts, exhaustedAttempt(events), first.spec.prompt)
48
+ : retainedOutput(earlierEvents)?.trim()) ?? "",
49
+ diffStat: null,
50
+ };
51
+ const cause = !previous
52
+ ? plan.cause
53
+ : first.later === "checkpoint"
54
+ ? "context_exhausted"
55
+ : "other";
56
+ const completed = !previous && plan.completed;
57
+ const uncertainInput = uncertainInputFor(deps.runDir, unconfirmedContinuationInputs([
58
+ { runId: deps.runId, runDir: deps.runDir, state: "running" },
59
+ ...readContinuationSources(deps.runDir),
60
+ ]), undefined);
61
+ const wholeWorkOrder = readlessWorkOrder(deps.route, plan.workOrder, first.spec.prompt);
62
+ const index = buildEvidenceIndex(collectEvidenceIndexInput({
63
+ ...source,
64
+ workOrderPath: wholeWorkOrder ? null : workOrderFile(deps.runDir),
65
+ workOrderInPrompt: wholeWorkOrder !== null,
66
+ predecessors: plan.evidenceSources,
67
+ }, { cause, retainedOutput: source.retainedOutput, diffStat: null, completed }));
68
+ const dir = join(deps.attemptDir, "continuation");
69
+ mkdirSync(dir, { recursive: true });
70
+ const evidencePath = join(dir, "evidence-index-try0.md");
71
+ writeFileSync(evidencePath, index.markdown);
72
+ const spec = HarnessRunSpecSchema.parse({
73
+ ...first.spec,
74
+ resume_session_id: null,
75
+ prompt: packetContinuationPrompt({
76
+ originalPrompt: first.spec.prompt,
77
+ notice: continuationNotice({ cause, completed, uncertainInput, callerText: null }),
78
+ evidencePath,
79
+ evidenceMarkdown: index.markdown,
80
+ completed,
81
+ workOrder: wholeWorkOrder,
82
+ }),
83
+ });
84
+ const continued = {
85
+ carrier: "packet",
86
+ summarized: index.summarized,
87
+ cause,
88
+ fromProfileId: previous
89
+ ? (readSessionCapsule(join(deps.runDir, "attempts", previous))?.holderProfileId ?? null)
90
+ : plan.fromProfileId,
91
+ toProfileId: spec.credential_profile?.profile_id ?? null,
92
+ memory: "partial",
93
+ inputDelivery: uncertainInput === null ? "confirmed" : "uncertain",
94
+ from: previous ? { runId: deps.runId, attemptId: previous } : plan.from,
95
+ workspace: previous ? "same_root" : plan.workspace,
96
+ };
97
+ const acted = plan.acted || earlier.some((id) => facts.progressed.has(id));
98
+ const evidenceSources = [...plan.evidenceSources, source];
99
+ return {
100
+ continuity: new InRunContinuity({
101
+ ...deps,
102
+ workOrder: plan.workOrder,
103
+ seed: { acted, completed, continued, evidenceSources },
104
+ }),
105
+ spec,
106
+ };
107
+ }
108
+ //# sourceMappingURL=continuation-later.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"continuation-later.js","sourceRoot":"","sources":["../src/continuation-later.ts"],"names":[],"mappings":"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"}
@@ -27,9 +27,10 @@ export interface ContinueFromSource {
27
27
  /**
28
28
  * Open the attempt's continuation controller. For the first candidate attempt
29
29
  * of a `continueFrom` successor, plan the carrier of its first try and return
30
- * the composed spec; every other attempt gets the controller unchanged.
31
- * `continuation.from` is consumed here: synthesis, a D-16d continuation or a
32
- * repair attempt of the same run never re-plans the predecessor's carrier.
30
+ * the composed spec. `continuation.from` is consumed here, so nothing re-plans
31
+ * the predecessor's carrier: a later fallback or D-16d checkpoint attempt
32
+ * (`deps.later`) continues the recorded plan through the evidence index, and
33
+ * every other attempt (synthesis, repair) gets the controller unchanged.
33
34
  */
34
35
  export declare function openContinuity(deps: InRunContinuityDeps, first: {
35
36
  spec: HarnessRunSpec;
@@ -1 +1 @@
1
- {"version":3,"file":"continue-from.d.ts","sourceRoot":"","sources":["../src/continue-from.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAGzB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAKjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG9D,0FAA0F;AAC1F,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,gFAAgF;IAChF,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,iFAAiF;IACjF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAuFD;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE;IACL,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,eAAe,GAAG,SAAS,CAAC;IAC1C,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;CACrD,GACA,OAAO,CAAC;IAAE,UAAU,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC,CAuKhE"}
1
+ {"version":3,"file":"continue-from.d.ts","sourceRoot":"","sources":["../src/continue-from.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAIzB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAcjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAQvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG9D,0FAA0F;AAC1F,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,gFAAgF;IAChF,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,iFAAiF;IACjF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6GD;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE;IACL,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,eAAe,GAAG,SAAS,CAAC;IAC1C,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;CACrD,GACA,OAAO,CAAC;IAAE,UAAU,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC,CAwMhE"}