loopforge 3.7.1 → 3.8.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 (144) hide show
  1. package/README.md +84 -130
  2. package/dist/audit.d.ts +53 -1
  3. package/dist/audit.d.ts.map +1 -1
  4. package/dist/audit.js +106 -22
  5. package/dist/audit.js.map +1 -1
  6. package/dist/canonical-state.d.ts +52 -67
  7. package/dist/canonical-state.d.ts.map +1 -1
  8. package/dist/canonical-state.js +134 -147
  9. package/dist/canonical-state.js.map +1 -1
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +103 -4
  12. package/dist/cli.js.map +1 -1
  13. package/dist/cognitive-facts.d.ts +13 -0
  14. package/dist/cognitive-facts.d.ts.map +1 -1
  15. package/dist/cognitive-facts.js +28 -13
  16. package/dist/cognitive-facts.js.map +1 -1
  17. package/dist/committed-round.d.ts +103 -21
  18. package/dist/committed-round.d.ts.map +1 -1
  19. package/dist/committed-round.js +188 -45
  20. package/dist/committed-round.js.map +1 -1
  21. package/dist/contract-items.d.ts +55 -0
  22. package/dist/contract-items.d.ts.map +1 -0
  23. package/dist/contract-items.js +180 -0
  24. package/dist/contract-items.js.map +1 -0
  25. package/dist/enforcement-gate.d.ts +20 -2
  26. package/dist/enforcement-gate.d.ts.map +1 -1
  27. package/dist/enforcement-gate.js +197 -386
  28. package/dist/enforcement-gate.js.map +1 -1
  29. package/dist/engine.d.ts +1 -1
  30. package/dist/engine.d.ts.map +1 -1
  31. package/dist/engine.js +53 -38
  32. package/dist/engine.js.map +1 -1
  33. package/dist/evidence-claims.d.ts +4 -4
  34. package/dist/evidence-claims.d.ts.map +1 -1
  35. package/dist/evidence-claims.js +16 -14
  36. package/dist/evidence-claims.js.map +1 -1
  37. package/dist/evidence-provider.d.ts +85 -89
  38. package/dist/evidence-provider.d.ts.map +1 -1
  39. package/dist/evidence-provider.js +328 -184
  40. package/dist/evidence-provider.js.map +1 -1
  41. package/dist/explain.d.ts +76 -0
  42. package/dist/explain.d.ts.map +1 -0
  43. package/dist/explain.js +127 -0
  44. package/dist/explain.js.map +1 -0
  45. package/dist/generate-schema.js +152 -16
  46. package/dist/generate-schema.js.map +1 -1
  47. package/dist/index.d.ts +6 -6
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +5 -5
  50. package/dist/index.js.map +1 -1
  51. package/dist/loop-compiler.d.ts +40 -53
  52. package/dist/loop-compiler.d.ts.map +1 -1
  53. package/dist/loop-compiler.js +229 -553
  54. package/dist/loop-compiler.js.map +1 -1
  55. package/dist/loop-extras-parser.d.ts +0 -1
  56. package/dist/loop-extras-parser.d.ts.map +1 -1
  57. package/dist/loop-extras-parser.js +0 -4
  58. package/dist/loop-extras-parser.js.map +1 -1
  59. package/dist/loop-projection.d.ts.map +1 -1
  60. package/dist/loop-projection.js +3 -1
  61. package/dist/loop-projection.js.map +1 -1
  62. package/dist/mcp/round-lifecycle.d.ts +30 -21
  63. package/dist/mcp/round-lifecycle.d.ts.map +1 -1
  64. package/dist/mcp/round-lifecycle.js +47 -103
  65. package/dist/mcp/round-lifecycle.js.map +1 -1
  66. package/dist/mcp/server.d.ts.map +1 -1
  67. package/dist/mcp/server.js +51 -7
  68. package/dist/mcp/server.js.map +1 -1
  69. package/dist/mcp/session.d.ts +39 -23
  70. package/dist/mcp/session.d.ts.map +1 -1
  71. package/dist/mcp/session.js +148 -163
  72. package/dist/mcp/session.js.map +1 -1
  73. package/dist/mcp/submission-boundary.d.ts +89 -0
  74. package/dist/mcp/submission-boundary.d.ts.map +1 -0
  75. package/dist/mcp/submission-boundary.js +203 -0
  76. package/dist/mcp/submission-boundary.js.map +1 -0
  77. package/dist/mcp/tools.d.ts.map +1 -1
  78. package/dist/mcp/tools.js +249 -128
  79. package/dist/mcp/tools.js.map +1 -1
  80. package/dist/policy-metrics.js +2 -2
  81. package/dist/policy-metrics.js.map +1 -1
  82. package/dist/policy.d.ts +55 -93
  83. package/dist/policy.d.ts.map +1 -1
  84. package/dist/policy.js +149 -38
  85. package/dist/policy.js.map +1 -1
  86. package/dist/prompt-assembler.d.ts +1 -32
  87. package/dist/prompt-assembler.d.ts.map +1 -1
  88. package/dist/prompt-assembler.js +282 -435
  89. package/dist/prompt-assembler.js.map +1 -1
  90. package/dist/prompt-policy.d.ts +1 -4
  91. package/dist/prompt-policy.d.ts.map +1 -1
  92. package/dist/prompt-policy.js +6 -7
  93. package/dist/prompt-policy.js.map +1 -1
  94. package/dist/protocol.d.ts +365 -142
  95. package/dist/protocol.d.ts.map +1 -1
  96. package/dist/protocol.js +21 -66
  97. package/dist/protocol.js.map +1 -1
  98. package/dist/replay.js +2 -2
  99. package/dist/replay.js.map +1 -1
  100. package/dist/round-contract.d.ts +69 -57
  101. package/dist/round-contract.d.ts.map +1 -1
  102. package/dist/round-contract.js +104 -64
  103. package/dist/round-contract.js.map +1 -1
  104. package/dist/round-coordinator.d.ts +36 -16
  105. package/dist/round-coordinator.d.ts.map +1 -1
  106. package/dist/round-coordinator.js +166 -102
  107. package/dist/round-coordinator.js.map +1 -1
  108. package/dist/round-driver.d.ts +3 -5
  109. package/dist/round-driver.d.ts.map +1 -1
  110. package/dist/round-driver.js +0 -1
  111. package/dist/round-driver.js.map +1 -1
  112. package/dist/round-facts.d.ts +96 -0
  113. package/dist/round-facts.d.ts.map +1 -0
  114. package/dist/round-facts.js +216 -0
  115. package/dist/round-facts.js.map +1 -0
  116. package/dist/round-transaction.d.ts +19 -9
  117. package/dist/round-transaction.d.ts.map +1 -1
  118. package/dist/round-transaction.js +90 -22
  119. package/dist/round-transaction.js.map +1 -1
  120. package/dist/self-eval.d.ts +87 -9
  121. package/dist/self-eval.d.ts.map +1 -1
  122. package/dist/self-eval.js +396 -27
  123. package/dist/self-eval.js.map +1 -1
  124. package/dist/subgoal-state.d.ts +77 -0
  125. package/dist/subgoal-state.d.ts.map +1 -0
  126. package/dist/subgoal-state.js +198 -0
  127. package/dist/subgoal-state.js.map +1 -0
  128. package/dist/token-utils.d.ts +52 -19
  129. package/dist/token-utils.d.ts.map +1 -1
  130. package/dist/token-utils.js +83 -72
  131. package/dist/token-utils.js.map +1 -1
  132. package/dist/verification-gate.d.ts +14 -31
  133. package/dist/verification-gate.d.ts.map +1 -1
  134. package/dist/verification-gate.js +178 -496
  135. package/dist/verification-gate.js.map +1 -1
  136. package/dist/version.d.ts +1 -1
  137. package/dist/version.js +1 -1
  138. package/dist/workspace.d.ts +9 -0
  139. package/dist/workspace.d.ts.map +1 -1
  140. package/dist/workspace.js +17 -0
  141. package/dist/workspace.js.map +1 -1
  142. package/loop_policy.json +59 -83
  143. package/package.json +67 -67
  144. package/skills/perception/SKILL.md +218 -204
@@ -5,7 +5,9 @@
5
5
  */
6
6
  import { createHash } from "node:crypto";
7
7
  import { deriveItemId, STABLE_ID_RE, unique } from "./token-utils.js";
8
+ import { claimedMetCriteria, claimedRemainingCriteria } from "./self-eval.js";
8
9
  import { getPolicy } from "./policy.js";
10
+ import { deriveConfiguredCapability } from "./policy.js";
9
11
  export const CANONICAL_STATE_SCHEMA_VERSION = 1;
10
12
  /** v3.7.1: Presentation view of sub-goals shared by prompts and the state
11
13
  * file (one derivation, no second copy). Only ACTIVE items render as rows
@@ -45,6 +47,16 @@ export function stableStringify(value) {
45
47
  export function hashCanonicalState(state) {
46
48
  return createHash("sha256").update(stableStringify(state)).digest("hex");
47
49
  }
50
+ /** v3.8.1: how many recurring flags the state file lists before folding the
51
+ * rest into a count. The prompt keeps its own, smaller cap (Active Warnings)
52
+ * over a different slice of the same list. */
53
+ const RECURRING_RENDER_CAP = 8;
54
+ /** v3.8.1: the state file's recurring slice — only facts that actually
55
+ * RECURRED (present in >= 2 rounds). The prompt shows the recent tail
56
+ * instead; both read the same `RecurringFlag` list. */
57
+ function recurringOnly(flags) {
58
+ return flags.filter((flag) => flag.rounds.length >= 2);
59
+ }
48
60
  function addList(lines, title, values) {
49
61
  if (values.length === 0)
50
62
  return;
@@ -55,13 +67,16 @@ function addList(lines, title, values) {
55
67
  }
56
68
  /** v2.11: Derive a stable 8-char hex ID from text using SHA-256.
57
69
  * Same hash strategy as computeGoalTextHash in loop-compiler.ts. */
58
- /** v2.11: Render a list with ID prefixes when constraint_id_enabled is true.
59
- * Each item gets a [prefix-XXXXXXXX] tag derived from its text hash.
60
- * Items that already look like IDs (e.g. "cr-a3f2b1c0") are rendered as-is. */
70
+ /** v2.11: Render a list with ID prefixes. Each item gets a
71
+ * [prefix-XXXXXXXX] tag derived from its text hash. Items that already look
72
+ * like IDs (e.g. "cr-a3f2b1c0") are rendered as-is.
73
+ * v3.8.1: IDs are always rendered — the `constraint_id_enabled` escape hatch
74
+ * was deleted (it never switched the MATCHING strategy, only the rendering,
75
+ * so it could only ever produce a prompt whose items the agent could not
76
+ * name). */
61
77
  function addListWithIds(lines, title, values, prefix) {
62
78
  if (values.length === 0)
63
79
  return;
64
- const idEnabled = getPolicy().evolution.constraint_id_enabled;
65
80
  lines.push(`## ${title}`, "");
66
81
  for (const value of values) {
67
82
  const trimmed = value.trim();
@@ -71,12 +86,8 @@ function addListWithIds(lines, title, values, prefix) {
71
86
  if (STABLE_ID_RE.test(trimmed)) {
72
87
  lines.push(`- [\`${trimmed}\`] ${trimmed}`);
73
88
  }
74
- else if (idEnabled) {
75
- const id = prefix + "-" + deriveItemId(trimmed);
76
- lines.push(`- [\`${id}\`] ${trimmed}`);
77
- }
78
89
  else {
79
- lines.push(`- ${trimmed}`);
90
+ lines.push(`- [\`${prefix}-${deriveItemId(trimmed)}\`] ${trimmed}`);
80
91
  }
81
92
  }
82
93
  lines.push("");
@@ -91,7 +102,6 @@ function addListWithIds(lines, title, values, prefix) {
91
102
  function addListWithIdentities(lines, title, values, metadata) {
92
103
  if (values.length === 0)
93
104
  return;
94
- const idEnabled = getPolicy().evolution.constraint_id_enabled;
95
105
  const idByText = new Map(metadata.map((meta) => [meta.text, meta.id]));
96
106
  lines.push(`## ${title}`, "");
97
107
  for (const value of values) {
@@ -101,110 +111,82 @@ function addListWithIdentities(lines, title, values, metadata) {
101
111
  if (STABLE_ID_RE.test(trimmed)) {
102
112
  lines.push(`- [\`${trimmed}\`] ${trimmed}`);
103
113
  }
104
- else if (idEnabled) {
114
+ else {
105
115
  const id = idByText.get(trimmed) ?? `c-${deriveItemId(trimmed)}`;
106
116
  lines.push(`- [\`${id}\`] ${trimmed}`);
107
117
  }
108
- else {
109
- lines.push(`- ${trimmed}`);
110
- }
111
118
  }
112
119
  lines.push("");
113
120
  }
114
- /** Human/Agent-readable materialized view. It is always reproducible from the
115
- * canonical state and is never consulted as transaction truth. */
116
- /** v3.3: Forward-looking "roadmap" view derived from existing state — loop
117
- * position, met/remaining criteria (with IDs), and sub-goal activity.
121
+ /** v3.8.1: the one-line phase position — which phase the loop is in, and how
122
+ * far the next boundary is.
123
+ *
124
+ * This is all that survives of v3.3's "roadmap": of its four lines, three
125
+ * (met/remaining criteria with ids, sub-goal activity) were already rendered
126
+ * in full by the sections that own them. Returns "" when no milestone exists,
127
+ * so the caller renders no section at all — bare position is already in the
128
+ * prompt header.
118
129
  *
119
- * Deliberately label-free: milestone labels/ranges are collapsed content in
120
- * L1 (the diff-collapse invariant) and are rendered in full by Phase
121
- * History everywhere else — the roadmap only reports "N rounds since the
122
- * last milestone boundary", never the boundary's identity. Next action is
123
- * likewise excluded: every level renders its own Next Action section.
124
- * Shared by the state-file and prompt renderers so they cannot silently
125
- * drift apart (module contract above). Returns [] — renders nothing —
126
- * when the state carries none of these. Presentation only; never feeds
127
- * enforcement. */
128
- export function buildRoadmap(state) {
130
+ * Shared by the state-file and prompt renderers so they cannot drift apart
131
+ * (module contract above). Presentation only; never feeds enforcement. */
132
+ export function buildPhaseLine(state) {
129
133
  const lastMilestone = state.milestones.length > 0
130
134
  ? state.milestones[state.milestones.length - 1]
131
135
  : null;
132
- const roundsSinceMilestone = lastMilestone !== null &&
133
- lastMilestone.round_range.end <= state.round
136
+ // No phase boundary yet → no phase to report. Position alone ("round 3/200")
137
+ // is already in the prompt header, so rendering it again would be noise.
138
+ if (!lastMilestone)
139
+ return "";
140
+ const roundsSince = lastMilestone.round_range.end <= state.round
134
141
  ? state.round - lastMilestone.round_range.end
135
142
  : null;
136
- const met = state.criterionStatuses.filter((cs) => cs.status === "met").length;
137
- const total = state.criterionStatuses.length;
138
- const remaining = state.criterionStatuses.filter((cs) => cs.status === "remaining" || cs.status === "unknown");
139
- const inProgress = state.subGoals.filter((sg) => sg.status === "in_progress").length;
140
- const pending = state.subGoals.filter((sg) => sg.status === "pending").length;
141
- // Bare position alone is not forward information — no milestone distance,
142
- // criteria, remaining criteria, or sub-goal activity means nothing to
143
- // look ahead to. Returns [] so empty states render no section at all.
144
- if (roundsSinceMilestone === null && total === 0 &&
145
- state.remainingCriteria.length === 0 && inProgress === 0 && pending === 0) {
146
- return [];
147
- }
148
- const lines = [];
149
- let position = `Position: round ${state.round}/${state.maxRounds}`;
150
- if (roundsSinceMilestone !== null) {
151
- position += ` · ${roundsSinceMilestone} round${roundsSinceMilestone === 1 ? "" : "s"} since the last milestone boundary`;
152
- }
153
- lines.push(`- ${position}`);
154
- if (total > 0) {
155
- lines.push(`- Criteria: ${met}/${total} met · ${remaining.length} remaining`);
156
- }
157
- else if (state.remainingCriteria.length > 0) {
158
- lines.push(`- Criteria: ${state.remainingCriteria.length} remaining`);
159
- }
160
- if (remaining.length > 0) {
161
- const idEnabled = getPolicy().evolution.constraint_id_enabled;
162
- for (const cs of remaining.slice(0, 8)) {
163
- const idTag = idEnabled ? ` [\`${cs.id}\`]` : "";
164
- const icon = cs.status === "remaining" ? "⬜" : "❔";
165
- lines.push(` - ${icon}${idTag} ${cs.text}`);
166
- }
167
- if (remaining.length > 8) {
168
- lines.push(` - ... and ${remaining.length - 8} more`);
169
- }
170
- }
171
- if (inProgress > 0 || pending > 0) {
172
- lines.push(`- Sub-goals: ${inProgress} in progress · ${pending} pending`);
143
+ const parts = [
144
+ `phase "${lastMilestone.label}"`,
145
+ `round ${state.round}/${state.maxRounds}`,
146
+ ];
147
+ if (roundsSince !== null) {
148
+ parts.push(`${roundsSince} round${roundsSince === 1 ? "" : "s"} since the last boundary`);
173
149
  }
174
- return lines;
150
+ return parts.join(" · ");
175
151
  }
176
152
  /** v3.3/v3.4: Render the ACTIVE Round Contract as the Current Task section
177
153
  * body — the single formatting source shared by prompts and the state
178
154
  * file (module contract above). The original objective is NOT here: it
179
155
  * lives in the Objective section. Empty arrays render no line. */
180
- export function formatRoundContract(contract) {
156
+ export function formatRoundContract(contract,
157
+ /** v3.8: the derived item statuses. When given, each item renders with its
158
+ * machine status — the agent sees the verification debt in its own task. */
159
+ statuses) {
181
160
  const lines = [];
182
161
  const heading = contract.work_item?.trim();
183
- lines.push(`**${heading || "Round Contract"}**`);
184
- for (const item of contract.done_when) {
185
- lines.push(`- Done when: ${item}`);
186
- }
187
- for (const item of contract.verification_plan) {
188
- lines.push(`- Verify via: ${item}`);
162
+ lines.push(`**${heading || "Round Contract"}** (${contract.id})`);
163
+ const statusById = new Map((statuses?.items ?? []).map((item) => [item.itemId, item]));
164
+ for (const item of contract.items) {
165
+ const machine = statusById.get(item.id);
166
+ const mark = machine?.status === "verified" ? "✅"
167
+ : machine?.status === "insufficient" ? "🟠"
168
+ : machine?.status === "contradicted" ? "⛔"
169
+ : machine?.status === "pending" ? "⬜"
170
+ : "";
171
+ lines.push(`- ${mark ? `${mark} ` : ""}[\`${item.id}\`] ${item.description}${machine ? ` — ${machine.status}` : ""}`);
172
+ if (item.verify_with.length > 0) {
173
+ lines.push(` - Verify via: ${item.verify_with.join(", ")}`);
174
+ }
175
+ if (item.criterion_refs.length > 0) {
176
+ lines.push(` - Criteria: ${item.criterion_refs.join(", ")}`);
177
+ }
178
+ if (machine?.reasons.length) {
179
+ lines.push(` - Unverified because: ${machine.reasons[0]}`);
180
+ }
189
181
  }
190
- for (const item of contract.scope) {
191
- lines.push(`- Scope: ${item}`);
182
+ for (const entry of contract.scope) {
183
+ lines.push(`- Scope: ${entry}`);
192
184
  }
193
185
  return lines.join("\n");
194
186
  }
195
187
  // ═══════════════════════════════════════════════════════════════════════════
196
188
  // v3.3.1: Shared presentation atoms
197
189
  // ═══════════════════════════════════════════════════════════════════════════
198
- /** The trust bar line ("██████░░░░ 60%"). The L2 Agent Trust section and the
199
- * detailed L1 renderer used to carry private copies of this formula — shared
200
- * here so a formatting change is made once (module contract: renderers must
201
- * not silently drift apart). */
202
- export function trustBarLine(score) {
203
- const barLen = 10;
204
- const filled = Math.round(score * barLen);
205
- const bar = "█".repeat(filled) + "░".repeat(barLen - filled);
206
- return `${bar} ${(score * 100).toFixed(0)}%`;
207
- }
208
190
  /** Milestone heading line ("**🏁 Round 7** (Rounds 3–7, 60%)"). Shared by the
209
191
  * L2 Phase History and the detailed L1 renderer; the L1 copy previously
210
192
  * rendered the range as "R3–R7", a format only this heading used. */
@@ -225,26 +207,35 @@ const STATE_SECTION_TIER = {
225
207
  Blockers: "Current",
226
208
  "Sub-Goal Dashboard": "Current",
227
209
  "External Context": "Current",
210
+ // v3.8.1: the one-line phase position (the only fact the deleted Roadmap
211
+ // section carried that no other section renders). It is orientation for the
212
+ // NEXT round, so it belongs with the working-memory tier — and it must be
213
+ // listed here at all: an unlisted title is not a heading, so `## Phase` was
214
+ // absorbed into whatever section happened to precede it (its body even kept
215
+ // a raw `## ` line) and inherited that section's tier.
216
+ Phase: "Current",
228
217
  // Recent — this round's boundary facts (and, in a recovery window, the
229
218
  // derived Recovery Brief injected at the top of this tier).
230
219
  "Progress Dashboard": "Recent",
231
220
  Verification: "Recent",
232
221
  "Changes Since Last Round": "Recent",
233
222
  Discoveries: "Recent",
234
- "Next Action": "Recent",
235
- "Agent Trust": "Recent",
236
223
  // Historical Summary — the loop's memory skeleton, kept under existing
237
- // milestone/lesson/window caps.
224
+ // milestone/window caps.
238
225
  "Goal → Criteria": "Historical Summary",
239
226
  "Cross-Round Outcomes": "Historical Summary",
240
- "Recurring Issues": "Historical Summary",
227
+ "Recurring Flags": "Historical Summary",
241
228
  "Failed Patterns": "Historical Summary",
242
- "Lessons Learned": "Historical Summary",
243
229
  "Retired Constraints": "Historical Summary",
244
- Roadmap: "Historical Summary",
245
230
  "Phase History": "Historical Summary",
246
231
  };
247
232
  const STATE_TIER_ORDER = ["Current", "Recent", "Historical Summary"];
233
+ /** Human/Agent-readable materialized view. It is always reproducible from the
234
+ * canonical state and is never consulted as transaction truth.
235
+ *
236
+ * v3.8.1: this is where the diagnostics live — the progress dashboard, the
237
+ * criterion list, round stats, the FULL recurring-flag history and the phase
238
+ * history. The prompt carries only what the next round needs. */
248
239
  export function renderCanonicalStateMarkdown(state, options) {
249
240
  const preamble = [
250
241
  `# LoopForge State — ${state.loopId}`,
@@ -320,7 +311,7 @@ function flatStateSections(state) {
320
311
  lines.push(`**Machine (git)**: ${motion}`);
321
312
  }
322
313
  if (state.criterionStatuses.length > 0) {
323
- const metCount = state.criterionStatuses.filter((cs) => cs.status === "met").length;
314
+ const metCount = state.criterionStatuses.filter((cs) => cs.status === "verified" || cs.status === "claimed").length;
324
315
  lines.push(`**Machine (criteria)**: ${metCount}/${state.criterionStatuses.length} met across committed rounds`);
325
316
  }
326
317
  if (state.progress.tests) {
@@ -334,14 +325,16 @@ function flatStateSections(state) {
334
325
  }
335
326
  lines.push("");
336
327
  }
337
- // v3.2: Goal → criteria → evidence vertical view. IDs follow
338
- // constraint_id_enabled like every other ID-rendering path.
328
+ // v3.2: Goal → criteria → evidence vertical view. IDs are always rendered.
339
329
  if (state.criterionStatuses.length > 0) {
340
- const idEnabled = getPolicy().evolution.constraint_id_enabled;
341
330
  lines.push("## Goal → Criteria", "");
342
331
  for (const cs of state.criterionStatuses) {
343
- const icon = cs.status === "met" ? "✅" : cs.status === "remaining" ? "⬜" : "❔";
344
- const idTag = idEnabled ? ` [\`${cs.id}\`]` : "";
332
+ const icon = cs.status === "verified" ? "✅"
333
+ : cs.status === "claimed" ? "🟡"
334
+ : cs.status === "insufficient" ? "🟠"
335
+ : cs.status === "contradicted" ? "⛔"
336
+ : cs.status === "remaining" ? "⬜" : "❔";
337
+ const idTag = ` [\`${cs.id}\`]`;
345
338
  const met = cs.met_at_round !== undefined ? ` (met R${cs.met_at_round})` : "";
346
339
  const related = cs.related_subgoal_ids.length > 0
347
340
  ? ` (related: ${cs.related_subgoal_ids.join(", ")})`
@@ -352,34 +345,35 @@ function flatStateSections(state) {
352
345
  }
353
346
  addListWithIds(lines, "Remaining", state.remainingCriteria, "cr");
354
347
  addList(lines, "Blockers", state.blockers);
348
+ const recurring = recurringOnly(state.recurringFlags);
355
349
  addList(lines, "Discoveries", state.discoveries);
356
350
  addList(lines, "Cross-Round Outcomes", state.rollingOutcomes);
357
- addList(lines, "Recurring Issues", state.recurringIssues);
358
351
  addList(lines, "Failed Patterns", state.failedPatterns);
359
- // v3.2: Lessons learned — repeated violations / verification failures.
360
- if (state.lessons.length > 0) {
361
- lines.push("## Lessons Learned", "");
362
- for (const lesson of state.lessons.slice(0, 8)) {
363
- const icon = lesson.kind === "constraint_violation"
352
+ // v3.8.1: ONE recurring-facts section. "Recurring Issues" (the last 5
353
+ // rounds' raw violations, no threshold) and "Lessons Learned" (the whole
354
+ // history, count >= 2) were two windows over one fact set rendered as two
355
+ // headings. The state file keeps the genuinely recurring set; the prompt
356
+ // shows the recent tail of the same derivation.
357
+ if (recurring.length > 0) {
358
+ lines.push("## Recurring Flags", "");
359
+ for (const flag of recurring.slice(0, RECURRING_RENDER_CAP)) {
360
+ const icon = flag.kind === "constraint_violation"
364
361
  ? "🚫"
365
- : lesson.kind === "verification_error" ? "⚠️" : "ℹ️";
366
- lines.push(`- ${icon} ${lesson.text} — ${lesson.count}× (R${lesson.rounds.join(", R")})`);
362
+ : flag.kind === "verification_error" ? "⚠️" : "ℹ️";
363
+ const subject = flag.ref ? `${flag.subject} [${flag.ref}]` : flag.subject;
364
+ lines.push(`- ${icon} ${subject} — ${flag.count}× (R${flag.rounds.join(", R")})`);
367
365
  }
368
- if (state.lessons.length > 8) {
369
- lines.push(`- ... and ${state.lessons.length - 8} more`);
366
+ if (recurring.length > RECURRING_RENDER_CAP) {
367
+ lines.push(`- ... and ${recurring.length - RECURRING_RENDER_CAP} more`);
370
368
  }
371
369
  lines.push("");
372
370
  }
373
371
  addList(lines, "Retired Constraints", state.retiredConstraints);
374
- if (state.nextAction) {
375
- lines.push("## Next Action", "", state.nextAction, "");
376
- }
377
- // v3.3: Forward-looking roadmap — same buildRoadmap the prompts render.
378
- const roadmap = buildRoadmap(state);
379
- if (roadmap.length > 0) {
380
- lines.push("## Roadmap", "");
381
- for (const line of roadmap)
382
- lines.push(line);
372
+ // v3.8.1: the Roadmap section is gone. Only its non-duplicated fact — the
373
+ // phase position — survives, as the one-line phase line the prompts render.
374
+ const phaseLine = buildPhaseLine(state);
375
+ if (phaseLine) {
376
+ lines.push("## Phase", "", `- ${phaseLine}`);
383
377
  lines.push("");
384
378
  }
385
379
  if (state.verificationFlags.length > 0) {
@@ -438,15 +432,6 @@ function flatStateSections(state) {
438
432
  lines.push(`> ${view.total} total · ${view.activeTotal} active · ` +
439
433
  `${view.done} done · ${view.canceled} canceled`, "");
440
434
  }
441
- if (state.agentTrustScore !== undefined) {
442
- const barLen = 10;
443
- const filled = Math.round(state.agentTrustScore * barLen);
444
- const bar = "█".repeat(filled) + "░".repeat(barLen - filled);
445
- const avg = state.agentTrustTrend.length > 0
446
- ? (state.agentTrustTrend.reduce((a, b) => a + b, 0) / state.agentTrustTrend.length).toFixed(2)
447
- : "—";
448
- lines.push("## Agent Trust", "", `${bar} ${(state.agentTrustScore * 100).toFixed(0)}%`, `Trend (last ${state.agentTrustTrend.length}): ${state.agentTrustTrend.join(" → ")}`, `Average: ${avg}`, "");
449
- }
450
435
  if (state.externalContext) {
451
436
  lines.push("## External Context", "", state.externalContext, "");
452
437
  }
@@ -488,14 +473,14 @@ function flatStateSections(state) {
488
473
  return sections;
489
474
  }
490
475
  export function createCanonicalLoopState(request, response, stateFilePath,
491
- /** v3.3: Display-only derived data (round stats, machine git-motion).
492
- * Optional 4th param — callers that predate v3.3 stay on 3-arg calls. */
476
+ /** v3.3: Display-only derived data. Optional 4th param — callers that
477
+ * predate v3.3 stay on 3-arg calls. */
493
478
  derived) {
494
479
  const last = request.last_round_result;
495
480
  const objective = response.loop_objective;
496
481
  const verificationFlags = request.verification_flags ?? [];
497
482
  const rolling = response.rolling_summary;
498
- const executionEvidence = last?.execution_evidence;
483
+ const executionReport = last?.execution_report;
499
484
  const changes = unique([
500
485
  request.new_since_last_round,
501
486
  last?.output_summary,
@@ -516,7 +501,7 @@ derived) {
516
501
  // to do this round"; the original objective stays in the Objective
517
502
  // section above. No active contract → the original task text is used,
518
503
  // byte-identical to pre-v3.3 behavior.
519
- const roundContract = derived?.roundContract ?? null;
504
+ const roundContract = derived?.roundFacts?.activeContract ?? null;
520
505
  return {
521
506
  schemaVersion: CANONICAL_STATE_SCHEMA_VERSION,
522
507
  loopId: response.loop_id || request.loop_id,
@@ -525,45 +510,47 @@ derived) {
525
510
  goalId: response.goal_id,
526
511
  objective: objective?.objective || request.task,
527
512
  objectiveVersion: objective?.version ?? 1,
528
- currentTask: roundContract ? formatRoundContract(roundContract) : request.task,
513
+ currentTask: roundContract
514
+ ? formatRoundContract(roundContract, derived?.roundFacts?.itemStatuses ?? null)
515
+ : request.task,
529
516
  successCriteria: unique(objective?.success_criteria ?? []),
530
517
  hardConstraints: unique(objective?.hard_constraints ?? []),
531
518
  activeConstraints: unique(response.constraints_active),
532
519
  retiredConstraints: unique(response.constraints_retired),
533
520
  constraintMetadata: response.constraint_metadata ?? [],
534
521
  changesSinceLastRound: changes,
535
- remainingCriteria: unique(last?.execution_evidence?.success_criteria_remaining ?? []),
522
+ remainingCriteria: unique(claimedRemainingCriteria(last?.execution_report)),
536
523
  blockers,
537
524
  verificationFlags,
538
525
  discoveries,
539
- nextAction: last?.next_action?.trim() || response.suggested_next_task,
540
526
  rollingOutcomes: unique(rolling?.key_outcomes ?? []),
541
- recurringIssues: unique(rolling?.recurring_issues ?? []),
542
527
  failedPatterns: unique(rolling?.failed_patterns ?? []),
543
528
  milestones: rolling?.milestones ?? [],
544
529
  subGoals: response.sub_goals ?? [],
545
530
  criterionStatuses: response.criterion_statuses ?? [],
546
- lessons: response.lessons ?? [],
547
- agentTrustScore: response.agent_trust_score,
548
- agentTrustTrend: response.agent_trust_trend ?? [],
549
- suggestedNextTask: response.suggested_next_task,
531
+ recurringFlags: response.recurring_flags ?? [],
550
532
  externalContext: request.external_context?.trim() ?? "",
551
533
  stateFilePath,
552
534
  progress: {
553
- estimate: executionEvidence?.progress_estimate ?? null,
554
- criteriaMet: unique(executionEvidence?.success_criteria_met ?? []),
555
- criteriaRemaining: unique(executionEvidence?.success_criteria_remaining ?? []),
556
- filesChanged: unique(executionEvidence?.files_changed ?? []),
557
- tests: executionEvidence?.test_results ?? null,
535
+ estimate: executionReport?.progress_estimate ?? null,
536
+ criteriaMet: unique(claimedMetCriteria(executionReport)),
537
+ criteriaRemaining: unique(claimedRemainingCriteria(executionReport)),
538
+ filesChanged: unique(executionReport?.files_changed ?? []),
539
+ tests: executionReport?.tests_reported ?? null,
558
540
  },
559
541
  // v3.3: Conditional presence — empty/absent derived data must not add
560
542
  // keys, or every state hash would change for rounds without it.
561
- ...(derived?.roundStats && derived.roundStats.length > 0
562
- ? { roundStats: derived.roundStats }
563
- : {}),
564
543
  ...(derived?.machineStatus ? { machineStatus: derived.machineStatus } : {}),
565
544
  // v3.3: Conditional presence — no contract, no key (hash stability).
566
545
  ...(roundContract ? { roundContract } : {}),
546
+ ...(derived?.roundFacts?.itemStatuses
547
+ ? { contractItemStatuses: derived.roundFacts.itemStatuses }
548
+ : {}),
549
+ ...(derived?.roundFacts?.verifiedSubGoals &&
550
+ derived.roundFacts.verifiedSubGoals.length > 0
551
+ ? { verifiedSubGoals: [...derived.roundFacts.verifiedSubGoals] }
552
+ : {}),
553
+ capability: deriveConfiguredCapability(getPolicy()),
567
554
  };
568
555
  }
569
556
  //# sourceMappingURL=canonical-state.js.map
@@ -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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"}
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,sCAAsC;AAiMtC,wBAAgB,IAAI,CAAC,IAAI,WAAwB,GAAG,IAAI,CAqBvD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,sCAAsC;AAgStC,wBAAgB,IAAI,CAAC,IAAI,WAAwB,GAAG,IAAI,CAyBvD"}