loopforge 3.9.4 → 4.0.7

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 (283) hide show
  1. package/README.md +236 -112
  2. package/dist/audit.d.ts +73 -15
  3. package/dist/audit.d.ts.map +1 -1
  4. package/dist/audit.js +131 -61
  5. package/dist/audit.js.map +1 -1
  6. package/dist/canonical-state.d.ts +114 -40
  7. package/dist/canonical-state.d.ts.map +1 -1
  8. package/dist/canonical-state.js +276 -182
  9. package/dist/canonical-state.js.map +1 -1
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +41 -12
  12. package/dist/cli.js.map +1 -1
  13. package/dist/cognitive-governance.d.ts +0 -2
  14. package/dist/cognitive-governance.d.ts.map +1 -1
  15. package/dist/cognitive-governance.js +0 -4
  16. package/dist/cognitive-governance.js.map +1 -1
  17. package/dist/committed-round.d.ts +97 -156
  18. package/dist/committed-round.d.ts.map +1 -1
  19. package/dist/committed-round.js +223 -419
  20. package/dist/committed-round.js.map +1 -1
  21. package/dist/constraint-lifecycle.d.ts +73 -0
  22. package/dist/constraint-lifecycle.d.ts.map +1 -0
  23. package/dist/constraint-lifecycle.js +174 -0
  24. package/dist/constraint-lifecycle.js.map +1 -0
  25. package/dist/context-boundary.d.ts +83 -0
  26. package/dist/context-boundary.d.ts.map +1 -0
  27. package/dist/context-boundary.js +101 -0
  28. package/dist/context-boundary.js.map +1 -0
  29. package/dist/contract-items.d.ts +12 -8
  30. package/dist/contract-items.d.ts.map +1 -1
  31. package/dist/contract-items.js +31 -26
  32. package/dist/contract-items.js.map +1 -1
  33. package/dist/contract-requirement.d.ts +47 -0
  34. package/dist/contract-requirement.d.ts.map +1 -0
  35. package/dist/contract-requirement.js +51 -0
  36. package/dist/contract-requirement.js.map +1 -0
  37. package/dist/criterion-status.d.ts +35 -0
  38. package/dist/criterion-status.d.ts.map +1 -0
  39. package/dist/criterion-status.js +89 -0
  40. package/dist/criterion-status.js.map +1 -0
  41. package/dist/enforcement-gate.d.ts +26 -38
  42. package/dist/enforcement-gate.d.ts.map +1 -1
  43. package/dist/enforcement-gate.js +196 -319
  44. package/dist/enforcement-gate.js.map +1 -1
  45. package/dist/engine.d.ts +9 -103
  46. package/dist/engine.d.ts.map +1 -1
  47. package/dist/engine.js +27 -897
  48. package/dist/engine.js.map +1 -1
  49. package/dist/errors.d.ts +41 -0
  50. package/dist/errors.d.ts.map +1 -0
  51. package/dist/errors.js +69 -0
  52. package/dist/errors.js.map +1 -0
  53. package/dist/evidence-claims.d.ts +33 -31
  54. package/dist/evidence-claims.d.ts.map +1 -1
  55. package/dist/evidence-claims.js +58 -72
  56. package/dist/evidence-claims.js.map +1 -1
  57. package/dist/evidence-posture-view.d.ts +19 -0
  58. package/dist/evidence-posture-view.d.ts.map +1 -0
  59. package/dist/evidence-posture-view.js +116 -0
  60. package/dist/evidence-posture-view.js.map +1 -0
  61. package/dist/evidence-posture.d.ts +73 -0
  62. package/dist/evidence-posture.d.ts.map +1 -0
  63. package/dist/evidence-posture.js +281 -0
  64. package/dist/evidence-posture.js.map +1 -0
  65. package/dist/evidence-provider.d.ts +55 -37
  66. package/dist/evidence-provider.d.ts.map +1 -1
  67. package/dist/evidence-provider.js +182 -332
  68. package/dist/evidence-provider.js.map +1 -1
  69. package/dist/explain.d.ts +166 -27
  70. package/dist/explain.d.ts.map +1 -1
  71. package/dist/explain.js +372 -58
  72. package/dist/explain.js.map +1 -1
  73. package/dist/field-accounting.d.ts.map +1 -1
  74. package/dist/field-accounting.js +3 -22
  75. package/dist/field-accounting.js.map +1 -1
  76. package/dist/generate-schema.js +13 -8
  77. package/dist/generate-schema.js.map +1 -1
  78. package/dist/git-boundary.d.ts +128 -0
  79. package/dist/git-boundary.d.ts.map +1 -0
  80. package/dist/git-boundary.js +625 -0
  81. package/dist/git-boundary.js.map +1 -0
  82. package/dist/git-facts.d.ts +22 -0
  83. package/dist/git-facts.d.ts.map +1 -0
  84. package/dist/git-facts.js +29 -0
  85. package/dist/git-facts.js.map +1 -0
  86. package/dist/git-motion.d.ts +37 -0
  87. package/dist/git-motion.d.ts.map +1 -0
  88. package/dist/git-motion.js +59 -0
  89. package/dist/git-motion.js.map +1 -0
  90. package/dist/history.d.ts +44 -0
  91. package/dist/history.d.ts.map +1 -0
  92. package/dist/history.js +77 -0
  93. package/dist/history.js.map +1 -0
  94. package/dist/index.d.ts +19 -9
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +12 -4
  97. package/dist/index.js.map +1 -1
  98. package/dist/init.d.ts +16 -0
  99. package/dist/init.d.ts.map +1 -1
  100. package/dist/init.js +80 -14
  101. package/dist/init.js.map +1 -1
  102. package/dist/loop-compiler.d.ts +39 -23
  103. package/dist/loop-compiler.d.ts.map +1 -1
  104. package/dist/loop-compiler.js +368 -565
  105. package/dist/loop-compiler.js.map +1 -1
  106. package/dist/loop-store.d.ts +6 -5
  107. package/dist/loop-store.d.ts.map +1 -1
  108. package/dist/loop-store.js +153 -35
  109. package/dist/loop-store.js.map +1 -1
  110. package/dist/mcp/round-lifecycle.d.ts +255 -81
  111. package/dist/mcp/round-lifecycle.d.ts.map +1 -1
  112. package/dist/mcp/round-lifecycle.js +1552 -539
  113. package/dist/mcp/round-lifecycle.js.map +1 -1
  114. package/dist/mcp/server.d.ts.map +1 -1
  115. package/dist/mcp/server.js +42 -18
  116. package/dist/mcp/server.js.map +1 -1
  117. package/dist/mcp/session.d.ts +81 -39
  118. package/dist/mcp/session.d.ts.map +1 -1
  119. package/dist/mcp/session.js +956 -282
  120. package/dist/mcp/session.js.map +1 -1
  121. package/dist/mcp/submission-boundary.d.ts +23 -31
  122. package/dist/mcp/submission-boundary.d.ts.map +1 -1
  123. package/dist/mcp/submission-boundary.js +242 -92
  124. package/dist/mcp/submission-boundary.js.map +1 -1
  125. package/dist/mcp/submission-handle.d.ts +66 -0
  126. package/dist/mcp/submission-handle.d.ts.map +1 -0
  127. package/dist/mcp/submission-handle.js +173 -0
  128. package/dist/mcp/submission-handle.js.map +1 -0
  129. package/dist/mcp/tools.d.ts +17 -7
  130. package/dist/mcp/tools.d.ts.map +1 -1
  131. package/dist/mcp/tools.js +707 -244
  132. package/dist/mcp/tools.js.map +1 -1
  133. package/dist/open-question.d.ts +7 -0
  134. package/dist/open-question.d.ts.map +1 -0
  135. package/dist/open-question.js +14 -0
  136. package/dist/open-question.js.map +1 -0
  137. package/dist/policy-metrics.d.ts +31 -21
  138. package/dist/policy-metrics.d.ts.map +1 -1
  139. package/dist/policy-metrics.js +117 -64
  140. package/dist/policy-metrics.js.map +1 -1
  141. package/dist/policy.d.ts +11 -39
  142. package/dist/policy.d.ts.map +1 -1
  143. package/dist/policy.js +12 -12
  144. package/dist/policy.js.map +1 -1
  145. package/dist/progress.d.ts +45 -0
  146. package/dist/progress.d.ts.map +1 -0
  147. package/dist/progress.js +136 -0
  148. package/dist/progress.js.map +1 -0
  149. package/dist/prompt-assembler.d.ts +20 -6
  150. package/dist/prompt-assembler.d.ts.map +1 -1
  151. package/dist/prompt-assembler.js +475 -479
  152. package/dist/prompt-assembler.js.map +1 -1
  153. package/dist/prompt-coverage.d.ts +0 -6
  154. package/dist/prompt-coverage.d.ts.map +1 -1
  155. package/dist/prompt-coverage.js +4 -8
  156. package/dist/prompt-coverage.js.map +1 -1
  157. package/dist/prompt-freshness.d.ts +6 -17
  158. package/dist/prompt-freshness.d.ts.map +1 -1
  159. package/dist/prompt-freshness.js +27 -22
  160. package/dist/prompt-freshness.js.map +1 -1
  161. package/dist/prompt-policy.d.ts +14 -7
  162. package/dist/prompt-policy.d.ts.map +1 -1
  163. package/dist/prompt-policy.js +21 -5
  164. package/dist/prompt-policy.js.map +1 -1
  165. package/dist/protocol.d.ts +843 -424
  166. package/dist/protocol.d.ts.map +1 -1
  167. package/dist/protocol.js +73 -102
  168. package/dist/protocol.js.map +1 -1
  169. package/dist/recovery-guidance.d.ts +13 -0
  170. package/dist/recovery-guidance.d.ts.map +1 -0
  171. package/dist/recovery-guidance.js +15 -0
  172. package/dist/recovery-guidance.js.map +1 -0
  173. package/dist/recovery.d.ts +68 -0
  174. package/dist/recovery.d.ts.map +1 -0
  175. package/dist/recovery.js +234 -0
  176. package/dist/recovery.js.map +1 -0
  177. package/dist/replay.d.ts +42 -8
  178. package/dist/replay.d.ts.map +1 -1
  179. package/dist/replay.js +311 -84
  180. package/dist/replay.js.map +1 -1
  181. package/dist/result-facts.d.ts +45 -0
  182. package/dist/result-facts.d.ts.map +1 -0
  183. package/dist/result-facts.js +86 -0
  184. package/dist/result-facts.js.map +1 -0
  185. package/dist/round-contract.d.ts +38 -8
  186. package/dist/round-contract.d.ts.map +1 -1
  187. package/dist/round-contract.js +71 -31
  188. package/dist/round-contract.js.map +1 -1
  189. package/dist/round-coordinator.d.ts +41 -89
  190. package/dist/round-coordinator.d.ts.map +1 -1
  191. package/dist/round-coordinator.js +250 -267
  192. package/dist/round-coordinator.js.map +1 -1
  193. package/dist/round-driver.d.ts +56 -16
  194. package/dist/round-driver.d.ts.map +1 -1
  195. package/dist/round-driver.js +225 -39
  196. package/dist/round-driver.js.map +1 -1
  197. package/dist/round-facts.d.ts +33 -52
  198. package/dist/round-facts.d.ts.map +1 -1
  199. package/dist/round-facts.js +51 -160
  200. package/dist/round-facts.js.map +1 -1
  201. package/dist/round-guidance.d.ts +56 -0
  202. package/dist/round-guidance.d.ts.map +1 -0
  203. package/dist/round-guidance.js +161 -0
  204. package/dist/round-guidance.js.map +1 -0
  205. package/dist/round-outcome.d.ts +21 -0
  206. package/dist/round-outcome.d.ts.map +1 -0
  207. package/dist/round-outcome.js +31 -0
  208. package/dist/round-outcome.js.map +1 -0
  209. package/dist/round-transaction.d.ts +168 -21
  210. package/dist/round-transaction.d.ts.map +1 -1
  211. package/dist/round-transaction.js +837 -38
  212. package/dist/round-transaction.js.map +1 -1
  213. package/dist/self-eval.d.ts +37 -61
  214. package/dist/self-eval.d.ts.map +1 -1
  215. package/dist/self-eval.js +413 -392
  216. package/dist/self-eval.js.map +1 -1
  217. package/dist/storage.d.ts +16 -0
  218. package/dist/storage.d.ts.map +1 -1
  219. package/dist/storage.js +54 -4
  220. package/dist/storage.js.map +1 -1
  221. package/dist/subgoal-state.d.ts +2 -3
  222. package/dist/subgoal-state.d.ts.map +1 -1
  223. package/dist/subgoal-state.js +2 -3
  224. package/dist/subgoal-state.js.map +1 -1
  225. package/dist/submission-guidance.d.ts +29 -21
  226. package/dist/submission-guidance.d.ts.map +1 -1
  227. package/dist/submission-guidance.js +308 -260
  228. package/dist/submission-guidance.js.map +1 -1
  229. package/dist/submission-receipt.d.ts +16 -8
  230. package/dist/submission-receipt.d.ts.map +1 -1
  231. package/dist/submission-receipt.js +145 -51
  232. package/dist/submission-receipt.js.map +1 -1
  233. package/dist/token-utils.d.ts +28 -7
  234. package/dist/token-utils.d.ts.map +1 -1
  235. package/dist/token-utils.js +27 -11
  236. package/dist/token-utils.js.map +1 -1
  237. package/dist/transaction-identity.d.ts +9 -0
  238. package/dist/transaction-identity.d.ts.map +1 -0
  239. package/dist/transaction-identity.js +69 -0
  240. package/dist/transaction-identity.js.map +1 -0
  241. package/dist/verification-actions.d.ts.map +1 -1
  242. package/dist/verification-actions.js +10 -11
  243. package/dist/verification-actions.js.map +1 -1
  244. package/dist/verification-gate.d.ts +23 -47
  245. package/dist/verification-gate.d.ts.map +1 -1
  246. package/dist/verification-gate.js +202 -423
  247. package/dist/verification-gate.js.map +1 -1
  248. package/dist/version.d.ts +1 -1
  249. package/dist/version.js +1 -1
  250. package/dist/working-memory.d.ts +187 -0
  251. package/dist/working-memory.d.ts.map +1 -0
  252. package/dist/working-memory.js +767 -0
  253. package/dist/working-memory.js.map +1 -0
  254. package/dist/workspace-checkpoint.d.ts +88 -0
  255. package/dist/workspace-checkpoint.d.ts.map +1 -0
  256. package/dist/workspace-checkpoint.js +326 -0
  257. package/dist/workspace-checkpoint.js.map +1 -0
  258. package/dist/workspace-restore.d.ts +68 -0
  259. package/dist/workspace-restore.d.ts.map +1 -0
  260. package/dist/workspace-restore.js +604 -0
  261. package/dist/workspace-restore.js.map +1 -0
  262. package/dist/workspace.d.ts +0 -9
  263. package/dist/workspace.d.ts.map +1 -1
  264. package/dist/workspace.js +0 -17
  265. package/dist/workspace.js.map +1 -1
  266. package/loop_policy.json +4 -18
  267. package/package.json +68 -68
  268. package/skills/forge/SKILL.md +212 -0
  269. package/skills/forge/references/evidence-and-contracts.md +204 -0
  270. package/skills/forge/references/recovery-and-views.md +188 -0
  271. package/dist/cognitive-facts.d.ts +0 -30
  272. package/dist/cognitive-facts.d.ts.map +0 -1
  273. package/dist/cognitive-facts.js +0 -113
  274. package/dist/cognitive-facts.js.map +0 -1
  275. package/dist/loop-extras-parser.d.ts +0 -81
  276. package/dist/loop-extras-parser.d.ts.map +0 -1
  277. package/dist/loop-extras-parser.js +0 -213
  278. package/dist/loop-extras-parser.js.map +0 -1
  279. package/dist/loop-projection.d.ts +0 -6
  280. package/dist/loop-projection.d.ts.map +0 -1
  281. package/dist/loop-projection.js +0 -28
  282. package/dist/loop-projection.js.map +0 -1
  283. package/skills/perception/SKILL.md +0 -389
package/dist/audit.js CHANGED
@@ -1,77 +1,90 @@
1
- /** v2.12: Read-only, replayable end-of-loop audit — the verification view.
1
+ /** v2.12/v4.0.3: Read-only, replayable end-of-loop audit — the verification
2
+ * view.
2
3
  *
3
4
  * Positioning vs loopforge_replay: replay is the factual timeline (what
4
5
  * happened per round); audit is the assessment layer (which claims are
5
6
  * machine-verified, which gates were decided, is the sequence intact).
6
7
  * Everything is derived from committed vault entries — audit never writes.
7
8
  *
8
- * v3.8: the CONTRACT ITEM axis is the primary completion basis. The criterion
9
- * claims stay as an advisory second view — a criterion claim is an agent
10
- * statement whose machine backing is mediated by the contract items, so it
11
- * cannot be the completion signal. Both axes read the same committed-round
12
- * model and the same item reducer the coordinator and explain use.
9
+ * v4.0.3: every round reports the SAME persisted evidence posture. A claim is
10
+ * `verified` only when a machine criterion fact backs its criterion; Agent
11
+ * reports never upgrade themselves. `evidenceVerdict` is the terminal
12
+ * posture, while `verdict` is the verification view over structure + posture.
13
13
  */
14
14
  import { eventSequence, StorageCorruptionError } from "./loop-store.js";
15
15
  import { auditOrder, deriveGate } from "./cognitive-governance.js";
16
- import { rederiveClaimViewWithFlags, listVerifiedClaims } from "./evidence-claims.js";
17
- import { isRecord, entryRound } from "./token-utils.js";
18
- import { legacyTransactionRounds, readOnlyRounds, } from "./committed-round.js";
19
- import { deriveRoundContractView } from "./round-contract.js";
16
+ import { deriveCriterionId, entryRound, isCriterionId, isRecord, } from "./token-utils.js";
17
+ import { legacyTransactionRounds, readOnlyRollbacks, readOnlyRounds, } from "./committed-round.js";
18
+ import { committedRoundFacts, deriveRoundContractView, } from "./round-contract.js";
19
+ import { deriveCriterionFacts } from "./round-facts.js";
20
20
  import { deriveCommittedSubmissionView } from "./submission-receipt.js";
21
21
  import { getPolicy } from "./policy.js";
22
22
  /** Build the audit from committed vault entries. Pure, read-only.
23
23
  * @param store Optional LoopStore — when provided, sequence integrity is
24
24
  * checked and provenanceAvailable becomes true. */
25
25
  export function buildAudit(loopId, entries, store) {
26
- const ordered = auditOrder(entries);
27
- // v3.8: the shared committed-round read model — ordering, dedup and rollback
28
- // exclusion come from it, not from a private rule. v3.8.1: the READ-ONLY
29
- // window, which additionally applies the session frontier while a committed
30
- // rollback directive is in effect, so a backtracked branch is not audited as
31
- // this branch's history.
26
+ // v4.0.3: a multi-loop entry list must not leak another loop's gates,
27
+ // legacy rounds or rollbacks into this audit.
28
+ const loopEntries = entries.filter((entry) => entry.loop_id === loopId ||
29
+ String(entry.task_id ?? "").startsWith(`loop:${loopId}:`));
30
+ const ordered = auditOrder(loopEntries);
32
31
  const views = readOnlyRounds(entries).filter((view) => view.loopId === loopId);
32
+ const rollbacks = readOnlyRollbacks(entries).filter((view) => view.loopId === loopId);
33
33
  const commands = getPolicy().evidence.commands ?? [];
34
34
  // The executed contract per round, through the ONE derivation explain and
35
- // the live coordinator also call. Re-derived per round rather than walked
36
- // incrementally on purpose: a private incremental walker would be a second
37
- // history interpretation, which is exactly what this project forbids.
35
+ // the live coordinator also call.
38
36
  const contractByRound = new Map();
39
37
  for (const view of views) {
40
38
  contractByRound.set(view.round, deriveRoundContractView({
41
39
  rounds: views,
42
40
  round: view.round,
43
- report: view.executionReport,
44
- deltas: view.observationDelta,
45
- outcome: view.outcome,
41
+ current: committedRoundFacts(view),
46
42
  commands,
47
43
  }));
48
44
  }
49
- // ── Rounds: per-round claims + checks from committed snapshots ─────────
50
- //
51
- // v3.8.1: the list is built from the SAME window the contract axis below
52
- // reads. Scanning the raw entries here applied a second, weaker history
53
- // rule — no replacement of a round by a later record of the same logical
54
- // round — so a superseded record was listed twice and could still flip the
55
- // verdict to `contradicted`, while explain (which reads only the window)
56
- // reported a different loop. Rollback exclusion comes from the window too.
45
+ // v4.0.3: machine criterion facts are the ONLY upgrade path for a claim.
46
+ const factsUpTo = (round) => deriveCriterionFacts({
47
+ rounds: views.filter((view) => view.round <= round),
48
+ commands,
49
+ });
50
+ const machineVerifiedIdsUpTo = (round) => new Set(factsUpTo(round)
51
+ .filter((fact) => fact.status === "verified")
52
+ .map((fact) => fact.criterion_id));
57
53
  const rounds = [];
58
54
  for (const view of views) {
59
55
  const round = view.round;
60
- const outcome = view.outcome ?? "unknown";
61
- const claimView = view.evaluation
62
- ? rederiveClaimViewWithFlags(view.evaluation, view.observationDelta, view.verificationFlags)
63
- : null;
56
+ const verifiedIds = machineVerifiedIdsUpTo(round);
57
+ const receipt = deriveCommittedSubmissionView(view, views, rollbacks);
64
58
  const executed = contractByRound.get(round);
65
- const receipt = deriveCommittedSubmissionView(view, views);
66
59
  rounds.push({
67
60
  round,
68
- outcome,
69
- claims: claimView
70
- ? claimView.claims.map((claim) => ({
71
- text: claim.targetId,
72
- status: claim.status === "verified" ? "verified" : "unverified",
73
- }))
74
- : [],
61
+ agentSuccessClaim: view.agentSuccessClaim,
62
+ agentOutcome: view.agentOutcome ?? "unknown",
63
+ blocker: view.evaluation?.blocker ?? null,
64
+ objectiveRefinement: view.objectiveRefinement ?? null,
65
+ contractRedirect: view.contractRedirect
66
+ ? {
67
+ contract_id: view.contractRedirect.contract_id,
68
+ ...(view.contractRedirect.reason !== undefined
69
+ ? { reason: view.contractRedirect.reason }
70
+ : {}),
71
+ }
72
+ : null,
73
+ machineBackedSuccess: view.evidencePosture?.machineBackedSuccess ?? false,
74
+ evidencePosture: view.evidencePosture,
75
+ claims: (view.executionReport?.claims ?? [])
76
+ .filter((claim) => claim.id.startsWith("cr-") && claim.outcome === "met")
77
+ .map((claim) => {
78
+ const id = isCriterionId(claim.id)
79
+ ? claim.id
80
+ : deriveCriterionId(claim.id);
81
+ return {
82
+ text: claim.id,
83
+ status: verifiedIds.has(id)
84
+ ? "verified"
85
+ : "unverified",
86
+ };
87
+ }),
75
88
  checks: view.verificationFlags.map((flag) => ({
76
89
  check: flag.check,
77
90
  severity: flag.severity,
@@ -88,12 +101,37 @@ export function buildAudit(loopId, entries, store) {
88
101
  })),
89
102
  }
90
103
  : null,
104
+ checkpoints: [
105
+ ...(view.beforeCheckpoint ? [view.beforeCheckpoint] : []),
106
+ ...view.checkpoints,
107
+ ].map((ref) => ({
108
+ checkpoint_id: ref.checkpointId,
109
+ role: ref.role,
110
+ round: ref.round,
111
+ content_hash: ref.contentHash,
112
+ })),
113
+ restore: view.restore
114
+ ? {
115
+ directive_transaction_id: view.restore.directiveTransactionId,
116
+ redo_round: view.restore.redoRound,
117
+ verified_at: view.restore.verifiedAt,
118
+ }
119
+ : null,
120
+ restore_verified: view.restore !== null,
91
121
  submission: {
122
+ record: receipt.record,
123
+ entered_history: receipt.entered_history,
92
124
  diagnostics: receipt.diagnostics,
93
125
  saved_not_expanded: receipt.reports
94
126
  .filter((report) => report.handling === "saved_not_expanded")
95
127
  .map((report) => report.path),
96
128
  effects: receipt.effects,
129
+ verification: {
130
+ evidence_posture: receipt.verification.evidence_posture,
131
+ checks: receipt.verification.checks,
132
+ },
133
+ files_reconciliation: receipt.files_reconciliation,
134
+ recovery_checkpoint: receipt.recovery_checkpoint ?? null,
97
135
  prompt: receipt.prompt
98
136
  ? {
99
137
  level: receipt.prompt.level,
@@ -126,11 +164,13 @@ export function buildAudit(loopId, entries, store) {
126
164
  });
127
165
  }
128
166
  const contracts = [...contractsById.values()]
129
- .sort((a, b) => a.first_active_round - b.first_active_round || a.contract_id.localeCompare(b.contract_id));
167
+ .sort((a, b) => a.first_active_round - b.first_active_round ||
168
+ a.contract_id.localeCompare(b.contract_id));
130
169
  const flatItems = contracts.flatMap((contract) => contract.items);
131
170
  const contractsSummary = {
132
171
  contracts,
133
172
  open: contracts.filter((contract) => contract.closure === "open").length,
173
+ superseded: contracts.filter((contract) => contract.closure === "superseded").length,
134
174
  verifiedItems: flatItems.filter((item) => item.status === "verified").length,
135
175
  insufficientItems: flatItems.filter((item) => item.status === "insufficient").length,
136
176
  contradictedItems: flatItems.filter((item) => item.status === "contradicted").length,
@@ -187,39 +227,69 @@ export function buildAudit(loopId, entries, store) {
187
227
  throw error;
188
228
  }
189
229
  }
190
- // ── Criteria accounting (advisory second axis) + verdict ───────────────
191
- //
192
- // v3.8 fix: `declared` used to be a PER-ROUND SUM while `evidenced` was a
193
- // DEDUPLICATED count — a criterion claimed in three rounds read as three
194
- // declared against one evidenced, so `missing` was fiction. Both sides are
195
- // now distinct-id counts over the same history and compare directly.
196
- const verified = listVerifiedClaims(entries, loopId);
197
- const declaredIds = new Set(rounds.flatMap((round) => round.claims.map((claim) => claim.text)));
198
- const declared = declaredIds.size;
199
- const evidenced = verified.length;
200
- // v3.8: the contract item axis decides completion. A contradicted item is a
201
- // machine denial; an open contract is unfinished verification; the claim
202
- // axis only speaks when no contract item exists to speak for it.
230
+ // ── Criteria accounting: objective declares, machine facts evidence ────
231
+ const acceptance = views.find((view) => view.operatorAcceptance !== null)
232
+ ?.operatorAcceptance ?? null;
233
+ const declaredIds = new Set((acceptance?.success_criteria ?? []).map(deriveCriterionId));
234
+ const allVerified = new Set(deriveCriterionFacts({ rounds: views, commands })
235
+ .filter((fact) => fact.status === "verified")
236
+ .map((fact) => fact.criterion_id));
237
+ const evidencedIds = [...declaredIds].filter((id) => allVerified.has(id));
238
+ // v4.0.3: the terminal posture is a fact; the verdict is the verification
239
+ // view over structure + posture, never a copy of the Agent's claim.
240
+ const lastView = views.length > 0 ? views[views.length - 1] : undefined;
241
+ const terminalClosure = lastView
242
+ ? contractByRound.get(lastView.round)?.statuses.closure
243
+ : undefined;
244
+ const terminalPosture = lastView?.evidencePosture?.status ?? null;
203
245
  let verdict = "passed";
204
246
  if (rounds.some((round) => round.checks.some((check) => check.verdict === "failed")) ||
205
- contractsSummary.contradictedItems > 0) {
247
+ contractsSummary.contradictedItems > 0 ||
248
+ terminalPosture === "contradicted") {
206
249
  verdict = "contradicted";
207
250
  }
208
- else if (unresolvedUserGates.length > 0 || contractsSummary.open > 0 ||
209
- (declared > 0 && evidenced === 0)) {
251
+ else if (unresolvedUserGates.length > 0 ||
252
+ contractsSummary.open > 0 ||
253
+ terminalClosure === "superseded" ||
254
+ terminalClosure === "blocked" ||
255
+ terminalPosture === "insufficient" ||
256
+ terminalPosture === "unknown" ||
257
+ (declaredIds.size > 0 && evidencedIds.length === 0)) {
210
258
  verdict = "incomplete";
211
259
  }
212
260
  return {
213
261
  loopId,
214
262
  verdict,
263
+ evidenceVerdict: terminalPosture,
215
264
  rounds,
265
+ rollbacks: rollbacks.map((view) => ({
266
+ round: view.round,
267
+ transactionId: view.transactionId ?? view.roundId,
268
+ origin: view.origin === "agent" ? "agent" : "machine",
269
+ redoRound: view.recovery?.target.redo_round ?? 0,
270
+ targetCheckpointId: view.recovery?.target.checkpoint_id ?? "",
271
+ reason: view.recovery?.reason ?? "",
272
+ observedSkippedFiles: [...(view.recovery?.observed_skipped_files ??
273
+ view.recovery?.skipped_files ?? [])],
274
+ reportedSkippedFiles: [...(view.recovery?.reported_skipped_files ?? [])],
275
+ skippedFiles: [...(view.recovery?.skipped_files ?? [])],
276
+ abandonedRounds: [...(view.recovery?.abandoned_rounds ?? [])],
277
+ failedRounds: [...(view.recovery?.failed_rounds ?? [])],
278
+ preservedDiscoveries: [...(view.recovery?.skipped_discoveries ?? [])],
279
+ approaches: [...(view.recovery?.approaches ?? [])],
280
+ wrongAssumptions: [...(view.recovery?.wrong_assumptions ?? [])],
281
+ })),
216
282
  gates,
217
283
  unresolvedUserGates,
218
284
  contracts: contractsSummary,
219
- criteria: { declared, evidenced, missing: Math.max(0, declared - evidenced) },
285
+ criteria: {
286
+ declared: declaredIds.size,
287
+ evidenced: evidencedIds.length,
288
+ missing: Math.max(0, declaredIds.size - evidencedIds.length),
289
+ },
220
290
  sequenceComplete,
221
291
  provenanceAvailable,
222
- legacyRounds: legacyTransactionRounds(entries).map((item) => item.round),
292
+ legacyRounds: legacyTransactionRounds(loopEntries).map((item) => item.round),
223
293
  };
224
294
  }
225
295
  //# sourceMappingURL=audit.js.map
package/dist/audit.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,29 @@
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, LoopRoundResult, MilestoneSummary, SubGoal, VerificationFlag } from "./protocol.js";
6
+ import type { ConstraintMeta, CriterionStatus, EvidencePosture, RecurringFlag, LoopCompileRequest, LoopCompileResponse, LoopRoundResult, PromptContextMode, PromptContextReason, SubGoal, VerificationFlag } from "./protocol.js";
7
7
  import type { ActiveContractView } from "./round-contract.js";
8
8
  import type { ContractItemStatusView } from "./contract-items.js";
9
- import type { ConfiguredCapability, VerifiedSubGoalFact } from "./protocol.js";
9
+ import type { ConfiguredCapability } from "./protocol.js";
10
10
  import type { RoundFacts } from "./round-facts.js";
11
- export declare const CANONICAL_STATE_SCHEMA_VERSION: 1;
11
+ import type { WorkingMemory } from "./working-memory.js";
12
+ /** v4.0.3: schema 7 adds the previous/retry evidence posture, explicitly split
13
+ * reported progress/issues/warnings, compile context and Working Memory
14
+ * source counts. v4.0.4: schema 8 records the renamed context vocabulary
15
+ * (`fresh_invocation`) in the derived declaration and stateHash. v4.0.5:
16
+ * schema 9 adds the optional `currentUserInstruction` projection; schema 10
17
+ * (v4.0.6) makes the objective the WORKING objective, falls back to it for
18
+ * the Current Task, and removes the Agent-reported test counts. The state
19
+ * file is regenerated every round; an older file is a stale view, not a
20
+ * legacy document to decode. */
21
+ export declare const CANONICAL_STATE_SCHEMA_VERSION: 10;
22
+ /** v4.0.5: the ONE wording for "the host supplied no instruction". Prompt and
23
+ * state file both render it; neither infers an instruction from the old task
24
+ * or transcript. */
25
+ export declare const CURRENT_USER_INSTRUCTION_NOT_PROVIDED = "not provided for this invocation (the Objective and Current Task remain operative).";
26
+ /** v4.0.5: the protected section's fixed authority note. The instruction is
27
+ * invocation input; it never edits the loop's objective or acceptance. */
28
+ export declare const CURRENT_USER_INSTRUCTION_AUTHORITY: string;
12
29
  /** v3.7.1: Presentation view of sub-goals shared by prompts and the state
13
30
  * file (one derivation, no second copy). Only ACTIVE items render as rows
14
31
  * — pending/in_progress/blocked — ordered blocked → in_progress → pending
@@ -52,15 +69,14 @@ export declare function formatActiveSubGoals(subGoals: ReadonlyArray<SubGoal>, r
52
69
  lines: string[];
53
70
  ids: string[];
54
71
  };
55
- /** v3.3: Machine git-motion cross-check over the last committed rounds.
56
- * Display-only companion to the R4/R5 exculpatory signal. Optional:
57
- * absent when no committed rounds carry git snapshots — the object, when
58
- * present, always carries definite values (v3.6: the null arms were dead —
59
- * the derive path returns undefined wholesale instead of null fields). */
72
+ /** v3.3/v3.9.7: provider-neutral machine progress over the last committed
73
+ * rounds. Display-only companion to the stall signal. Optional: absent for
74
+ * an incomplete window or when no progress provider participated. */
60
75
  export interface MachineStatus {
61
76
  windowRounds: number;
62
- gitMotion: boolean;
63
- motionRounds: number;
77
+ machineProgress: "changed" | "unchanged" | "unknown" | "not_applicable";
78
+ changedRounds: number;
79
+ providers: string[];
64
80
  }
65
81
  export interface CanonicalLoopState {
66
82
  schemaVersion: typeof CANONICAL_STATE_SCHEMA_VERSION;
@@ -69,23 +85,40 @@ export interface CanonicalLoopState {
69
85
  maxRounds: number;
70
86
  goalId: string;
71
87
  objective: string;
72
- objectiveVersion: number;
73
88
  currentTask: string;
89
+ /** v4.0.5: the trimmed host-provided user instruction for this invocation.
90
+ * Conditional presence keeps state hashes unchanged when none was given.
91
+ * It is invocation input, never loop identity: it does not rewrite the
92
+ * objective, criteria, constraints, contract or goal. */
93
+ currentUserInstruction?: string;
74
94
  successCriteria: string[];
75
95
  hardConstraints: string[];
76
96
  activeConstraints: string[];
77
97
  retiredConstraints: string[];
78
98
  /** v2.3: Per-constraint lifecycle metadata. */
79
99
  constraintMetadata: ConstraintMeta[];
80
- changesSinceLastRound: string[];
81
- remainingCriteria: string[];
82
- blockers: string[];
100
+ /** v4.0.2: the bounded cognitive extension of this state. Present only when
101
+ * committed history produced content; it is a derived projection, never a
102
+ * second factual source and never persisted as its own store. */
103
+ workingMemory?: WorkingMemory;
104
+ /** Current retry's enforcement notice. A protected protocol fact for the
105
+ * next prompt, not a committed history field. */
106
+ rejectionNotice: string | null;
107
+ /** Committed rollback recovery brief, present only in a recovery window.
108
+ * Derived from the pending directive; prompt and state file share it. */
109
+ recoveryBrief?: string[];
110
+ /** v4.0.3: the previous committed evaluation's evidence posture. The prompt
111
+ * and state file render it as Machine Evidence; it is never re-derived. */
112
+ previousEvidencePosture?: EvidencePosture;
113
+ /** v4.0.3: a fresh retry's transient posture (not committed). Rendered only
114
+ * as "rejected attempt (not committed)". */
115
+ retryEvidencePosture?: EvidencePosture;
116
+ /** v4.0.3: Agent-reported blockers (`blocker` + constraint violations).
117
+ * Explicitly distinct from compiler warnings. */
118
+ reportedIssues: string[];
119
+ /** v4.0.3: compiler warnings — machine/compile facts, not Agent reports. */
120
+ warnings: string[];
83
121
  verificationFlags: VerificationFlag[];
84
- discoveries: string[];
85
- rollingOutcomes: string[];
86
- failedPatterns: string[];
87
- /** v2.1: Phase-boundary milestone summaries that survive window eviction. */
88
- milestones: MilestoneSummary[];
89
122
  /** v2.2: Structured sub-goals with compiler-managed lifecycle. */
90
123
  subGoals: SubGoal[];
91
124
  /** v3.2: Derived per-criterion status (goal → criteria → evidence view). */
@@ -94,17 +127,27 @@ export interface CanonicalLoopState {
94
127
  * replaces the former Lessons list and the rolling summary's
95
128
  * "recurring_issues" window; renderers filter it. */
96
129
  recurringFlags: RecurringFlag[];
97
- externalContext: string;
98
130
  stateFilePath: string;
99
- progress: {
131
+ /** v4.0.3: Agent-reported progress. Every field is a claim; the Machine
132
+ * Evidence section is the machine side. */
133
+ reportedProgress: {
100
134
  criteriaMet: string[];
101
135
  criteriaRemaining: string[];
136
+ /** The same claim set, named for the state-file "remaining" section. */
137
+ agentReportedRemaining: string[];
102
138
  filesChanged: string[];
103
- tests: {
104
- passed: number;
105
- failed: number;
106
- skipped: number;
107
- } | null;
139
+ };
140
+ /** v4.0.3: stable `oq-` ids the last committed round reported as resolved.
141
+ * Agent report — display only; Working Memory removes the matching open
142
+ * questions. Bounded at render time. */
143
+ resolvedOpenQuestionIds?: string[];
144
+ /** v4.0.3: the compile/transport context. Attempt is derived context, not a
145
+ * committed fact. */
146
+ context?: {
147
+ round: number;
148
+ attempt: number;
149
+ mode: PromptContextMode;
150
+ reason: PromptContextReason;
108
151
  };
109
152
  /** v3.3: Machine git-motion cross-check for the progress dashboard.
110
153
  * Conditional presence: absent when no committed git snapshots exist. */
@@ -119,17 +162,26 @@ export interface CanonicalLoopState {
119
162
  * statement about what the agent claimed under it. Conditional presence:
120
163
  * absent without an active contract. */
121
164
  contractItemStatuses?: ContractItemStatusView;
122
- /** v3.8: Sub-goals a verified contract item backs. DERIVED, never
123
- * persisted — the machine's separate statement about a `done` sub-goal. */
124
- verifiedSubGoals?: VerifiedSubGoalFact[];
125
165
  /** v3.8: The static verification capability (policy-derived). Unconditional:
126
166
  * it is part of the round's verification context, so every state hash
127
167
  * changes once, deliberately. */
128
168
  capability: ConfiguredCapability;
129
169
  }
170
+ /**
171
+ * The active contract is the Current Task only when the runtime has a
172
+ * machine-verifiable contract capability and this invocation did not provide
173
+ * an explicit instruction. The contract remains a separately rendered
174
+ * committed fact in every other case; this helper keeps prompt and state-file
175
+ * projections on the same rule as state construction.
176
+ */
177
+ export declare function contractDrivesCurrentTask(state: Pick<CanonicalLoopState, "roundContract" | "currentUserInstruction" | "capability">): boolean;
130
178
  /** Deterministic JSON serialization used by state and prompt hashes. */
131
179
  export declare function stableStringify(value: unknown): string;
132
180
  export declare function hashCanonicalState(state: CanonicalLoopState): string;
181
+ /** v3.9.7: the ONE constraint provenance label shared by the state file and
182
+ * the prompt. A discovered/preserved constraint is an Agent report, never a
183
+ * machine-verified fact. */
184
+ export declare function constraintProvenanceLabel(meta: ConstraintMeta | undefined): string;
133
185
  /** v3.8.1: the one-line phase position — which phase the loop is in, and how
134
186
  * far the next boundary is.
135
187
  *
@@ -141,19 +193,23 @@ export declare function hashCanonicalState(state: CanonicalLoopState): string;
141
193
  *
142
194
  * Shared by the state-file and prompt renderers so they cannot drift apart
143
195
  * (module contract above). Presentation only; never feeds enforcement. */
144
- export declare function buildPhaseLine(state: CanonicalLoopState): string;
145
- /** v3.3/v3.4: Render the ACTIVE Round Contract as the Current Task section
146
- * body — the single formatting source shared by prompts and the state
147
- * file (module contract above). The original objective is NOT here: it
148
- * lives in the Objective section. Empty arrays render no line. */
149
- export declare function formatRoundContract(contract: ActiveContractView,
196
+ /** v3.3/v3.4: Render the ACTIVE Round Contract body — the single formatting
197
+ * source shared by prompts and the state file (module contract above). When
198
+ * contract verification is available and no explicit invocation instruction
199
+ * overrides it, this body is the Current Task; otherwise it is rendered as
200
+ * the separate Active Round Contract section. The original objective lives
201
+ * in the Objective section. Empty arrays render no line. */
202
+ export interface FormattedRoundContract {
203
+ text: string;
204
+ /** IDs this rendering actually emitted (contract id + item ids). */
205
+ emittedIds: string[];
206
+ }
207
+ export declare function formatRoundContractWithIds(contract: ActiveContractView,
150
208
  /** v3.8: the derived item statuses. When given, each item renders with its
151
209
  * machine status — the agent sees the verification debt in its own task. */
152
- statuses?: ContractItemStatusView | null): string;
153
- /** Milestone heading line ("**🏁 Round 7** (Rounds 3–7)"). Shared by the
154
- * L2 Phase History and the detailed L1 renderer; the L1 copy previously
155
- * rendered the range as "R3–R7", a format only this heading used. */
156
- export declare function milestoneHeading(milestone: MilestoneSummary): string;
210
+ statuses?: ContractItemStatusView | null): FormattedRoundContract;
211
+ /** Backwards-compatible text-only view used by the state file. */
212
+ export declare function formatRoundContract(contract: ActiveContractView, statuses?: ContractItemStatusView | null): string;
157
213
  /** Options that vary per render: the retry attempt (single version of the
158
214
  * file across attempts is impossible — the attempt IS part of the derived
159
215
  * view) and the recovery-window Recovery Brief lines (W5, present only
@@ -161,6 +217,8 @@ export declare function milestoneHeading(milestone: MilestoneSummary): string;
161
217
  export interface StateFileRenderOptions {
162
218
  attempt?: number;
163
219
  recoveryBrief?: string[];
220
+ /** v4.0.3: compile context when the caller built the state without one. */
221
+ context?: CanonicalLoopState["context"];
164
222
  }
165
223
  /** Human/Agent-readable materialized view. It is always reproducible from the
166
224
  * canonical state and is never consulted as transaction truth.
@@ -189,6 +247,22 @@ derived?: {
189
247
  previousRound?: {
190
248
  result: LoopRoundResult | null;
191
249
  verificationFlags: VerificationFlag[];
250
+ /** v3.9.5: true only when `result` came from a committed round view.
251
+ * Agent reports (wrong assumptions, blockers) enter the prompt/state
252
+ * projection only under this flag; a library fallback is in-flight. */
253
+ committed?: boolean;
254
+ /** v4.0.3: the committed view's persisted posture. */
255
+ view?: {
256
+ evidencePosture?: EvidencePosture | null;
257
+ } | null;
192
258
  };
259
+ /** v3.9.7: committed recovery brief, derived from the pending rollback
260
+ * directive. Conditional — absent outside a recovery window. */
261
+ recoveryBrief?: string[];
262
+ /** v4.0.2: the compiler's ONE bounded Working Memory derivation. This
263
+ * module never re-reads the Vault or re-interprets history. */
264
+ workingMemory?: WorkingMemory;
265
+ /** v4.0.3: the compile context boundary (derived by the compiler). */
266
+ context?: CanonicalLoopState["context"];
193
267
  }): CanonicalLoopState;
194
268
  //# sourceMappingURL=canonical-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-state.d.ts","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,OAAO,EACP,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAWvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,eAAO,MAAM,8BAA8B,EAAG,CAAU,CAAC;AAEzD;;;;;mCAKmC;AACnC,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,OAAO,EAAE,EACnB,GAAG,EAAE,MAAM,GACV;IACD,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf,CAiBA;AAED;;;;yCAIyC;AACzC,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC1C,GAAG,yBAAyB,CAY5B;AAaD;;;sCAGsC;AACtC,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,aAAa,CAAC,eAAe,CAAC,EACxC,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,GACrC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,EAAE,CAAA;CAAE,CAqBpC;AAED;;sDAEsD;AACtD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,EAChC,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAkD,GACtD;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,EAAE,CAAA;CAAE,CA4BpC;AAED;;;;2EAI2E;AAC3E,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,OAAO,8BAA8B,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,+CAA+C;IAC/C,kBAAkB,EAAE,cAAc,EAAE,CAAC;IACrC,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,6EAA6E;IAC7E,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,kEAAkE;IAClE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,4EAA4E;IAC5E,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC;;0DAEsD;IACtD,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,KAAK,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;KACnE,CAAC;IACF;8EAC0E;IAC1E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;mDAI+C;IAC/C,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;6CAEyC;IACzC,oBAAoB,CAAC,EAAE,sBAAsB,CAAC;IAC9C;gFAC4E;IAC5E,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC;;sCAEkC;IAClC,UAAU,EAAE,oBAAoB,CAAC;CAClC;AAID,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAYtD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAEpE;AAiFD;;;;;;;;;;2EAU2E;AAC3E,wBAAgB,cAAc,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAoBhE;AAED;;;mEAGmE;AACnE,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,kBAAkB;AAC5B;6EAC6E;AAC7E,QAAQ,CAAC,EAAE,sBAAsB,GAAG,IAAI,GACvC,MAAM,CA6BR;AAMD;;sEAEsE;AACtE,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM,CAKpE;AAgDD;;;2EAG2E;AAC3E,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;;kEAKkE;AAClE,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,kBAAkB,EACzB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,MAAM,CAkCR;AAiMD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,mBAAmB,EAC7B,aAAa,EAAE,MAAM;AACrB;wCACwC;AACxC,OAAO,CAAC,EAAE;IACR,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;;8DAM0D;IAC1D,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;oBAGgB;IAChB,aAAa,CAAC,EAAE;QACd,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;QAC/B,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;KACvC,CAAC;CACH,GACA,kBAAkB,CA4GpB"}
1
+ {"version":3,"file":"canonical-state.d.ts","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}