@mmnto/totem 1.79.0 → 1.81.0

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 (43) hide show
  1. package/dist/compiler-schema.d.ts +1635 -256
  2. package/dist/compiler-schema.d.ts.map +1 -1
  3. package/dist/compiler-schema.js +110 -10
  4. package/dist/compiler-schema.js.map +1 -1
  5. package/dist/compiler-schema.test.js +164 -7
  6. package/dist/compiler-schema.test.js.map +1 -1
  7. package/dist/compiler.d.ts +1 -1
  8. package/dist/compiler.d.ts.map +1 -1
  9. package/dist/compiler.js +1 -1
  10. package/dist/compiler.js.map +1 -1
  11. package/dist/config-schema.d.ts +6 -6
  12. package/dist/index.d.ts +7 -3
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +4 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/spine/authored-rule.d.ts +1030 -32
  17. package/dist/spine/authored-rule.d.ts.map +1 -1
  18. package/dist/spine/authored-rule.js +115 -1
  19. package/dist/spine/authored-rule.js.map +1 -1
  20. package/dist/spine/authored-rule.test.js +10 -4
  21. package/dist/spine/authored-rule.test.js.map +1 -1
  22. package/dist/spine/authoring-ledger.d.ts +204 -0
  23. package/dist/spine/authoring-ledger.d.ts.map +1 -0
  24. package/dist/spine/authoring-ledger.js +220 -0
  25. package/dist/spine/authoring-ledger.js.map +1 -0
  26. package/dist/spine/authoring-ledger.test.d.ts +2 -0
  27. package/dist/spine/authoring-ledger.test.d.ts.map +1 -0
  28. package/dist/spine/authoring-ledger.test.js +144 -0
  29. package/dist/spine/authoring-ledger.test.js.map +1 -0
  30. package/dist/spine/compile.test.js +5 -2
  31. package/dist/spine/compile.test.js.map +1 -1
  32. package/dist/spine/corpus-dispositions.d.ts +4 -4
  33. package/dist/spine/preimage-differential.d.ts +112 -0
  34. package/dist/spine/preimage-differential.d.ts.map +1 -0
  35. package/dist/spine/preimage-differential.js +122 -0
  36. package/dist/spine/preimage-differential.js.map +1 -0
  37. package/dist/spine/preimage-differential.test.d.ts +2 -0
  38. package/dist/spine/preimage-differential.test.d.ts.map +1 -0
  39. package/dist/spine/preimage-differential.test.js +223 -0
  40. package/dist/spine/preimage-differential.test.js.map +1 -0
  41. package/dist/spine/windtunnel-lock.d.ts +6 -6
  42. package/dist/store/lance-schema.d.ts +2 -2
  43. package/package.json +1 -1
@@ -0,0 +1,220 @@
1
+ // ─── ADR-112 §8 — the authoring-ledger (the FM(e)/FM(g) attestation artifact) ─
2
+ //
3
+ // Append-only NDJSON at `.totem/spine/authoring-ledger.ndjson`. UNLIKE the
4
+ // best-effort Trap Ledger (`core/ledger.ts` `appendLedgerEvent`, which SWALLOWS
5
+ // write failures behind `onWarn` — correct for observability, WRONG for a
6
+ // falsifying-metric gate), every authoring-ledger write is FAIL-LOUD +
7
+ // READ-BACK-VERIFIED: a row that cannot be written, re-read, or re-parsed THROWS,
8
+ // so no `AuthoredRuleRecord` can reach the compiler without a durable, complete
9
+ // §8 ledger entry (FM(e)). This is the codex/gemini reconciliation: the low-level
10
+ // NDJSON-append MECHANIC is shared house style, but the ERROR POLICY is distinct
11
+ // (throw + verify, never warn-and-swallow).
12
+ //
13
+ // Each entry binds the rule's stable identity (`ruleId` + `author` +
14
+ // `targetDefect` — the latter needed so the upsert index can map a re-read
15
+ // `(author,targetDefect)` back to its persisted id), the declared engine, the
16
+ // leakage-guard ATTESTATIONS (`splitRef` / `authoredAfterSplit` /
17
+ // `heldOutNonInspectionAttestation` — RECORDED in slice B, mechanically VERIFIED
18
+ // in slice C), the INDEPENDENT structural-eligibility verdict (§3), the §7
19
+ // accelerant lineage, and the fixture PRs. `contentHash` makes a re-author
20
+ // idempotent: an unchanged rule re-read appends no duplicate row (codex upsert).
21
+ import { createHash } from 'node:crypto';
22
+ import * as fs from 'node:fs';
23
+ import * as path from 'node:path';
24
+ import { z } from 'zod';
25
+ import { canonicalStringify } from '../compile-manifest.js';
26
+ import { TotemError } from '../errors.js';
27
+ import { AuthoredOriginSchema, DeclaredEngineSchema, StructEligResultSchema, } from './authored-rule.js';
28
+ const nonEmpty = (label) => z.string().refine((s) => s.trim().length > 0, { message: `${label} must be non-empty` });
29
+ /** The spine subdirectory + filename the authoring-ledger lives at, under `.totem/`. */
30
+ export const AUTHORING_LEDGER_DIR = 'spine';
31
+ export const AUTHORING_LEDGER_FILE = 'authoring-ledger.ndjson';
32
+ /**
33
+ * ADR-112 §8 — one authoring-ledger row. `.strict()` so a malformed/extra-field
34
+ * row fails the read loudly (the attestation chain must not silently degrade).
35
+ */
36
+ export const AuthoringLedgerEntrySchema = z
37
+ .object({
38
+ ruleId: nonEmpty('ruleId'),
39
+ author: nonEmpty('author'),
40
+ /** Identity component — `ruleId` is seeded from `sha256(author·targetDefect)`; recorded so the upsert index can resolve a re-read to its persisted id. */
41
+ targetDefect: nonEmpty('targetDefect'),
42
+ authoredAt: nonEmpty('authoredAt'),
43
+ declaredEngine: DeclaredEngineSchema,
44
+ splitRef: nonEmpty('splitRef'),
45
+ authoredAfterSplit: z.literal(true),
46
+ heldOutNonInspectionAttestation: z.literal(true),
47
+ structuralEligibility: StructEligResultSchema,
48
+ origin: AuthoredOriginSchema,
49
+ /**
50
+ * The fixture PRs bound by this rule, split by control role (codex diff-review):
51
+ * positive fixtures the matcher must CATCH (§4 preimage-differential) and negative
52
+ * near-misses it must STAY SILENT on (§6). BOTH are part of the legitimacy surface C
53
+ * must resolve to the train slice, so the ledger — the CI-observable FM(e) attestation
54
+ * artifact — must enumerate BOTH, not positives only (a C that trusted a single list
55
+ * would miss the negatives). `negativeFixturePrs` is `[]` when none were declared.
56
+ */
57
+ positiveFixturePrs: z.array(z.number().int().positive()),
58
+ negativeFixturePrs: z.array(z.number().int().positive()),
59
+ /**
60
+ * Fingerprint of the MATERIAL author input (engine / class / matcher /
61
+ * fixtures / origin) — identity (`author`/`targetDefect`/`ruleId`) AND
62
+ * `authoredAt` EXCLUDED, so a pure timestamp refresh is a no-op (§8: a
63
+ * timestamp drift must not churn the rule) while a matcher/fixture edit
64
+ * appends a new revision row under the SAME `ruleId`. Equal hash on re-read ⇒
65
+ * no append.
66
+ */
67
+ contentHash: nonEmpty('contentHash'),
68
+ })
69
+ .strict();
70
+ /**
71
+ * Recursively LF-normalize every string in a value. Keeps the material-hash
72
+ * determinism SINGLE-HOMED in the hash (Tenet-20, gemini diff-review): the hash
73
+ * is CRLF-invariant regardless of whether the caller pre-normalized, so a future
74
+ * caller of `authoringContentHash` can't silently produce a divergent hash by
75
+ * passing un-normalized CRLF input.
76
+ */
77
+ function lfDeepNormalize(value) {
78
+ if (typeof value === 'string')
79
+ return value.replace(/\r\n/g, '\n');
80
+ if (Array.isArray(value))
81
+ return value.map(lfDeepNormalize);
82
+ if (value !== null && typeof value === 'object') {
83
+ return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, lfDeepNormalize(v)]));
84
+ }
85
+ return value;
86
+ }
87
+ /**
88
+ * Deterministic fingerprint of the MATERIAL author fields (§8 idempotency).
89
+ * SELF-normalizes newlines (CRLF→LF) on every string it hashes, so a Windows-
90
+ * authored and an LF-authored identical rule hash identically REGARDLESS of the
91
+ * caller — the determinism is single-homed in the hash, not the reader (Tenet-20,
92
+ * gemini diff-review). Identity + `authoredAt` are NOT part of the material (see
93
+ * `AuthoringLedgerEntrySchema.contentHash`).
94
+ *
95
+ * The file-level ATTESTATIONS (`splitRef` + the booleans) ARE part of the material
96
+ * (greptile-P1 + CR diff-review): they are what this command records, so an
97
+ * attestation-only change (e.g. the split was re-frozen) must trigger a revision
98
+ * row — otherwise the rule reads `unchanged`, no row is appended, and the ledger
99
+ * keeps the STALE split. `authoredAt` stays excluded (a timestamp refresh is a
100
+ * no-op, §8); every OTHER ledger-attested mutable field is covered here.
101
+ */
102
+ export function authoringContentHash(material) {
103
+ return createHash('sha256')
104
+ .update(canonicalStringify(lfDeepNormalize(material)))
105
+ .digest('hex')
106
+ .slice(0, 32);
107
+ }
108
+ function ledgerPath(totemDir) {
109
+ return path.join(totemDir, AUTHORING_LEDGER_DIR, AUTHORING_LEDGER_FILE);
110
+ }
111
+ /**
112
+ * Read the full authoring-ledger (append order = revision order; the LAST entry
113
+ * per `ruleId` is effective). FAIL-LOUD on a malformed/invalid row — a corrupt
114
+ * attestation chain must never be silently skipped. Returns `[]` if the ledger
115
+ * does not exist yet (first author).
116
+ */
117
+ export function readAuthoringLedger(totemDir) {
118
+ const file = ledgerPath(totemDir);
119
+ let raw;
120
+ try {
121
+ raw = fs.readFileSync(file, 'utf-8');
122
+ }
123
+ catch (err) {
124
+ if (err.code === 'ENOENT')
125
+ return [];
126
+ throw new TotemError('PARSE_FAILED', `authoring-ledger could not be read: ${file}`, 'Check the file exists and is readable; the ledger is the FM(e) attestation chain.', err);
127
+ }
128
+ const lines = raw.split('\n').filter((l) => l.trim().length > 0);
129
+ return lines.map((line, i) => {
130
+ let parsed;
131
+ try {
132
+ parsed = JSON.parse(line);
133
+ }
134
+ catch (err) {
135
+ throw new TotemError('PARSE_FAILED', `authoring-ledger line ${i + 1} is not valid JSON`, 'The ledger is append-only and machine-written; do not hand-edit it.', err);
136
+ }
137
+ const res = AuthoringLedgerEntrySchema.safeParse(parsed);
138
+ if (!res.success) {
139
+ throw new TotemError('GATE_INVALID', `authoring-ledger line ${i + 1} violates the ADR-112 §8 entry schema: ${res.error.message}`, 'A malformed entry breaks the FM(e) attestation chain; restore the ledger from version control.', res.error);
140
+ }
141
+ return res.data;
142
+ });
143
+ }
144
+ /**
145
+ * Append one §8 entry, FAIL-LOUD + READ-BACK-VERIFIED. Validates the entry
146
+ * (throws on an incomplete row — FM(e)), appends canonically, then re-reads the
147
+ * ledger and asserts the last row round-trips byte-identically. Any failure
148
+ * THROWS so the caller never lets the rule reach compile feed on an unpersisted
149
+ * attestation. (Distinct from `appendLedgerEvent`'s warn-and-continue.)
150
+ *
151
+ * Semantics are APPEND-ONLY, not transactional (codex diff-review): a read-back
152
+ * mismatch on a row that did persist correctly is a report/state mismatch, not a
153
+ * corrupt record — the next run reads the (valid) row as effective state. The
154
+ * throw is the honest signal that THIS write could not be confirmed; it is never
155
+ * a path to an invalid record (an actually-wrong row fails the schema re-read). A
156
+ * heavier temp-file/lock/transaction story is deferred unless the cert demands it.
157
+ */
158
+ export function appendAuthoringLedgerEntry(totemDir, entry) {
159
+ const validated = AuthoringLedgerEntrySchema.parse(entry);
160
+ const dir = path.join(totemDir, AUTHORING_LEDGER_DIR);
161
+ const file = ledgerPath(totemDir);
162
+ const line = canonicalStringify(validated);
163
+ fs.mkdirSync(dir, { recursive: true });
164
+ fs.appendFileSync(file, `${line}\n`, 'utf-8');
165
+ // Verify the row is PRESENT, not necessarily LAST (CR diff-review): a concurrent
166
+ // `runRuleAuthor` could append a row between our `appendFileSync` and this read, so a
167
+ // `back[back.length-1]` check would false-throw on a SUCCESSFUL append. `appendFileSync`
168
+ // writes a complete line atomically, so our line is intact in the file even if not last.
169
+ // A raw substring check on the appended `${line}\n` (GCA diff-review) preserves that
170
+ // present-not-last semantics WITHOUT re-parsing + Zod-validating the whole ledger on every
171
+ // append — the read-back was O(N²) across the append loop. The trailing newline pins the
172
+ // match to a complete line (canonical entries are single-line, so it can't match mid-row).
173
+ const rawContent = fs.readFileSync(file, 'utf-8');
174
+ if (!rawContent.includes(`${line}\n`)) {
175
+ throw new TotemError('GATE_INVALID', `authoring-ledger read-back could not confirm the row for ruleId '${entry.ruleId}'`, 'The ledger write did not persist verbatim; the rule is withheld from compile feed (FM(e)).');
176
+ }
177
+ }
178
+ /**
179
+ * The upsert identity key. Uses the SAME injective encoding as mintAuthoredRuleId's seed
180
+ * (JSON.stringify of [author, targetDefect]) so the upsert key and the minted id agree on
181
+ * what "one identity" is. A naive author-space-targetDefect join is NON-injective: a space
182
+ * in either free-text field aliases distinct identities -- ('alice','off by one') and
183
+ * ('alice off','by one') collapse onto one key (the #2259 CR-major class the mint already
184
+ * fixed; strategy-claude flagged the upsert-key inconsistency on the slice-B seam review).
185
+ * JSON.stringify of the pair can never collide across distinct inputs.
186
+ */
187
+ export function identityKey(author, targetDefect) {
188
+ return JSON.stringify([author, targetDefect]);
189
+ }
190
+ /**
191
+ * Fold the ledger into the upsert index: `(author,targetDefect)` → the effective
192
+ * `{ruleId, contentHash}` (append order means the LAST row per identity wins —
193
+ * the latest revision). Also returns every persisted `ruleId` so a genuinely NEW
194
+ * identity mints against the full set. FAIL-LOUD on BOTH uniqueness violations
195
+ * (codex diff-review): one `(author,targetDefect)` mapping to two `ruleId`s, AND
196
+ * one `ruleId` shared by two distinct identities — the reverse would let one
197
+ * authoring run materialize two records sharing an authored identity (both with
198
+ * `authoringLedgerRef = ruleId`), which the fail-loud reader must reject too.
199
+ */
200
+ export function buildAuthoredIdentityIndex(entries) {
201
+ const byIdentity = new Map();
202
+ const allRuleIds = new Set();
203
+ const identityOfRuleId = new Map();
204
+ for (const e of entries) {
205
+ const key = identityKey(e.author, e.targetDefect);
206
+ const existing = byIdentity.get(key);
207
+ if (existing && existing.ruleId !== e.ruleId) {
208
+ throw new TotemError('GATE_INVALID', `authoring-ledger maps identity (${e.author} · ${e.targetDefect}) to two ruleIds ('${existing.ruleId}' and '${e.ruleId}')`, 'A single (author,targetDefect) must own exactly one ruleId; the ledger is corrupt.');
209
+ }
210
+ const priorIdentity = identityOfRuleId.get(e.ruleId);
211
+ if (priorIdentity !== undefined && priorIdentity !== key) {
212
+ throw new TotemError('GATE_INVALID', `authoring-ledger maps ruleId '${e.ruleId}' to two distinct identities`, 'A single ruleId must own exactly one (author,targetDefect); the ledger is corrupt.');
213
+ }
214
+ identityOfRuleId.set(e.ruleId, key);
215
+ byIdentity.set(key, { ruleId: e.ruleId, contentHash: e.contentHash });
216
+ allRuleIds.add(e.ruleId);
217
+ }
218
+ return { byIdentity, allRuleIds };
219
+ }
220
+ //# sourceMappingURL=authoring-ledger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authoring-ledger.js","sourceRoot":"","sources":["../../src/spine/authoring-ledger.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;AAChF,0EAA0E;AAC1E,uEAAuE;AACvE,kFAAkF;AAClF,gFAAgF;AAChF,kFAAkF;AAClF,iFAAiF;AACjF,4CAA4C;AAC5C,EAAE;AACF,qEAAqE;AACrE,2EAA2E;AAC3E,8EAA8E;AAC9E,kEAAkE;AAClE,iFAAiF;AACjF,2EAA2E;AAC3E,2EAA2E;AAC3E,iFAAiF;AAEjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CACjC,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,KAAK,oBAAoB,EAAE,CAAC,CAAC;AAE3F,wFAAwF;AACxF,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAC5C,MAAM,CAAC,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AAE/D;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC1B,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC1B,0JAA0J;IAC1J,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC;IACtC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC;IAClC,cAAc,EAAE,oBAAoB;IACpC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;IAC9B,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACnC,+BAA+B,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IAChD,qBAAqB,EAAE,sBAAsB;IAC7C,MAAM,EAAE,oBAAoB;IAC5B;;;;;;;OAOG;IACH,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IACxD,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IACxD;;;;;;;OAOG;IACH,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC;CACrC,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC5D,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAYpC;IACC,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,kBAAkB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;SACrD,MAAM,CAAC,KAAK,CAAC;SACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,QAAgB;IAClC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QAChE,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,uCAAuC,IAAI,EAAE,EAC7C,mFAAmF,EACnF,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAC3B,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,yBAAyB,CAAC,GAAG,CAAC,oBAAoB,EAClD,qEAAqE,EACrE,GAAG,CACJ,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,0BAA0B,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,yBAAyB,CAAC,GAAG,CAAC,0CAA0C,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAC3F,gGAAgG,EAChG,GAAG,CAAC,KAAK,CACV,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAAgB,EAAE,KAA2B;IACtF,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,iFAAiF;IACjF,sFAAsF;IACtF,yFAAyF;IACzF,yFAAyF;IACzF,qFAAqF;IACrF,2FAA2F;IAC3F,yFAAyF;IACzF,2FAA2F;IAC3F,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,oEAAoE,KAAK,CAAC,MAAM,GAAG,EACnF,4FAA4F,CAC7F,CAAC;IACJ,CAAC;AACH,CAAC;AAaD;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,YAAoB;IAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAwC;IAIjF,MAAM,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YAC7C,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,mCAAmC,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,YAAY,sBAAsB,QAAQ,CAAC,MAAM,UAAU,CAAC,CAAC,MAAM,IAAI,EAC1H,oFAAoF,CACrF,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,GAAG,EAAE,CAAC;YACzD,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,iCAAiC,CAAC,CAAC,MAAM,8BAA8B,EACvE,oFAAoF,CACrF,CAAC;QACJ,CAAC;QACD,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACpC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACtE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=authoring-ledger.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authoring-ledger.test.d.ts","sourceRoot":"","sources":["../../src/spine/authoring-ledger.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,144 @@
1
+ import * as fs from 'node:fs';
2
+ import * as os from 'node:os';
3
+ import * as path from 'node:path';
4
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest';
5
+ import { appendAuthoringLedgerEntry, AUTHORING_LEDGER_DIR, AUTHORING_LEDGER_FILE, authoringContentHash, buildAuthoredIdentityIndex, identityKey, readAuthoringLedger, } from './authoring-ledger.js';
6
+ let dir;
7
+ beforeEach(() => {
8
+ dir = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-authledger-'));
9
+ });
10
+ afterEach(() => {
11
+ fs.rmSync(dir, { recursive: true, force: true });
12
+ });
13
+ const baseEntry = (over = {}) => ({
14
+ ruleId: 'a'.repeat(16),
15
+ author: 'alice',
16
+ targetDefect: 'off by one in pagination',
17
+ authoredAt: '2026-06-27',
18
+ declaredEngine: 'regex',
19
+ splitRef: 'split-2026-06-27',
20
+ authoredAfterSplit: true,
21
+ heldOutNonInspectionAttestation: true,
22
+ structuralEligibility: {
23
+ decidable: true,
24
+ basis: 'whitelist:forbidden-literal-token',
25
+ judgedBy: 'static-whitelist@cert-1',
26
+ },
27
+ origin: { kind: 'from-scratch' },
28
+ positiveFixturePrs: [101],
29
+ negativeFixturePrs: [],
30
+ contentHash: 'deadbeef',
31
+ ...over,
32
+ });
33
+ describe('identityKey (ADR-112 §8 — injective, matches the mint seed; strategy seam finding)', () => {
34
+ it('does NOT alias distinct identities when a free-text field contains a space', () => {
35
+ // The #2259 aliasing class: a `${author} ${targetDefect}` join would collapse these
36
+ // two genuinely-distinct identities onto one key. JSON.stringify keeps them distinct.
37
+ expect(identityKey('alice', 'off by one')).not.toBe(identityKey('alice off', 'by one'));
38
+ expect(identityKey('a', 'b c')).not.toBe(identityKey('a b', 'c'));
39
+ });
40
+ it('is stable for identical inputs', () => {
41
+ expect(identityKey('alice', 'x')).toBe(identityKey('alice', 'x'));
42
+ });
43
+ });
44
+ describe('buildAuthoredIdentityIndex', () => {
45
+ it('does NOT falsely throw when space-aliasing identities own distinct ruleIds', () => {
46
+ const entries = [
47
+ baseEntry({ author: 'alice', targetDefect: 'off by one', ruleId: 'a'.repeat(16) }),
48
+ baseEntry({ author: 'alice off', targetDefect: 'by one', ruleId: 'b'.repeat(16) }),
49
+ ];
50
+ const { byIdentity, allRuleIds } = buildAuthoredIdentityIndex(entries);
51
+ expect(byIdentity.size).toBe(2);
52
+ expect(allRuleIds.size).toBe(2);
53
+ });
54
+ it('keeps the LATEST revision per identity (append order wins)', () => {
55
+ const entries = [baseEntry({ contentHash: 'v1' }), baseEntry({ contentHash: 'v2' })];
56
+ const { byIdentity } = buildAuthoredIdentityIndex(entries);
57
+ expect(byIdentity.get(identityKey('alice', 'off by one in pagination'))?.contentHash).toBe('v2');
58
+ });
59
+ it('fail-loud when one identity maps to two ruleIds (ledger corruption)', () => {
60
+ const entries = [baseEntry({ ruleId: 'a'.repeat(16) }), baseEntry({ ruleId: 'c'.repeat(16) })];
61
+ expect(() => buildAuthoredIdentityIndex(entries)).toThrow(/two ruleIds/i);
62
+ });
63
+ it('fail-loud when one ruleId maps to two distinct identities (the reverse — codex diff-review)', () => {
64
+ const entries = [
65
+ baseEntry({ author: 'alice', targetDefect: 'defect-x', ruleId: 'a'.repeat(16) }),
66
+ baseEntry({ author: 'bob', targetDefect: 'defect-y', ruleId: 'a'.repeat(16) }),
67
+ ];
68
+ expect(() => buildAuthoredIdentityIndex(entries)).toThrow(/two distinct identities/i);
69
+ });
70
+ });
71
+ describe('authoring-ledger fail-loud round-trip (FM(e))', () => {
72
+ it('appends + reads back an entry verbatim', () => {
73
+ appendAuthoringLedgerEntry(dir, baseEntry());
74
+ const back = readAuthoringLedger(dir);
75
+ expect(back).toHaveLength(1);
76
+ expect(back[0]?.ruleId).toBe('a'.repeat(16));
77
+ });
78
+ it('returns [] when the ledger does not exist yet', () => {
79
+ expect(readAuthoringLedger(dir)).toEqual([]);
80
+ });
81
+ it('fail-loud on a malformed ledger line (never silently skipped)', () => {
82
+ const file = path.join(dir, AUTHORING_LEDGER_DIR, AUTHORING_LEDGER_FILE);
83
+ fs.mkdirSync(path.dirname(file), { recursive: true });
84
+ fs.writeFileSync(file, '{not valid json\n', 'utf-8');
85
+ expect(() => readAuthoringLedger(dir)).toThrow();
86
+ });
87
+ it('fail-loud (schema) on an incomplete entry — never reaches disk silently', () => {
88
+ expect(() => appendAuthoringLedgerEntry(dir, { ruleId: 'x' })).toThrow();
89
+ });
90
+ });
91
+ describe('authoringContentHash (§8 revision detection — material-only)', () => {
92
+ const material = {
93
+ declaredEngine: 'regex',
94
+ structuralClass: 'forbidden-literal-token',
95
+ dslSource: 'TODO',
96
+ positiveFixtures: [{ pr: 1 }],
97
+ origin: { kind: 'from-scratch' },
98
+ splitRef: 'split-2026-06-27',
99
+ authoredAfterSplit: true,
100
+ heldOutNonInspectionAttestation: true,
101
+ structuralEligibility: {
102
+ decidable: true,
103
+ basis: 'whitelist:forbidden-literal-token',
104
+ judgedBy: 'static-whitelist@cert-1',
105
+ },
106
+ };
107
+ it('is deterministic for identical material', () => {
108
+ expect(authoringContentHash(material)).toBe(authoringContentHash({ ...material }));
109
+ });
110
+ it('changes when the matcher changes (a revision)', () => {
111
+ expect(authoringContentHash(material)).not.toBe(authoringContentHash({ ...material, dslSource: 'FIXME' }));
112
+ });
113
+ it('changes when an attestation changes (splitRef) — greptile-P1/CR diff-review', () => {
114
+ expect(authoringContentHash(material)).not.toBe(authoringContentHash({ ...material, splitRef: 'split-other' }));
115
+ });
116
+ it('changes when the producer verdict changes (judgedBy) — CR outside-diff', () => {
117
+ expect(authoringContentHash(material)).not.toBe(authoringContentHash({
118
+ ...material,
119
+ structuralEligibility: { ...material.structuralEligibility, judgedBy: 'other-check' },
120
+ }));
121
+ });
122
+ it('is CRLF-invariant — self-normalizes newlines regardless of the caller (Tenet-20 single-home)', () => {
123
+ // a CRLF-authored multi-line matcher and its LF twin must hash identically even if the
124
+ // CALLER never normalized — the determinism lives in the hash, not the reader (gemini).
125
+ expect(authoringContentHash({ ...material, dslSource: 'line-a\r\nline-b' })).toBe(authoringContentHash({ ...material, dslSource: 'line-a\nline-b' }));
126
+ // and a nested fixture string (not just dslSource) is normalized too.
127
+ expect(authoringContentHash({ ...material, positiveFixtures: [{ pr: 1, matchedSpan: 'a\r\nb' }] })).toBe(authoringContentHash({ ...material, positiveFixtures: [{ pr: 1, matchedSpan: 'a\nb' }] }));
128
+ // and a string nested INSIDE the §4 preimageSource union (deeper than matchedSpan) is
129
+ // normalized too — the deep-normalize must reach the new union depth, not just the fixture top.
130
+ const lessonFix = (badExample) => [
131
+ {
132
+ pr: 1,
133
+ preimageSource: {
134
+ kind: 'lesson',
135
+ lessonRef: 'a1b2c3d4e5f60718',
136
+ badExample,
137
+ goodExample: 'ok',
138
+ },
139
+ },
140
+ ];
141
+ expect(authoringContentHash({ ...material, positiveFixtures: lessonFix('bad-a\r\nbad-b') })).toBe(authoringContentHash({ ...material, positiveFixtures: lessonFix('bad-a\nbad-b') }));
142
+ });
143
+ });
144
+ //# sourceMappingURL=authoring-ledger.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authoring-ledger.test.js","sourceRoot":"","sources":["../../src/spine/authoring-ledger.test.ts"],"names":[],"mappings":"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"}
@@ -341,8 +341,11 @@ describe('runCompileStage — ADR-112 authored compile-feed', () => {
341
341
  positiveFixtures: [
342
342
  {
343
343
  pr: 1,
344
- mergeCommitSha: sha(1),
345
- preimageCommitSha: sha(2),
344
+ preimageSource: {
345
+ kind: 'commit',
346
+ preimageCommitSha: sha(2),
347
+ mergeCommitSha: sha(1),
348
+ },
346
349
  filePath: 'src/a.ts',
347
350
  matchedSpan: 'L1',
348
351
  contentHash: 'h1',
@@ -1 +1 @@
1
- {"version":3,"file":"compile.test.js","sourceRoot":"","sources":["../../src/spine/compile.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.test.js","sourceRoot":"","sources":["../../src/spine/compile.test.ts"],"names":[],"mappings":"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"}
@@ -138,8 +138,8 @@ export declare const CorpusDispositionSchema: z.ZodObject<{
138
138
  originalLine?: number | null | undefined;
139
139
  }>, "many">;
140
140
  }, "strip", z.ZodTypeAny, {
141
- pr: number;
142
141
  mergeCommitSha: string;
142
+ pr: number;
143
143
  threads: {
144
144
  path: string;
145
145
  diffHunk: string;
@@ -155,8 +155,8 @@ export declare const CorpusDispositionSchema: z.ZodObject<{
155
155
  originalLine?: number | null | undefined;
156
156
  }[];
157
157
  }, {
158
- pr: number;
159
158
  mergeCommitSha: string;
159
+ pr: number;
160
160
  threads: {
161
161
  path: string;
162
162
  diffHunk: string;
@@ -234,8 +234,8 @@ export declare const CorpusDispositionsSchema: z.ZodArray<z.ZodObject<{
234
234
  originalLine?: number | null | undefined;
235
235
  }>, "many">;
236
236
  }, "strip", z.ZodTypeAny, {
237
- pr: number;
238
237
  mergeCommitSha: string;
238
+ pr: number;
239
239
  threads: {
240
240
  path: string;
241
241
  diffHunk: string;
@@ -251,8 +251,8 @@ export declare const CorpusDispositionsSchema: z.ZodArray<z.ZodObject<{
251
251
  originalLine?: number | null | undefined;
252
252
  }[];
253
253
  }, {
254
- pr: number;
255
254
  mergeCommitSha: string;
255
+ pr: number;
256
256
  threads: {
257
257
  path: string;
258
258
  diffHunk: string;