loopforge 3.9.2 → 3.9.4

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 (104) hide show
  1. package/dist/canonical-state.d.ts +39 -1
  2. package/dist/canonical-state.d.ts.map +1 -1
  3. package/dist/canonical-state.js +114 -32
  4. package/dist/canonical-state.js.map +1 -1
  5. package/dist/committed-round.d.ts +27 -4
  6. package/dist/committed-round.d.ts.map +1 -1
  7. package/dist/committed-round.js +87 -14
  8. package/dist/committed-round.js.map +1 -1
  9. package/dist/enforcement-gate.d.ts +9 -32
  10. package/dist/enforcement-gate.d.ts.map +1 -1
  11. package/dist/enforcement-gate.js +9 -122
  12. package/dist/enforcement-gate.js.map +1 -1
  13. package/dist/engine.d.ts.map +1 -1
  14. package/dist/engine.js +13 -2
  15. package/dist/engine.js.map +1 -1
  16. package/dist/explain.d.ts +1 -0
  17. package/dist/explain.d.ts.map +1 -1
  18. package/dist/explain.js +1 -0
  19. package/dist/explain.js.map +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/loop-compiler.d.ts +17 -1
  24. package/dist/loop-compiler.d.ts.map +1 -1
  25. package/dist/loop-compiler.js +217 -104
  26. package/dist/loop-compiler.js.map +1 -1
  27. package/dist/mcp/round-lifecycle.d.ts +31 -1
  28. package/dist/mcp/round-lifecycle.d.ts.map +1 -1
  29. package/dist/mcp/round-lifecycle.js +102 -60
  30. package/dist/mcp/round-lifecycle.js.map +1 -1
  31. package/dist/mcp/server.d.ts +5 -0
  32. package/dist/mcp/server.d.ts.map +1 -1
  33. package/dist/mcp/server.js +19 -1
  34. package/dist/mcp/server.js.map +1 -1
  35. package/dist/mcp/session.d.ts.map +1 -1
  36. package/dist/mcp/session.js +23 -5
  37. package/dist/mcp/session.js.map +1 -1
  38. package/dist/mcp/submission-boundary.js +14 -4
  39. package/dist/mcp/submission-boundary.js.map +1 -1
  40. package/dist/mcp/tools.d.ts.map +1 -1
  41. package/dist/mcp/tools.js +62 -6
  42. package/dist/mcp/tools.js.map +1 -1
  43. package/dist/policy.d.ts +5 -2
  44. package/dist/policy.d.ts.map +1 -1
  45. package/dist/policy.js +2 -2
  46. package/dist/policy.js.map +1 -1
  47. package/dist/prompt-assembler.d.ts +8 -3
  48. package/dist/prompt-assembler.d.ts.map +1 -1
  49. package/dist/prompt-assembler.js +233 -240
  50. package/dist/prompt-assembler.js.map +1 -1
  51. package/dist/prompt-coverage.d.ts +45 -0
  52. package/dist/prompt-coverage.d.ts.map +1 -0
  53. package/dist/prompt-coverage.js +84 -0
  54. package/dist/prompt-coverage.js.map +1 -0
  55. package/dist/prompt-freshness.d.ts +36 -0
  56. package/dist/prompt-freshness.d.ts.map +1 -0
  57. package/dist/prompt-freshness.js +83 -0
  58. package/dist/prompt-freshness.js.map +1 -0
  59. package/dist/prompt-policy.d.ts +5 -2
  60. package/dist/prompt-policy.d.ts.map +1 -1
  61. package/dist/prompt-policy.js +10 -7
  62. package/dist/prompt-policy.js.map +1 -1
  63. package/dist/protocol.d.ts +45 -8
  64. package/dist/protocol.d.ts.map +1 -1
  65. package/dist/protocol.js +4 -1
  66. package/dist/protocol.js.map +1 -1
  67. package/dist/round-coordinator.d.ts +4 -2
  68. package/dist/round-coordinator.d.ts.map +1 -1
  69. package/dist/round-coordinator.js +7 -7
  70. package/dist/round-coordinator.js.map +1 -1
  71. package/dist/round-facts.d.ts.map +1 -1
  72. package/dist/round-facts.js +9 -3
  73. package/dist/round-facts.js.map +1 -1
  74. package/dist/round-transaction.d.ts.map +1 -1
  75. package/dist/round-transaction.js +19 -1
  76. package/dist/round-transaction.js.map +1 -1
  77. package/dist/self-eval.d.ts +8 -4
  78. package/dist/self-eval.d.ts.map +1 -1
  79. package/dist/self-eval.js +55 -5
  80. package/dist/self-eval.js.map +1 -1
  81. package/dist/submission-guidance.d.ts +25 -11
  82. package/dist/submission-guidance.d.ts.map +1 -1
  83. package/dist/submission-guidance.js +102 -44
  84. package/dist/submission-guidance.js.map +1 -1
  85. package/dist/submission-receipt.d.ts.map +1 -1
  86. package/dist/submission-receipt.js +1 -0
  87. package/dist/submission-receipt.js.map +1 -1
  88. package/dist/token-utils.d.ts +19 -0
  89. package/dist/token-utils.d.ts.map +1 -1
  90. package/dist/token-utils.js +41 -6
  91. package/dist/token-utils.js.map +1 -1
  92. package/dist/verification-actions.d.ts +13 -0
  93. package/dist/verification-actions.d.ts.map +1 -0
  94. package/dist/verification-actions.js +45 -0
  95. package/dist/verification-actions.js.map +1 -0
  96. package/dist/verification-gate.d.ts +5 -1
  97. package/dist/verification-gate.d.ts.map +1 -1
  98. package/dist/verification-gate.js +19 -7
  99. package/dist/verification-gate.js.map +1 -1
  100. package/dist/version.d.ts +1 -1
  101. package/dist/version.js +1 -1
  102. package/loop_policy.json +2 -2
  103. package/package.json +68 -68
  104. package/skills/perception/SKILL.md +25 -6
@@ -3,7 +3,7 @@
3
3
  * The canonical state is data, not Markdown. Prompt and state-file renderers
4
4
  * consume the same value so they cannot silently drift apart.
5
5
  */
6
- import type { ConstraintMeta, CriterionStatus, RecurringFlag, LoopCompileRequest, LoopCompileResponse, MilestoneSummary, SubGoal, VerificationFlag } from "./protocol.js";
6
+ import type { ConstraintMeta, CriterionStatus, RecurringFlag, LoopCompileRequest, LoopCompileResponse, LoopRoundResult, MilestoneSummary, SubGoal, VerificationFlag } from "./protocol.js";
7
7
  import type { ActiveContractView } from "./round-contract.js";
8
8
  import type { ContractItemStatusView } from "./contract-items.js";
9
9
  import type { ConfiguredCapability, VerifiedSubGoalFact } from "./protocol.js";
@@ -22,6 +22,36 @@ export declare function activeSubGoalView(subGoals: SubGoal[], cap: number): {
22
22
  canceled: number;
23
23
  total: number;
24
24
  };
25
+ /** v3.9.4: the ONE active-constraint partition. `criteria` is the active
26
+ * success-criteria set; `hard` is the active hard set minus criteria;
27
+ * `other` is every remaining active constraint. The three groups are
28
+ * mutually exclusive and partition the active constraint texts that are
29
+ * rendered by the prompt/state file. */
30
+ export interface ActiveConstraintPartition {
31
+ criteria: string[];
32
+ hard: string[];
33
+ other: string[];
34
+ }
35
+ export declare function partitionActiveConstraints(state: {
36
+ successCriteria: ReadonlyArray<string>;
37
+ hardConstraints: ReadonlyArray<string>;
38
+ activeConstraints: ReadonlyArray<string>;
39
+ }): ActiveConstraintPartition;
40
+ /** v3.9.4: the ONE criterion row renderer for the normative prompt section.
41
+ * It consumes the same `successCriteria`/`criterionStatuses` pair the state
42
+ * file and submission boundary use, and reports the exact ids it emitted so
43
+ * prompt coverage can prove them. */
44
+ export declare function formatCriterionRows(statuses: ReadonlyArray<CriterionStatus>, successCriteria: ReadonlyArray<string>): {
45
+ lines: string[];
46
+ ids: string[];
47
+ };
48
+ /** v3.9.4: the ONE active-sub-goal formatter shared by the prompt and the
49
+ * state file. Rows past `cap` lose their descriptions but NEVER their ids:
50
+ * the overflow line lists every remaining `sg-*`. */
51
+ export declare function formatActiveSubGoals(subGoals: ReadonlyArray<SubGoal>, round: number, cap?: number): {
52
+ lines: string[];
53
+ ids: string[];
54
+ };
25
55
  /** v3.3: Machine git-motion cross-check over the last committed rounds.
26
56
  * Display-only companion to the R4/R5 exculpatory signal. Optional:
27
57
  * absent when no committed rounds carry git snapshots — the object, when
@@ -152,5 +182,13 @@ derived?: {
152
182
  * assemble a state out of values derived over different history windows —
153
183
  * v3.4/v3.8 passed them as three independent options. */
154
184
  roundFacts?: RoundFacts;
185
+ /** 3.9.3: the compile's ONE previous-round bundle. Structural subset of
186
+ * `PreviousRoundFacts` so this module never imports the compiler. When
187
+ * absent (direct/library callers) the request fields remain the
188
+ * fallback. */
189
+ previousRound?: {
190
+ result: LoopRoundResult | null;
191
+ verificationFlags: VerificationFlag[];
192
+ };
155
193
  }): CanonicalLoopState;
156
194
  //# sourceMappingURL=canonical-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-state.d.ts","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canonical-state.d.ts","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * consume the same value so they cannot silently drift apart.
5
5
  */
6
6
  import { createHash } from "node:crypto";
7
- import { deriveItemId, STABLE_ID_RE, unique } from "./token-utils.js";
7
+ import { deriveCriterionId, deriveItemId, normalizeText, STABLE_ID_RE, unique, uniqueNormalized, } from "./token-utils.js";
8
8
  import { claimedMetCriteria, claimedRemainingCriteria } from "./self-eval.js";
9
9
  import { getPolicy } from "./policy.js";
10
10
  import { deriveConfiguredCapability } from "./policy.js";
@@ -31,6 +31,82 @@ export function activeSubGoalView(subGoals, cap) {
31
31
  total: subGoals.length,
32
32
  };
33
33
  }
34
+ export function partitionActiveConstraints(state) {
35
+ const criteriaKeys = new Set(state.successCriteria.map((text) => normalizeText(text)));
36
+ const hardKeys = new Set(state.hardConstraints.map((text) => normalizeText(text)));
37
+ const hard = [];
38
+ const other = [];
39
+ for (const text of state.activeConstraints) {
40
+ const key = normalizeText(text);
41
+ if (criteriaKeys.has(key))
42
+ continue;
43
+ if (hardKeys.has(key))
44
+ hard.push(text);
45
+ else
46
+ other.push(text);
47
+ }
48
+ return { criteria: [...state.successCriteria], hard, other };
49
+ }
50
+ function criterionIcon(status) {
51
+ switch (status) {
52
+ case "verified": return "✅";
53
+ case "claimed": return "🟡";
54
+ case "insufficient": return "🟠";
55
+ case "contradicted": return "⛔";
56
+ case "remaining": return "⬜";
57
+ default: return "❔";
58
+ }
59
+ }
60
+ /** v3.9.4: the ONE criterion row renderer for the normative prompt section.
61
+ * It consumes the same `successCriteria`/`criterionStatuses` pair the state
62
+ * file and submission boundary use, and reports the exact ids it emitted so
63
+ * prompt coverage can prove them. */
64
+ export function formatCriterionRows(statuses, successCriteria) {
65
+ const byText = new Map(statuses.map((status) => [normalizeText(status.text), status]));
66
+ const seen = new Set();
67
+ const lines = [];
68
+ const ids = [];
69
+ for (const text of successCriteria) {
70
+ const status = byText.get(normalizeText(text));
71
+ const id = status?.id ?? deriveCriterionId(text);
72
+ if (seen.has(id))
73
+ continue;
74
+ seen.add(id);
75
+ ids.push(id);
76
+ const related = status && status.related_subgoal_ids.length > 0
77
+ ? ` (related: ${status.related_subgoal_ids.join(", ")})`
78
+ : "";
79
+ lines.push(`- ${criterionIcon(status?.status ?? "unknown")} [\`${id}\`] ${text}${related}`);
80
+ }
81
+ return { lines, ids };
82
+ }
83
+ /** v3.9.4: the ONE active-sub-goal formatter shared by the prompt and the
84
+ * state file. Rows past `cap` lose their descriptions but NEVER their ids:
85
+ * the overflow line lists every remaining `sg-*`. */
86
+ export function formatActiveSubGoals(subGoals, round, cap = getPolicy().evolution.max_active_subgoals) {
87
+ const view = activeSubGoalView([...subGoals], Number.POSITIVE_INFINITY);
88
+ const shown = view.active.slice(0, Math.max(0, cap));
89
+ const hidden = view.active.slice(shown.length);
90
+ const lines = [];
91
+ for (const sg of shown) {
92
+ const statusIcon = sg.status === "in_progress" ? "🔄" :
93
+ sg.status === "blocked" ? "🚫" : "⏳";
94
+ const stale = sg.status === "pending" &&
95
+ round - sg.declared_at_round >= 10 ? " ⚠️ stale" : "";
96
+ const detail = sg.status === "in_progress"
97
+ ? ` (since R${sg.status_changed_at_round})`
98
+ : sg.status === "pending"
99
+ ? ` (since R${sg.declared_at_round})`
100
+ : ` (blocked R${sg.status_changed_at_round})`;
101
+ lines.push(`- ${statusIcon} [\`${sg.id}\`] ${sg.description}${detail}${stale}`);
102
+ }
103
+ if (hidden.length > 0) {
104
+ lines.push(`- also active (ids only): ${hidden.map((sg) => `\`${sg.id}\``).join(", ")}`);
105
+ }
106
+ lines.push(`> ${view.total} total · ${view.activeTotal} active · ` +
107
+ `${view.done} done · ${view.canceled} canceled`);
108
+ return { lines, ids: view.active.map((sg) => sg.id) };
109
+ }
34
110
  // unique() imported from token-utils.ts
35
111
  /** Deterministic JSON serialization used by state and prompt hashes. */
36
112
  export function stableStringify(value) {
@@ -280,10 +356,13 @@ export function renderCanonicalStateMarkdown(state, options) {
280
356
  function flatStateSections(state) {
281
357
  const lines = [];
282
358
  lines.push("## Loop Objective", "", state.objective, "", "## Current Task", "", state.currentTask);
283
- // v2.11: Success Criteria and Constraints render with stable IDs for exact agent matching
284
- addListWithIds(lines, "Success Criteria", state.successCriteria, "cr");
285
- addListWithIds(lines, "Hard Constraints", state.hardConstraints, "c");
286
- addListWithIdentities(lines, "Active Constraints", state.activeConstraints, state.constraintMetadata);
359
+ // v2.11: Success Criteria and Constraints render with stable IDs for exact
360
+ // agent matching. v3.9.4: the three groups are the SAME mutually exclusive
361
+ // partition the prompt uses, so one text never appears with two prefixes.
362
+ const constraintPartition = partitionActiveConstraints(state);
363
+ addListWithIds(lines, "Success Criteria", constraintPartition.criteria, "cr");
364
+ addListWithIdentities(lines, "Hard Constraints", constraintPartition.hard, state.constraintMetadata);
365
+ addListWithIdentities(lines, "Active Constraints", constraintPartition.other, state.constraintMetadata);
287
366
  addList(lines, "Changes Since Last Round", state.changesSinceLastRound);
288
367
  if (state.progress.criteriaMet.length > 0 ||
289
368
  state.progress.criteriaRemaining.length > 0 ||
@@ -373,7 +452,8 @@ function flatStateSections(state) {
373
452
  if (state.verificationFlags.length > 0) {
374
453
  lines.push("## Verification", "");
375
454
  for (const flag of state.verificationFlags) {
376
- lines.push(`- [${flag.severity}] [${flag.check}] ${flag.detail}`);
455
+ lines.push(`- [${flag.severity}] [${flag.check}] \`${flag.field}\` — ${flag.detail}` +
456
+ (flag.ref ? ` [ref: \`${flag.ref}\`]` : ""));
377
457
  }
378
458
  lines.push("");
379
459
  }
@@ -399,31 +479,14 @@ function flatStateSections(state) {
399
479
  }
400
480
  }
401
481
  if (state.subGoals.length > 0) {
402
- // v3.7.1: only ACTIVE items render as rows; done/canceled survive in
403
- // the vault, replay, and the counts line below.
404
- const cap = getPolicy().evolution.max_active_subgoals;
405
- const view = activeSubGoalView(state.subGoals, cap);
482
+ // v3.9.4: the SAME formatter the prompt uses. Rows past the display cap
483
+ // keep their ids in an overflow line, so the state file's active id set
484
+ // can never be narrower than the prompt's.
406
485
  // L8: the heading is emitted whenever sub-goals exist — with every
407
486
  // sub-goal terminal (0 active rows) the counts line must still live
408
487
  // under its own section instead of leaking into the previous one.
409
488
  lines.push("## Sub-Goal Dashboard", "");
410
- if (view.active.length > 0) {
411
- for (const sg of view.active) {
412
- const statusIcon = sg.status === "in_progress" ? "🔄" :
413
- sg.status === "blocked" ? "🚫" : "⏳";
414
- const stale = sg.status === "pending" &&
415
- state.round - sg.declared_at_round >= 10 ? " ⚠️ stale" : "";
416
- const detail = sg.status === "in_progress"
417
- ? ` (since R${sg.status_changed_at_round})`
418
- : sg.status === "pending"
419
- ? ` (since R${sg.declared_at_round})`
420
- : ` (blocked R${sg.status_changed_at_round})`;
421
- lines.push(`- ${statusIcon} [\`${sg.id}\`] ${sg.description}${detail}${stale}`);
422
- }
423
- lines.push("");
424
- }
425
- lines.push(`> ${view.total} total · ${view.activeTotal} active · ` +
426
- `${view.done} done · ${view.canceled} canceled`, "");
489
+ lines.push(...formatActiveSubGoals(state.subGoals, state.round).lines, "");
427
490
  }
428
491
  if (state.externalContext) {
429
492
  lines.push("## External Context", "", state.externalContext, "");
@@ -469,9 +532,10 @@ export function createCanonicalLoopState(request, response, stateFilePath,
469
532
  /** v3.3: Display-only derived data. Optional 4th param — callers that
470
533
  * predate v3.3 stay on 3-arg calls. */
471
534
  derived) {
472
- const last = request.last_round_result;
535
+ const last = derived?.previousRound?.result ?? request.last_round_result;
473
536
  const objective = response.loop_objective;
474
- const verificationFlags = request.verification_flags ?? [];
537
+ const verificationFlags = derived?.previousRound?.verificationFlags ??
538
+ request.verification_flags ?? [];
475
539
  const rolling = response.rolling_summary;
476
540
  const executionReport = last?.execution_report;
477
541
  const changes = unique([
@@ -495,6 +559,24 @@ derived) {
495
559
  // section above. No active contract → the original task text is used,
496
560
  // byte-identical to pre-v3.3 behavior.
497
561
  const roundContract = derived?.roundFacts?.activeContract ?? null;
562
+ // v3.9.4: the rendered criterion/hard sets are ACTIVE sets. The compile
563
+ // response's `criterion_statuses` is the active criterion reference space
564
+ // (loop-compiler filters it); `constraints_active` is the active constraint
565
+ // set. A direct caller that omits `criterion_statuses` gets the objective
566
+ // fallback so library-level state construction still works.
567
+ const activeConstraints = uniqueNormalized(response.constraints_active);
568
+ const activeConstraintKeys = new Set(activeConstraints.map((text) => normalizeText(text)));
569
+ const observedCompile = response.criterion_statuses !== undefined;
570
+ const successCriteria = observedCompile
571
+ ? uniqueNormalized(response.criterion_statuses.map((criterion) => criterion.text))
572
+ : uniqueNormalized(objective?.success_criteria ?? []);
573
+ const criteriaKeys = new Set(successCriteria.map((text) => normalizeText(text)));
574
+ const hardConstraints = uniqueNormalized(objective?.hard_constraints ?? [])
575
+ .filter((text) => {
576
+ const key = normalizeText(text);
577
+ return !criteriaKeys.has(key) &&
578
+ (!observedCompile || activeConstraintKeys.has(key));
579
+ });
498
580
  return {
499
581
  schemaVersion: CANONICAL_STATE_SCHEMA_VERSION,
500
582
  loopId: response.loop_id || request.loop_id,
@@ -506,9 +588,9 @@ derived) {
506
588
  currentTask: roundContract
507
589
  ? formatRoundContract(roundContract, derived?.roundFacts?.itemStatuses ?? null)
508
590
  : request.task,
509
- successCriteria: unique(objective?.success_criteria ?? []),
510
- hardConstraints: unique(objective?.hard_constraints ?? []),
511
- activeConstraints: unique(response.constraints_active),
591
+ successCriteria,
592
+ hardConstraints,
593
+ activeConstraints,
512
594
  retiredConstraints: unique(response.constraints_retired),
513
595
  constraintMetadata: response.constraint_metadata ?? [],
514
596
  changesSinceLastRound: changes,
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-state.js","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canonical-state.js","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  import type { MachineObservation } from "./protocol.js";
8
8
  import type { ObservationDelta } from "./evidence-provider.js";
9
9
  import type { VaultEntry } from "./loop-store.js";
10
- import type { ContractBinding, ExecutionReport, PromptArtifact, RoundContractProposal, RoundOutcome, SelfEvaluation, SubmissionDiagnostic, SubGoalUpdate, VerificationFlag } from "./protocol.js";
10
+ import type { ContractBinding, ExecutionReport, LoopRoundResult, PromptArtifact, RoundContractProposal, RoundOutcome, SelfEvaluation, SubmissionDiagnostic, SubGoalUpdate, VerificationFlag } from "./protocol.js";
11
11
  import type { RoundProcessResult } from "./round-coordinator.js";
12
12
  export type CommittedAction = "continue" | "stop" | "backtrack";
13
13
  /** v3.8.1: the rolled-back branch's facts, decoded from a committed rollback
@@ -91,6 +91,23 @@ export declare function decodeMergedRound(entry: unknown): CommittedRoundView |
91
91
  * entry. Compile-side callers used to inline this chain as a private
92
92
  * `committedView` helper. */
93
93
  export declare function decodeRound(entry: unknown): CommittedRoundView | null;
94
+ /** THE committed-view → compiler-request projection.
95
+ *
96
+ * The compiler once received these fields from the caller's mutable
97
+ * `last_round_result`, which existed on the live path and was absent on
98
+ * resume/unpause/backtrack compiles. This projection lets one committed
99
+ * fact source feed every consumer. Optional declarations are read from the
100
+ * decoded view where it exposes them; `manual_fixes_needed` has no
101
+ * committed source and stays empty. */
102
+ export declare function roundResultFromCommittedRound(view: CommittedRoundView): LoopRoundResult;
103
+ /** The ONE pending-backtrack lookup for a redo round.
104
+ *
105
+ * A backtrack commits at the failed round R, while the redo targets
106
+ * `backtrackTarget + 1`, which is lower than R for a deep restore. Matching
107
+ * the decoded target (with the legacy exact-round fallback when the record
108
+ * carries no target) keeps the recovery boundary AND the Recovery Brief
109
+ * correct for every backtrack depth. */
110
+ export declare function pendingBacktrackRecord(entries: ReadonlyArray<unknown>, redoRound: number): CommittedRoundView | null;
94
111
  /** Lineage sub-object of an entry (`loop_lineage`; v3.7: the legacy
95
112
  * top-level `lineage` alias was removed), or {} when absent. */
96
113
  export declare function entryLineage(entry: unknown): Record<string, unknown>;
@@ -198,10 +215,16 @@ export declare function gitMotionSignal(input: {
198
215
  }): boolean | null;
199
216
  /** Git HEAD as a machine observation exposes it, or null when it is silent. */
200
217
  export declare function observedGitHead(observation: MachineObservation | undefined): string | null;
201
- /** The in-flight round's own motion, from its derived Git delta. A Git
202
- * boundary that cannot be compared yields `null` unless HEAD movement or the
203
- * restore point independently proves motion. */
218
+ /** A round's own motion, from its derived Git deltas. A Git boundary that
219
+ * cannot be compared yields `null` unless HEAD movement or the restore point
220
+ * independently proves motion. Every Git delta participates: one moving
221
+ * provider is motion, one undecidable provider makes the aggregate unknown,
222
+ * and only an all-provider observed no-change is `false`. */
204
223
  export declare function inFlightGitMotion(deltas: ReadonlyArray<ObservationDelta>, restoreTargetHead?: string): boolean | null;
224
+ /** The committed-round form of the same motion rule. Named separately so a
225
+ * reader can see that prompt freshness never passes an in-flight restore
226
+ * head (a committed round has no pending backtrack of its own). */
227
+ export declare function committedRoundGitMotion(view: CommittedRoundView): boolean | null;
205
228
  /** Machine-observed git motion for the most recent contiguous window.
206
229
  * A clean worktree is not the same thing as no progress: commit-per-slice
207
230
  * workflows leave no file delta even though HEAD advanced. Unknown motion in
@@ -1 +1 @@
1
- {"version":3,"file":"committed-round.d.ts","sourceRoot":"","sources":["../src/committed-round.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"committed-round.d.ts","sourceRoot":"","sources":["../src/committed-round.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * place that interprets their transaction envelope or the compiler's merged
5
5
  * lineage representation. Consumers receive one stable, read-only view.
6
6
  */
7
- import { GIT_OBSERVATION_SCHEMA_VERSION, PROMPT_ARTIFACT_SCHEMA_VERSION, } from "./protocol.js";
7
+ import { GIT_OBSERVATION_SCHEMA_VERSION, PROMPT_ARTIFACT_SCHEMA_VERSION, makeLoopRoundResult, } from "./protocol.js";
8
8
  import { ROUND_TRANSACTION_SCHEMA_VERSION, deriveRoundObservationDelta, parseRoundTransactionSnapshot, transactionSchemaVersionOf, } from "./round-transaction.js";
9
9
  import { claimedMetCriteria, claimedRemainingCriteria, effectiveOutcome, parseRoundContract } from "./self-eval.js";
10
10
  import { entryRound, isRecord } from "./token-utils.js";
@@ -242,6 +242,63 @@ export function decodeMergedRound(entry) {
242
242
  export function decodeRound(entry) {
243
243
  return decodeMergedRound(entry) ?? decodeCommittedRound(entry);
244
244
  }
245
+ /** THE committed-view → compiler-request projection.
246
+ *
247
+ * The compiler once received these fields from the caller's mutable
248
+ * `last_round_result`, which existed on the live path and was absent on
249
+ * resume/unpause/backtrack compiles. This projection lets one committed
250
+ * fact source feed every consumer. Optional declarations are read from the
251
+ * decoded view where it exposes them; `manual_fixes_needed` has no
252
+ * committed source and stays empty. */
253
+ export function roundResultFromCommittedRound(view) {
254
+ const evaluation = view.evaluation;
255
+ return makeLoopRoundResult({
256
+ round: view.round,
257
+ success: view.success,
258
+ output_summary: evaluation?.output_summary ?? "",
259
+ constraint_violations: [...(evaluation?.constraint_violations ?? [])],
260
+ manual_fixes_needed: "",
261
+ discovered_constraints: [...(view.discoveredConstraints ?? [])],
262
+ objective_refinement: evaluation?.objective_refinement ?? "",
263
+ emerged_subtasks: [...(view.emergedSubtasks ?? [])],
264
+ subgoal_updates: [...(view.subgoalUpdates ?? [])],
265
+ execution_report: view.executionReport ?? undefined,
266
+ retracted_constraints: [...(view.retractedConstraints ?? [])],
267
+ revised_success_criteria: [...(evaluation?.revised_success_criteria ?? [])],
268
+ wrong_assumptions: [...(evaluation?.wrong_assumptions ?? [])],
269
+ worker_results: [...(evaluation?.worker_results ?? [])],
270
+ compression_checkpoint: evaluation?.compression_checkpoint === true,
271
+ checkpoint_label: evaluation?.checkpoint_label ?? "",
272
+ prompt_requests: evaluation?.prompt_requests,
273
+ outcome: evaluation?.outcome,
274
+ blocker: evaluation?.blocker,
275
+ retroactiveClaims: [...(evaluation?.retroactiveClaims ?? [])],
276
+ no_change_reason: evaluation?.no_change_reason,
277
+ });
278
+ }
279
+ /** The ONE pending-backtrack lookup for a redo round.
280
+ *
281
+ * A backtrack commits at the failed round R, while the redo targets
282
+ * `backtrackTarget + 1`, which is lower than R for a deep restore. Matching
283
+ * the decoded target (with the legacy exact-round fallback when the record
284
+ * carries no target) keeps the recovery boundary AND the Recovery Brief
285
+ * correct for every backtrack depth. */
286
+ export function pendingBacktrackRecord(entries, redoRound) {
287
+ for (let index = entries.length - 1; index >= 0; index--) {
288
+ const view = decodeRound(entries[index]);
289
+ if (!view || view.action !== "backtrack")
290
+ continue;
291
+ const target = view.backtrack?.target;
292
+ if (typeof target === "number") {
293
+ if (target + 1 === redoRound)
294
+ return view;
295
+ continue;
296
+ }
297
+ if (view.round === redoRound)
298
+ return view;
299
+ }
300
+ return null;
301
+ }
245
302
  /** Lineage sub-object of an entry (`loop_lineage`; v3.7: the legacy
246
303
  * top-level `lineage` alias was removed), or {} when absent. */
247
304
  export function entryLineage(entry) {
@@ -536,21 +593,37 @@ function observedGitObservation(observation) {
536
593
  function observedGitIn(observations) {
537
594
  return observations.find((observation) => observation.kind === "git" && observation.status === "observed") ?? null;
538
595
  }
539
- /** The in-flight round's own motion, from its derived Git delta. A Git
540
- * boundary that cannot be compared yields `null` unless HEAD movement or the
541
- * restore point independently proves motion. */
596
+ /** A round's own motion, from its derived Git deltas. A Git boundary that
597
+ * cannot be compared yields `null` unless HEAD movement or the restore point
598
+ * independently proves motion. Every Git delta participates: one moving
599
+ * provider is motion, one undecidable provider makes the aggregate unknown,
600
+ * and only an all-provider observed no-change is `false`. */
542
601
  export function inFlightGitMotion(deltas, restoreTargetHead) {
543
- const git = deltas.find((delta) => delta.kind === "git");
544
- if (!git)
602
+ const gitDeltas = deltas.filter((delta) => delta.kind === "git");
603
+ if (gitDeltas.length === 0)
545
604
  return null;
546
- const before = observedGitObservation(git.before);
547
- const after = observedGitObservation(git.after);
548
- return gitMotionSignal({
549
- changedFiles: git.changedFiles,
550
- headBefore: observedGitHead(before ?? undefined),
551
- headAfter: observedGitHead(after ?? undefined),
552
- restoreTargetHead: restoreTargetHead ?? null,
553
- });
605
+ let sawUnknown = false;
606
+ for (const git of gitDeltas) {
607
+ const before = observedGitObservation(git.before);
608
+ const after = observedGitObservation(git.after);
609
+ const signal = gitMotionSignal({
610
+ changedFiles: git.changedFiles,
611
+ headBefore: observedGitHead(before ?? undefined),
612
+ headAfter: observedGitHead(after ?? undefined),
613
+ restoreTargetHead: restoreTargetHead ?? null,
614
+ });
615
+ if (signal === true)
616
+ return true;
617
+ if (signal === null)
618
+ sawUnknown = true;
619
+ }
620
+ return sawUnknown ? null : false;
621
+ }
622
+ /** The committed-round form of the same motion rule. Named separately so a
623
+ * reader can see that prompt freshness never passes an in-flight restore
624
+ * head (a committed round has no pending backtrack of its own). */
625
+ export function committedRoundGitMotion(view) {
626
+ return inFlightGitMotion(view.observationDelta);
554
627
  }
555
628
  /** Machine-observed git motion for the most recent contiguous window.
556
629
  * A clean worktree is not the same thing as no progress: commit-per-slice