@mmnto/totem 1.76.1 → 1.78.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.
@@ -0,0 +1,432 @@
1
+ /**
2
+ * Tests for the strategy-doctrine lock-content parity detector (mmnto-ai/totem#2107,
3
+ * strategy#754). Covers the §6 normalizer's byte-for-byte parity with the publisher,
4
+ * the lock-schema boundary parser, the two-layer (self-consistency + vs-canonical)
5
+ * honest-absent taxonomy via injected seams, plus a real-lock integration check + the
6
+ * current-local-drift exhibit when a `../totem-strategy` sibling resolves.
7
+ */
8
+ import * as crypto from 'node:crypto';
9
+ import * as fs from 'node:fs';
10
+ import * as path from 'node:path';
11
+ import { fileURLToPath } from 'node:url';
12
+ import { describe, expect, it } from 'vitest';
13
+ import { detectLockContentContract, hashLockArtifact, normalizeLockArtifact, parseStrategyDoctrineLock, } from './parity-detect.js';
14
+ import { resolveStrategyRoot } from './strategy-resolver.js';
15
+ // ─── Fixtures ───────────────────────────────────────────
16
+ const CONTRACT_ID = 'strategy-doctrine-lock-content';
17
+ function makeContract(overrides = {}) {
18
+ return {
19
+ id: CONTRACT_ID,
20
+ dimension: 'doctrine-distribution',
21
+ canonicalSource: 'mmnto-ai/totem-strategy',
22
+ detectionMethod: 'sha256(normalize(content)) == lock content-hash',
23
+ expectedValueOrDerivation: 'every artifact recompute equals its lock content-hash',
24
+ tractability: 'mechanical',
25
+ trackingIssue: 'mmnto-ai/totem#2107',
26
+ package: '@mmnto/strategy-doctrine',
27
+ manifestation: 'content-hash',
28
+ consumers: ['totem', 'totem-status', 'liquid-city'],
29
+ ...overrides,
30
+ };
31
+ }
32
+ const PKG_DIR = path.resolve('lock-content-test-pkg');
33
+ const STRATEGY_DIR = path.resolve('lock-content-test-strategy');
34
+ const LOCK_PATH = path.join(PKG_DIR, 'strategy-doctrine.lock');
35
+ /** Build a content-hash lock JSON string from artifact specs. */
36
+ function buildLockJson(artifacts) {
37
+ return JSON.stringify({
38
+ 'schema-version': 1,
39
+ package: '@mmnto/strategy-doctrine',
40
+ version: '0.1.13',
41
+ published: '2026-06-25T22:18:55.324Z',
42
+ artifacts: artifacts.map((a) => ({
43
+ path: a.path,
44
+ 'canonical-source': a.canonicalSource,
45
+ 'content-hash': a.contentHash,
46
+ 'last-published-sha': a.sha ?? '74816d869922d847680dd956896c47388e9833d6',
47
+ })),
48
+ }, null, 2);
49
+ }
50
+ /** A context whose every fs/git seam is injected (no disk, no git). */
51
+ function seamCtx(files, opts = {}) {
52
+ const dirSet = new Set(opts.dirs ?? [PKG_DIR]);
53
+ return {
54
+ repoId: opts.repoId ?? 'totem',
55
+ packageDir: PKG_DIR,
56
+ gitRoot: path.resolve('lock-content-test-root'),
57
+ readFile: (p) => (p in files ? files[p] : undefined),
58
+ dirExists: (p) => dirSet.has(p),
59
+ // Default identity realpath — no symlink redirection, so the lexical guard governs
60
+ // (the production default fs.realpathSync would honest-absent on these synthetic paths).
61
+ realpath: opts.realpath ?? ((p) => p),
62
+ resolveStrategyRootFn: () => opts.sibling ?? { resolved: false, reason: 'no sibling (test default)' },
63
+ gitObjectExists: () => opts.gitObjectExists ?? false,
64
+ };
65
+ }
66
+ // ─── normalizeLockArtifact + hashLockArtifact (golden) ──
67
+ describe('normalizeLockArtifact — §6 byte-for-byte parity', () => {
68
+ it('golden: trailing tabs/spaces + MULTIPLE trailing blanks + CRLF → fixed hash', () => {
69
+ const raw = 'line one \t\r\nline two\t \r\n\r\n\r\n';
70
+ const normalized = normalizeLockArtifact(raw);
71
+ expect(normalized).toBe('line one\nline two\n');
72
+ // Hard-pasted precomputed digest — drift in the normalizer flips this.
73
+ expect(hashLockArtifact(normalized)).toBe('sha256:e9024f1a07d29d52ad3aa5e1a18e94db1f3a9fd32b89e39d47c472cd99071e13');
74
+ });
75
+ it('pops ALL trailing blank lines and adds EXACTLY one terminal LF', () => {
76
+ expect(normalizeLockArtifact('a\n\n\n\n')).toBe('a\n');
77
+ expect(normalizeLockArtifact('a')).toBe('a\n');
78
+ expect(normalizeLockArtifact('a\n')).toBe('a\n');
79
+ // An all-blank input collapses to a single terminal LF (never empty).
80
+ expect(normalizeLockArtifact('\r\n \n\t\n')).toBe('\n');
81
+ });
82
+ it('preserves LEADING blank lines (DISTINCT from normalizeManagedBlock)', () => {
83
+ expect(normalizeLockArtifact('\n\nbody\n')).toBe('\n\nbody\n');
84
+ });
85
+ it('CRLF determinism: LF / CRLF / mixed CR produce identical digests', () => {
86
+ const lf = 'alpha\nbeta\ngamma\n';
87
+ const crlf = 'alpha\r\nbeta\r\ngamma\r\n';
88
+ const mixed = 'alpha\r\nbeta\ngamma\r';
89
+ const h = (s) => hashLockArtifact(normalizeLockArtifact(s));
90
+ expect(h(crlf)).toBe(h(lf));
91
+ expect(h(mixed)).toBe(h(lf));
92
+ });
93
+ it('is idempotent — re-normalizing an already-normalized string is a no-op', () => {
94
+ const once = normalizeLockArtifact('x \ny\t\n\n');
95
+ expect(normalizeLockArtifact(once)).toBe(once);
96
+ });
97
+ it('matches Node crypto directly (no hidden encoding)', () => {
98
+ const norm = normalizeLockArtifact('hello\n');
99
+ const expected = 'sha256:' + crypto.createHash('sha256').update(norm, 'utf-8').digest('hex');
100
+ expect(hashLockArtifact(norm)).toBe(expected);
101
+ });
102
+ });
103
+ // ─── parseStrategyDoctrineLock ──────────────────────────
104
+ describe('parseStrategyDoctrineLock', () => {
105
+ it('parses a valid lock → ok with camelCase artifacts', () => {
106
+ const json = buildLockJson([
107
+ {
108
+ path: 'a.yaml',
109
+ canonicalSource: 'mmnto-ai/totem-strategy:doctrine/a.yaml',
110
+ contentHash: 'sha256:aa',
111
+ },
112
+ ]);
113
+ const r = parseStrategyDoctrineLock(json);
114
+ expect(r.status).toBe('ok');
115
+ if (r.status !== 'ok')
116
+ return;
117
+ const lock = r.lock;
118
+ expect(lock.artifacts[0]).toEqual({
119
+ path: 'a.yaml',
120
+ canonicalSource: 'mmnto-ai/totem-strategy:doctrine/a.yaml',
121
+ contentHash: 'sha256:aa',
122
+ lastPublishedSha: '74816d869922d847680dd956896c47388e9833d6',
123
+ });
124
+ });
125
+ it('invalid JSON → unparseable (never throws)', () => {
126
+ const r = parseStrategyDoctrineLock('{not json');
127
+ expect(r.status).toBe('unparseable');
128
+ });
129
+ it('non-1 schema-version → unsupported-schema', () => {
130
+ const r = parseStrategyDoctrineLock(JSON.stringify({ 'schema-version': 2, artifacts: [] }));
131
+ expect(r).toEqual({ status: 'unsupported-schema', schemaVersion: 2 });
132
+ });
133
+ it('missing numeric schema-version → unparseable', () => {
134
+ const r = parseStrategyDoctrineLock(JSON.stringify({ package: 'x', artifacts: [] }));
135
+ expect(r.status).toBe('unparseable');
136
+ });
137
+ it('malformed artifact row → unparseable (Zod boundary)', () => {
138
+ const r = parseStrategyDoctrineLock(JSON.stringify({
139
+ 'schema-version': 1,
140
+ package: 'x',
141
+ version: '1',
142
+ published: 't',
143
+ artifacts: [{ path: 'a' }],
144
+ }));
145
+ expect(r.status).toBe('unparseable');
146
+ });
147
+ });
148
+ // ─── detectLockContentContract — applicability + top-level honest-absent ──
149
+ describe('detectLockContentContract — applicability / top-level', () => {
150
+ it('not a consumer → single skip line', () => {
151
+ const lines = detectLockContentContract(makeContract(), seamCtx({}, { repoId: 'other-repo' }));
152
+ expect(lines).toHaveLength(1);
153
+ expect(lines[0].verdict.status).toBe('skip');
154
+ expect(lines[0].verdict.message).toContain('cohort permits absence');
155
+ });
156
+ it('repo id unresolvable under a scoped contract → skip', () => {
157
+ const ctx = seamCtx({});
158
+ delete ctx.repoId;
159
+ const lines = detectLockContentContract(makeContract(), ctx);
160
+ expect(lines[0].verdict.status).toBe('skip');
161
+ expect(lines[0].verdict.message).toContain('repo id unresolvable');
162
+ });
163
+ it('package not installed → skip (the currency row senses the pin)', () => {
164
+ const lines = detectLockContentContract(makeContract(), seamCtx({}, { dirs: [] }));
165
+ expect(lines).toHaveLength(1);
166
+ expect(lines[0].verdict.status).toBe('skip');
167
+ expect(lines[0].verdict.message).toContain('not installed');
168
+ });
169
+ it('package present but lock absent → warn (structurally incomplete)', () => {
170
+ const lines = detectLockContentContract(makeContract(), seamCtx({}));
171
+ expect(lines).toHaveLength(1);
172
+ expect(lines[0].verdict.status).toBe('warn');
173
+ expect(lines[0].verdict.message).toContain('structurally incomplete');
174
+ });
175
+ it('lock unparseable → warn', () => {
176
+ const lines = detectLockContentContract(makeContract(), seamCtx({ [LOCK_PATH]: '{broken' }));
177
+ expect(lines[0].verdict.status).toBe('warn');
178
+ expect(lines[0].verdict.message).toContain('unparseable');
179
+ });
180
+ it('a path-escaping lockFileName seam is refused (CR outside-diff #2256)', () => {
181
+ const lines = detectLockContentContract(makeContract(), {
182
+ ...seamCtx({}),
183
+ lockFileName: '../../evil.lock',
184
+ });
185
+ expect(lines).toHaveLength(1);
186
+ expect(lines[0].verdict.status).toBe('warn');
187
+ expect(lines[0].verdict.message).toContain('escapes the package dir');
188
+ });
189
+ it('lock unsupported-schema → warn', () => {
190
+ const lines = detectLockContentContract(makeContract(), seamCtx({ [LOCK_PATH]: JSON.stringify({ 'schema-version': 99, artifacts: [] }) }));
191
+ expect(lines[0].verdict.status).toBe('warn');
192
+ expect(lines[0].verdict.message).toContain('schema-version 99');
193
+ });
194
+ it('lock with empty artifacts[] → warn', () => {
195
+ const lines = detectLockContentContract(makeContract(), seamCtx({ [LOCK_PATH]: buildLockJson([]) }));
196
+ expect(lines[0].verdict.status).toBe('warn');
197
+ expect(lines[0].verdict.message).toContain('no artifacts');
198
+ });
199
+ });
200
+ // ─── detectLockContentContract — the two layers ──
201
+ describe('detectLockContentContract — self-consistency + vs-canonical layers', () => {
202
+ const artifactPath = 'parity-manifest.yaml';
203
+ const canonicalSource = 'mmnto-ai/totem-strategy:doctrine/parity-manifest.yaml';
204
+ const goodContent = 'reviews:\n profile: assertive\n';
205
+ const goodHash = hashLockArtifact(normalizeLockArtifact(goodContent));
206
+ const artFile = path.resolve(PKG_DIR, artifactPath);
207
+ it('self pass + vs-canonical skip when no sibling resolves', () => {
208
+ const files = {
209
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
210
+ [artFile]: goodContent,
211
+ };
212
+ const lines = detectLockContentContract(makeContract(), seamCtx(files));
213
+ expect(lines).toHaveLength(2);
214
+ const self = lines.find((l) => l.lineName.includes('· self'));
215
+ const vs = lines.find((l) => l.lineName.includes('· vs-canonical'));
216
+ expect(self.verdict.status).toBe('pass');
217
+ expect(self.verdict.message).toContain('intact');
218
+ expect(self.verdict.message).toContain('last-published-sha');
219
+ expect(vs.verdict.status).toBe('skip');
220
+ expect(vs.verdict.message).toContain('never a fetch');
221
+ });
222
+ it('self warn on hash mismatch (integrity drift)', () => {
223
+ const files = {
224
+ [LOCK_PATH]: buildLockJson([
225
+ { path: artifactPath, canonicalSource, contentHash: 'sha256:deadbeef' },
226
+ ]),
227
+ [artFile]: goodContent,
228
+ };
229
+ const self = detectLockContentContract(makeContract(), seamCtx(files)).find((l) => l.lineName.includes('· self'));
230
+ expect(self.verdict.status).toBe('warn');
231
+ expect(self.verdict.message).toContain('integrity drift');
232
+ });
233
+ it('self warn when the packaged artifact file is absent', () => {
234
+ const files = {
235
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
236
+ };
237
+ const self = detectLockContentContract(makeContract(), seamCtx(files)).find((l) => l.lineName.includes('· self'));
238
+ expect(self.verdict.status).toBe('warn');
239
+ expect(self.verdict.message).toContain('absent');
240
+ });
241
+ it('vs-canonical pass when the sibling canonical matches', () => {
242
+ const canonFile = path.resolve(STRATEGY_DIR, 'doctrine/parity-manifest.yaml');
243
+ const files = {
244
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
245
+ [artFile]: goodContent,
246
+ [canonFile]: goodContent,
247
+ };
248
+ const vs = detectLockContentContract(makeContract(), seamCtx(files, {
249
+ sibling: { resolved: true, path: STRATEGY_DIR, source: 'sibling' },
250
+ gitObjectExists: true,
251
+ })).find((l) => l.lineName.includes('· vs-canonical'));
252
+ expect(vs.verdict.status).toBe('pass');
253
+ expect(vs.verdict.message).toContain('strategy-canonical');
254
+ expect(vs.verdict.message).toContain('resolvable in sibling');
255
+ });
256
+ it('vs-canonical warn (currency drift) when the sibling canonical advanced', () => {
257
+ const canonFile = path.resolve(STRATEGY_DIR, 'doctrine/parity-manifest.yaml');
258
+ const files = {
259
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
260
+ [artFile]: goodContent,
261
+ [canonFile]: 'reviews:\n profile: chill\n', // advanced canonical
262
+ };
263
+ const vs = detectLockContentContract(makeContract(), seamCtx(files, { sibling: { resolved: true, path: STRATEGY_DIR, source: 'sibling' } })).find((l) => l.lineName.includes('· vs-canonical'));
264
+ expect(vs.verdict.status).toBe('warn');
265
+ expect(vs.verdict.message).toContain('currency drift');
266
+ });
267
+ it('vs-canonical warn when the canonical-source path is absent in the sibling', () => {
268
+ const files = {
269
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
270
+ [artFile]: goodContent,
271
+ };
272
+ const vs = detectLockContentContract(makeContract(), seamCtx(files, { sibling: { resolved: true, path: STRATEGY_DIR, source: 'sibling' } })).find((l) => l.lineName.includes('· vs-canonical'));
273
+ expect(vs.verdict.status).toBe('warn');
274
+ expect(vs.verdict.message).toContain('absent under the resolved sibling');
275
+ });
276
+ it('vs-canonical skip when canonical-source is not a totem-strategy ref', () => {
277
+ const files = {
278
+ [LOCK_PATH]: buildLockJson([
279
+ { path: artifactPath, canonicalSource: 'some-other/repo:x.yaml', contentHash: goodHash },
280
+ ]),
281
+ [artFile]: goodContent,
282
+ };
283
+ const vs = detectLockContentContract(makeContract(), seamCtx(files, { sibling: { resolved: true, path: STRATEGY_DIR, source: 'sibling' } })).find((l) => l.lineName.includes('· vs-canonical'));
284
+ expect(vs.verdict.status).toBe('skip');
285
+ expect(vs.verdict.message).toContain('unprovable this slice');
286
+ });
287
+ it('emits one line per artifact × per layer; never fail/throw', () => {
288
+ const a2 = 'freeze.json';
289
+ const c2 = 'mmnto-ai/totem-strategy:.totem/freeze.json';
290
+ const body2 = '{"frozen":[]}\n';
291
+ const files = {
292
+ [LOCK_PATH]: buildLockJson([
293
+ { path: artifactPath, canonicalSource, contentHash: goodHash },
294
+ {
295
+ path: a2,
296
+ canonicalSource: c2,
297
+ contentHash: hashLockArtifact(normalizeLockArtifact(body2)),
298
+ },
299
+ ]),
300
+ [artFile]: goodContent,
301
+ [path.resolve(PKG_DIR, a2)]: body2,
302
+ };
303
+ const lines = detectLockContentContract(makeContract(), seamCtx(files));
304
+ expect(lines).toHaveLength(4); // 2 artifacts × 2 layers
305
+ expect(lines.every((l) => l.verdict.status !== 'fail')).toBe(true);
306
+ });
307
+ it('a path-escaping artifact entry is refused, never read out of dir', () => {
308
+ const files = {
309
+ [LOCK_PATH]: buildLockJson([
310
+ { path: '../../escape.txt', canonicalSource, contentHash: goodHash },
311
+ ]),
312
+ };
313
+ const self = detectLockContentContract(makeContract(), seamCtx(files)).find((l) => l.lineName.includes('· self'));
314
+ expect(self.verdict.status).toBe('warn');
315
+ expect(self.verdict.message).toContain('escapes the package dir');
316
+ });
317
+ it('refuses an artifact that symlinks OUTSIDE the package real-root (CR/greptile #2256)', () => {
318
+ const outside = path.resolve('outside-the-pkg/evil.yaml');
319
+ const files = {
320
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
321
+ [artFile]: goodContent, // lexically inside the pkg dir…
322
+ };
323
+ const self = detectLockContentContract(makeContract(),
324
+ // …but its REAL target resolves outside the package real-root.
325
+ seamCtx(files, { realpath: (p) => (p === artFile ? outside : p) })).find((l) => l.lineName.includes('· self'));
326
+ expect(self.verdict.status).toBe('warn');
327
+ expect(self.verdict.message).toContain('escapes the package dir');
328
+ });
329
+ it('allows an inner symlink that stays within the package real-root (pnpm-style)', () => {
330
+ // pnpm symlinks node_modules/@mmnto/x → .pnpm/…; realpath of BOTH base and target
331
+ // resolves into the same real root, so a legitimate install stays contained.
332
+ const realBase = path.resolve('.pnpm-real/pkg');
333
+ const realArt = path.join(realBase, artifactPath);
334
+ const realLock = path.join(realBase, 'strategy-doctrine.lock');
335
+ const files = {
336
+ [LOCK_PATH]: buildLockJson([{ path: artifactPath, canonicalSource, contentHash: goodHash }]),
337
+ [artFile]: goodContent,
338
+ };
339
+ // A real pnpm install resolves the package dir AND every file within it (lock +
340
+ // artifacts) into the same .pnpm real root — so the containment guard holds for both.
341
+ const self = detectLockContentContract(makeContract(), seamCtx(files, {
342
+ realpath: (p) => p === PKG_DIR ? realBase : p === artFile ? realArt : p === LOCK_PATH ? realLock : p,
343
+ })).find((l) => l.lineName.includes('· self'));
344
+ expect(self.verdict.status).toBe('pass');
345
+ });
346
+ it('warns when the lock declares a DIFFERENT package than it was loaded from (CR #2256)', () => {
347
+ const wrongPkgLock = JSON.stringify({
348
+ 'schema-version': 1,
349
+ package: '@mmnto/some-other-doctrine',
350
+ version: '0.1.13',
351
+ published: '2026-06-25T22:18:55.324Z',
352
+ artifacts: [
353
+ {
354
+ path: artifactPath,
355
+ 'canonical-source': canonicalSource,
356
+ 'content-hash': goodHash,
357
+ 'last-published-sha': '74816d869922d847680dd956896c47388e9833d6',
358
+ },
359
+ ],
360
+ });
361
+ const lines = detectLockContentContract(makeContract(), seamCtx({ [LOCK_PATH]: wrongPkgLock }));
362
+ expect(lines).toHaveLength(1); // short-circuits before per-artifact lines
363
+ expect(lines[0].verdict.status).toBe('warn');
364
+ expect(lines[0].verdict.message).toContain('structurally inconsistent');
365
+ });
366
+ });
367
+ // ─── Real-lock integration + current-local-drift exhibit ──
368
+ /** Walk up from this test file to locate the installed @mmnto/strategy-doctrine dir. */
369
+ function findStrategyDoctrineDir() {
370
+ let dir = path.dirname(fileURLToPath(import.meta.url));
371
+ for (let i = 0; i < 8; i++) {
372
+ const candidate = path.join(dir, 'node_modules', '@mmnto', 'strategy-doctrine');
373
+ if (fs.existsSync(path.join(candidate, 'strategy-doctrine.lock')))
374
+ return candidate;
375
+ const parent = path.dirname(dir);
376
+ if (parent === dir)
377
+ break;
378
+ dir = parent;
379
+ }
380
+ return undefined;
381
+ }
382
+ describe('detectLockContentContract — real installed lock (integration)', () => {
383
+ const pkgDir = findStrategyDoctrineDir();
384
+ it.skipIf(pkgDir === undefined)('every packaged artifact self-consistently matches its own lock content-hash', () => {
385
+ const lockText = fs.readFileSync(path.join(pkgDir, 'strategy-doctrine.lock'), 'utf-8');
386
+ const parsed = parseStrategyDoctrineLock(lockText);
387
+ expect(parsed.status).toBe('ok');
388
+ if (parsed.status !== 'ok')
389
+ return;
390
+ for (const artifact of parsed.lock.artifacts) {
391
+ const raw = fs.readFileSync(path.join(pkgDir, artifact.path), 'utf-8');
392
+ expect(hashLockArtifact(normalizeLockArtifact(raw))).toBe(artifact.contentHash);
393
+ }
394
+ });
395
+ it.skipIf(pkgDir === undefined)('self layer all-pass against the real package', () => {
396
+ const lines = detectLockContentContract(makeContract(), {
397
+ repoId: 'totem',
398
+ packageDir: pkgDir,
399
+ gitRoot: path.resolve('.'),
400
+ // Keep this hermetic: no sibling resolution, no git shell-out.
401
+ resolveStrategyRootFn: () => ({ resolved: false, reason: 'pinned off for integration test' }),
402
+ gitObjectExists: () => false,
403
+ });
404
+ const selfLines = lines.filter((l) => l.lineName.includes('· self'));
405
+ expect(selfLines.length).toBeGreaterThanOrEqual(3);
406
+ expect(selfLines.every((l) => l.verdict.status === 'pass')).toBe(true);
407
+ });
408
+ it.skipIf(pkgDir === undefined)('current-local-drift exhibit: when a ../totem-strategy sibling resolves, self all-pass + vs-canonical ran (no skip, pass|warn only)', () => {
409
+ // The repo root is the parent of node_modules/@mmnto/strategy-doctrine.
410
+ const repoRoot = path.resolve(pkgDir, '..', '..', '..');
411
+ const sibling = resolveStrategyRoot(repoRoot, { gitRoot: repoRoot });
412
+ if (!sibling.resolved)
413
+ return; // no local sibling in this environment → exhibit n/a
414
+ const lines = detectLockContentContract(makeContract(), {
415
+ repoId: 'totem',
416
+ packageDir: pkgDir,
417
+ gitRoot: repoRoot,
418
+ gitObjectExists: () => true, // pin the provenance note so a git shell-out can't flake the assert
419
+ });
420
+ const selfLines = lines.filter((l) => l.lineName.includes('· self'));
421
+ const vsLines = lines.filter((l) => l.lineName.includes('· vs-canonical'));
422
+ // Self-consistency is environment-independent: the shipped snapshot is intact.
423
+ expect(selfLines.every((l) => l.verdict.status === 'pass')).toBe(true);
424
+ // The sibling resolved, so vs-canonical actually RAN — never skip. A `warn` is the
425
+ // expected current-local-drift exhibit (the local canonical advanced past the pin);
426
+ // a `pass` is a freshly-published bundle. Both are legitimate; `skip` would mean the
427
+ // honest-absent branch fired despite a resolved sibling (a bug).
428
+ expect(vsLines.length).toBe(selfLines.length);
429
+ expect(vsLines.every((l) => l.verdict.status === 'pass' || l.verdict.status === 'warn')).toBe(true);
430
+ });
431
+ });
432
+ //# sourceMappingURL=parity-lock-content.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parity-lock-content.test.js","sourceRoot":"","sources":["../src/parity-lock-content.test.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,7 @@ export type ParityTractability = z.infer<typeof ParityTractabilitySchema>;
53
53
  * narrows against this list; an unrecognized value stays verbatim on the row
54
54
  * and surfaces as a per-row line, never a dark manifest.
55
55
  */
56
- export declare const PARITY_MANIFESTATIONS: readonly ["correct-by-construction", "managed-block", "version-pin", "value-equality", "attestation", "capability-probe"];
56
+ export declare const PARITY_MANIFESTATIONS: readonly ["correct-by-construction", "managed-block", "version-pin", "value-equality", "content-hash", "attestation", "capability-probe"];
57
57
  export type ParityManifestation = (typeof PARITY_MANIFESTATIONS)[number];
58
58
  /**
59
59
  * The §6(a)3 sensed-state scale (post-#605: `declared` is the floor — the
@@ -1 +1 @@
1
- {"version":3,"file":"parity-manifest.d.ts","sourceRoot":"","sources":["../src/parity-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parity-manifest.d.ts","sourceRoot":"","sources":["../src/parity-manifest.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,12 @@ export const PARITY_MANIFESTATIONS = [
72
72
  // narrows on membership, not index), but kept ahead of `attestation` to read as
73
73
  // the promotion target.
74
74
  'value-equality',
75
+ // `content-hash` (mmnto-ai/totem#2107, strategy#754): byte-for-byte
76
+ // sha256(normalize(content)) equality of a DISTRIBUTED artifact vs its lock —
77
+ // stronger than `value-equality` (a single typed scalar) / `attestation`; distinct
78
+ // from `version-pin` (pin currency, NOT content). The detector is the lock reader
79
+ // (`detectLockContentContract`). Order is cosmetic (routing narrows on membership).
80
+ 'content-hash',
75
81
  'attestation',
76
82
  'capability-probe',
77
83
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"parity-manifest.js","sourceRoot":"","sources":["../src/parity-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parity-manifest.js","sourceRoot":"","sources":["../src/parity-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,2DAA2D;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AAEjD,2DAA2D;AAE3D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC7C,YAAY;IACZ,gBAAgB;IAChB,oBAAoB;CACrB,CAAC,CAAC;AAGH,iEAAiE;AAEjE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,yBAAyB;IACzB,eAAe;IACf,aAAa;IACb,6EAA6E;IAC7E,gFAAgF;IAChF,0EAA0E;IAC1E,gFAAgF;IAChF,wBAAwB;IACxB,gBAAgB;IAChB,oEAAoE;IACpE,8EAA8E;IAC9E,mFAAmF;IACnF,kFAAkF;IAClF,oFAAoF;IACpF,cAAc;IACd,aAAa;IACb,kBAAkB;CACV,CAAC;AAGX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAGlF,2DAA2D;AAE3D;;;;;;;;;;GAUG;AACH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC9B,8BAA8B,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1C,YAAY,EAAE,wBAAwB;IACtC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC5B,yEAAyE;IACzE,qEAAqE;IACrE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,2EAA2E;IAC3E,2EAA2E;IAC3E,0DAA0D;IAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,uEAAuE;IACvE,kEAAkE;IAClE,qEAAqE;IACrE,uEAAuE;IACvE,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,gEAAgE;IAChE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,iEAAiE;IACjE,8EAA8E;IAC9E,uEAAuE;IACvE,2EAA2E;IAC3E,4EAA4E;IAC5E,mEAAmE;IACnE,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACrC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,oBAAoB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;CAC5C,CAAC,CAAC;AAgGH;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CACvC,WAA+B,EAC/B,IAAY;IAEZ,4EAA4E;IAC5E,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IACnC,+EAA+E;IAC/E,iEAAiE;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAElG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,CAAS;IAC3B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/B,qOAAqO;IACvO,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAqBD;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,mBAAmB;IACnB,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QACH,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1B,0LAA0L;IAC5L,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,MAAM,EAAE,EAAE,CAAC;IACtE,CAAC;IAED,qDAAqD;IACrD,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC/E,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO;YACL,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,2DAA2D;SACpE,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACvD,IAAI,UAAU,KAAK,+BAA+B,EAAE,CAAC;QACnD,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;IACrE,CAAC;IAED,4CAA4C;IAC5C,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,sCAAsC,MAAM,CAAC,KAAK,CAAC,MAAM;iBAC9D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC3D,IAAI,CAAC,IAAI,CAAC,EAAE;SAChB,CAAC;IACJ,CAAC;IAED,mCAAmC;IACnC,MAAM,QAAQ,GAAmB;QAC/B,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAC5C,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM;QAC1B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;KAClD,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC1F,uEAAuE;QACvE,0EAA0E;QAC1E,sDAAsD;QACtD,MAAM,OAAO,GAAI,KAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACrF,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAClD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,+EAA+E;AAC/E,SAAS,WAAW,CAAC,GAA4C;IAC/D,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC/D,MAAM,gBAAgB,GAAG,YAAY,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;IACjE,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,eAAe,EAAE,GAAG,CAAC,kBAAkB,CAAC;QACxC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,eAAe,EAAE,GAAG,CAAC,kBAAkB,CAAC;QACxC,yBAAyB,EAAE,GAAG,CAAC,8BAA8B,CAAC;QAC9D,YAAY,EAAE,GAAG,CAAC,YAAY;QAC9B,aAAa,EAAE,GAAG,CAAC,gBAAgB,CAAC;QACpC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC;AAgBD,MAAM,UAAU,kBAAkB,CAChC,WAA+B,EAC/B,IAAY;IAEZ,MAAM,QAAQ,GAAG,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC9D,IAAI,QAAQ,CAAC,MAAM,KAAK,gBAAgB;QAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC9E,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;IAED,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/C,mMAAmM;IACrM,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzF,CAAC;IAED,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1E,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;QAC3C,OAAO;YACL,MAAM,EAAE,oBAAoB;YAC5B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmnto/totem",
3
- "version": "1.76.1",
3
+ "version": "1.78.0",
4
4
  "description": "Persistent memory and context layer for AI agents",
5
5
  "type": "module",
6
6
  "engines": {