@mmnto/totem 1.95.0 → 1.97.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 (36) hide show
  1. package/README.md +1 -1
  2. package/dist/artifacts/verdict.d.ts +155 -2
  3. package/dist/artifacts/verdict.d.ts.map +1 -1
  4. package/dist/artifacts/verdict.js +79 -2
  5. package/dist/artifacts/verdict.js.map +1 -1
  6. package/dist/artifacts/verdict.test.js +77 -1
  7. package/dist/artifacts/verdict.test.js.map +1 -1
  8. package/dist/artifacts.d.ts +2 -2
  9. package/dist/artifacts.d.ts.map +1 -1
  10. package/dist/artifacts.js +1 -1
  11. package/dist/artifacts.js.map +1 -1
  12. package/dist/compile-worker-fingerprint.d.ts +14 -6
  13. package/dist/compile-worker-fingerprint.d.ts.map +1 -1
  14. package/dist/compile-worker-fingerprint.js +15 -7
  15. package/dist/compile-worker-fingerprint.js.map +1 -1
  16. package/dist/compile-worker-fingerprint.test.js +23 -1
  17. package/dist/compile-worker-fingerprint.test.js.map +1 -1
  18. package/dist/config-schema.d.ts +18 -1
  19. package/dist/config-schema.d.ts.map +1 -1
  20. package/dist/config-schema.js +16 -1
  21. package/dist/config-schema.js.map +1 -1
  22. package/dist/config-schema.test.js +13 -0
  23. package/dist/config-schema.test.js.map +1 -1
  24. package/dist/description.test.d.ts +2 -0
  25. package/dist/description.test.d.ts.map +1 -0
  26. package/dist/description.test.js +16 -0
  27. package/dist/description.test.js.map +1 -0
  28. package/dist/index.d.ts +2 -2
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +1 -1
  31. package/dist/index.js.map +1 -1
  32. package/dist/ingest/pipeline.js +4 -2
  33. package/dist/ingest/pipeline.js.map +1 -1
  34. package/dist/pack-manifest-writer.test.js +1 -0
  35. package/dist/pack-manifest-writer.test.js.map +1 -1
  36. package/package.json +2 -2
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @mmnto/totem
2
2
 
3
- Core engine for [Totem](https://github.com/mmnto-ai/totem), a persistent memory and context layer for AI agents. This is the library that [`@mmnto/cli`](https://www.npmjs.com/package/@mmnto/cli) and [`@mmnto/mcp`](https://www.npmjs.com/package/@mmnto/mcp) build on; most users want one of those instead.
3
+ Core engine for [Totem](https://github.com/mmnto-ai/totem) a local-first, file-anchored substrate that makes AI-agent work queryable, enforceable, and derivable in your codebase. This is the library that [`@mmnto/cli`](https://www.npmjs.com/package/@mmnto/cli) and [`@mmnto/mcp`](https://www.npmjs.com/package/@mmnto/mcp) build on; most users want one of those instead.
4
4
 
5
5
  It contains the lesson parsing and compilation substrate, the deterministic rule engine (regex, Tree-sitter AST classification, ast-grep), the LanceDB-backed vector store, chunkers and embedders, and pack manifest helpers.
6
6
 
@@ -39,8 +39,14 @@
39
39
  */
40
40
  import { z } from 'zod';
41
41
  import { type PersistedPostCheckFinding } from './panel.js';
42
- /** The verdict schemaVersion WRITTEN by this code. Readers accept any 1.x (F1). */
43
- export declare const VERDICT_ARTIFACT_SCHEMA_VERSION = "1.0.0";
42
+ import type { GroundingBundle } from './schema.js';
43
+ /**
44
+ * The verdict schemaVersion WRITTEN by this code. Readers accept any 1.x (F1).
45
+ * 1.1.0 (mmnto-ai/totem#2363): additive-optional `lessonsConsulted` — the
46
+ * round's lesson-recall record. The minor is the observable marker; the
47
+ * registry stays empty because the tolerant reader parses both.
48
+ */
49
+ export declare const VERDICT_ARTIFACT_SCHEMA_VERSION = "1.1.0";
44
50
  /** The major this reader understands; other majors need a migration entry. */
45
51
  export declare const VERDICT_ARTIFACT_KNOWN_MAJOR = 1;
46
52
  /**
@@ -286,6 +292,85 @@ export declare const VerdictFindingSchema: z.ZodObject<{
286
292
  line?: number | undefined;
287
293
  }>;
288
294
  export type VerdictFinding = z.infer<typeof VerdictFindingSchema>;
295
+ /**
296
+ * One lesson delivered into the round's shared lane prompt — identity only
297
+ * (`contentHash` over the delivered snippet + repo-relative `filePath`,
298
+ * mirroring {@link GroundingItemSchema} identity semantics), never content
299
+ * bytes. `sourceRepo` names a linked index for cross-repo hits; ABSENT = the
300
+ * run's own repo.
301
+ */
302
+ export declare const LessonConsultedItemSchema: z.ZodObject<{
303
+ contentHash: z.ZodString;
304
+ filePath: z.ZodString;
305
+ sourceRepo: z.ZodOptional<z.ZodString>;
306
+ }, "strip", z.ZodTypeAny, {
307
+ filePath: string;
308
+ contentHash: string;
309
+ sourceRepo?: string | undefined;
310
+ }, {
311
+ filePath: string;
312
+ contentHash: string;
313
+ sourceRepo?: string | undefined;
314
+ }>;
315
+ export type LessonConsultedItem = z.infer<typeof LessonConsultedItemSchema>;
316
+ /**
317
+ * The round's lesson-recall record (mmnto-ai/totem#2363, strategy#474
318
+ * grounding lever): which lessons the retrieval delivered into the shared
319
+ * per-lane prompt, and whether recall hit at all. One field per VERDICT, not
320
+ * per lane — identical-kit discipline means every lane received the same
321
+ * retrieval, so a per-lane copy would be a mirrored count.
322
+ *
323
+ * Three observable states, honest-absent by construction:
324
+ * - field ABSENT — the producer performed no lesson retrieval (pre-1.1
325
+ * artifacts, or a path without index retrieval); never fabricated.
326
+ * - `status: 'empty'` — retrieval RAN and returned zero lessons: the
327
+ * visibly-ungrounded state the strategy#474 abstain-on-empty rule needs
328
+ * to be checkable.
329
+ * - `status: 'hit'` — ≥1 lesson delivered; `items` carries identities.
330
+ *
331
+ * `status` ⟺ `items` consistency is enforced in the artifact `superRefine`
332
+ * (never mirrored on trust). Per-lane delivery provenance stays one hop away
333
+ * in each lane's run-artifact grounding bundle; this field is the round-level
334
+ * contract line so recall can never silently drop out of the redesign.
335
+ */
336
+ export declare const LessonsConsultedSchema: z.ZodObject<{
337
+ status: z.ZodEnum<["hit", "empty"]>;
338
+ items: z.ZodArray<z.ZodObject<{
339
+ contentHash: z.ZodString;
340
+ filePath: z.ZodString;
341
+ sourceRepo: z.ZodOptional<z.ZodString>;
342
+ }, "strip", z.ZodTypeAny, {
343
+ filePath: string;
344
+ contentHash: string;
345
+ sourceRepo?: string | undefined;
346
+ }, {
347
+ filePath: string;
348
+ contentHash: string;
349
+ sourceRepo?: string | undefined;
350
+ }>, "many">;
351
+ }, "strip", z.ZodTypeAny, {
352
+ status: "empty" | "hit";
353
+ items: {
354
+ filePath: string;
355
+ contentHash: string;
356
+ sourceRepo?: string | undefined;
357
+ }[];
358
+ }, {
359
+ status: "empty" | "hit";
360
+ items: {
361
+ filePath: string;
362
+ contentHash: string;
363
+ sourceRepo?: string | undefined;
364
+ }[];
365
+ }>;
366
+ export type LessonsConsulted = z.infer<typeof LessonsConsultedSchema>;
367
+ /**
368
+ * Derive the round-level recall record from the grounding bundle the runner
369
+ * delivered to its lanes (single home for the mapping — every future runner
370
+ * derives, never hand-builds). `lesson`-partition items only; identity fields
371
+ * pass through verbatim.
372
+ */
373
+ export declare function deriveLessonsConsulted(bundle: GroundingBundle): LessonsConsulted;
289
374
  /**
290
375
  * Round bookkeeping (all DERIVED — see the CLI lifecycle). `lineageKey` is the
291
376
  * composite hash over the RESOLVED scope selector (see {@link computeLineageKey}
@@ -579,6 +664,42 @@ export declare const VerdictArtifactSchema: z.ZodEffects<z.ZodObject<{
579
664
  unrecognizedProviders: string[];
580
665
  diversityConfidence: "verified" | "coarse";
581
666
  }>>;
667
+ /**
668
+ * The round's lesson-recall record (mmnto-ai/totem#2363) — see
669
+ * {@link LessonsConsultedSchema}. Additive-optional 1.x (F1): pre-1.1
670
+ * artifacts predate it, and a producer that performed no retrieval omits
671
+ * it (honest-absent) rather than fabricating an `empty`.
672
+ */
673
+ lessonsConsulted: z.ZodOptional<z.ZodObject<{
674
+ status: z.ZodEnum<["hit", "empty"]>;
675
+ items: z.ZodArray<z.ZodObject<{
676
+ contentHash: z.ZodString;
677
+ filePath: z.ZodString;
678
+ sourceRepo: z.ZodOptional<z.ZodString>;
679
+ }, "strip", z.ZodTypeAny, {
680
+ filePath: string;
681
+ contentHash: string;
682
+ sourceRepo?: string | undefined;
683
+ }, {
684
+ filePath: string;
685
+ contentHash: string;
686
+ sourceRepo?: string | undefined;
687
+ }>, "many">;
688
+ }, "strip", z.ZodTypeAny, {
689
+ status: "empty" | "hit";
690
+ items: {
691
+ filePath: string;
692
+ contentHash: string;
693
+ sourceRepo?: string | undefined;
694
+ }[];
695
+ }, {
696
+ status: "empty" | "hit";
697
+ items: {
698
+ filePath: string;
699
+ contentHash: string;
700
+ sourceRepo?: string | undefined;
701
+ }[];
702
+ }>>;
582
703
  round: z.ZodObject<{
583
704
  index: z.ZodNumber;
584
705
  priorVerdictHash: z.ZodOptional<z.ZodString>;
@@ -685,6 +806,14 @@ export declare const VerdictArtifactSchema: z.ZodEffects<z.ZodObject<{
685
806
  diversityConfidence: "verified" | "coarse";
686
807
  } | undefined;
687
808
  panelArtifactHash?: string | undefined;
809
+ lessonsConsulted?: {
810
+ status: "empty" | "hit";
811
+ items: {
812
+ filePath: string;
813
+ contentHash: string;
814
+ sourceRepo?: string | undefined;
815
+ }[];
816
+ } | undefined;
688
817
  }, {
689
818
  createdAt: string;
690
819
  diffScope: {
@@ -757,6 +886,14 @@ export declare const VerdictArtifactSchema: z.ZodEffects<z.ZodObject<{
757
886
  diversityConfidence: "verified" | "coarse";
758
887
  } | undefined;
759
888
  panelArtifactHash?: string | undefined;
889
+ lessonsConsulted?: {
890
+ status: "empty" | "hit";
891
+ items: {
892
+ filePath: string;
893
+ contentHash: string;
894
+ sourceRepo?: string | undefined;
895
+ }[];
896
+ } | undefined;
760
897
  }>, {
761
898
  createdAt: string;
762
899
  diffScope: {
@@ -829,6 +966,14 @@ export declare const VerdictArtifactSchema: z.ZodEffects<z.ZodObject<{
829
966
  diversityConfidence: "verified" | "coarse";
830
967
  } | undefined;
831
968
  panelArtifactHash?: string | undefined;
969
+ lessonsConsulted?: {
970
+ status: "empty" | "hit";
971
+ items: {
972
+ filePath: string;
973
+ contentHash: string;
974
+ sourceRepo?: string | undefined;
975
+ }[];
976
+ } | undefined;
832
977
  }, {
833
978
  createdAt: string;
834
979
  diffScope: {
@@ -901,6 +1046,14 @@ export declare const VerdictArtifactSchema: z.ZodEffects<z.ZodObject<{
901
1046
  diversityConfidence: "verified" | "coarse";
902
1047
  } | undefined;
903
1048
  panelArtifactHash?: string | undefined;
1049
+ lessonsConsulted?: {
1050
+ status: "empty" | "hit";
1051
+ items: {
1052
+ filePath: string;
1053
+ contentHash: string;
1054
+ sourceRepo?: string | undefined;
1055
+ }[];
1056
+ } | undefined;
904
1057
  }>;
905
1058
  export type VerdictArtifact = z.infer<typeof VerdictArtifactSchema>;
906
1059
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"verdict.d.ts","sourceRoot":"","sources":["../../src/artifacts/verdict.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verdict.d.ts","sourceRoot":"","sources":["../../src/artifacts/verdict.ts"],"names":[],"mappings":"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"}
@@ -45,8 +45,13 @@ import { readJsonSafe } from '../sys/fs.js';
45
45
  import { calculateDeterministicHash } from './hash.js';
46
46
  import { classifyDiversity, PanelDiversitySchema, PersistedPostCheckFindingSchema, } from './panel.js';
47
47
  // ─── Schema version (mirrors RunArtifact / Panel F1) ────────────────────────
48
- /** The verdict schemaVersion WRITTEN by this code. Readers accept any 1.x (F1). */
49
- export const VERDICT_ARTIFACT_SCHEMA_VERSION = '1.0.0';
48
+ /**
49
+ * The verdict schemaVersion WRITTEN by this code. Readers accept any 1.x (F1).
50
+ * 1.1.0 (mmnto-ai/totem#2363): additive-optional `lessonsConsulted` — the
51
+ * round's lesson-recall record. The minor is the observable marker; the
52
+ * registry stays empty because the tolerant reader parses both.
53
+ */
54
+ export const VERDICT_ARTIFACT_SCHEMA_VERSION = '1.1.0';
50
55
  /** The major this reader understands; other majors need a migration entry. */
51
56
  export const VERDICT_ARTIFACT_KNOWN_MAJOR = 1;
52
57
  /** Major-1 semver literal — keep in sync with {@link VERDICT_ARTIFACT_KNOWN_MAJOR} (a literal beats runtime RegExp construction; the major only changes alongside a migration entry). */
@@ -216,6 +221,59 @@ export const VerdictFindingSchema = z.object({
216
221
  line: z.number().optional(),
217
222
  message: z.string(),
218
223
  });
224
+ // ─── Lessons consulted (mmnto-ai/totem#2363) ─────────────────────────────────
225
+ /**
226
+ * One lesson delivered into the round's shared lane prompt — identity only
227
+ * (`contentHash` over the delivered snippet + repo-relative `filePath`,
228
+ * mirroring {@link GroundingItemSchema} identity semantics), never content
229
+ * bytes. `sourceRepo` names a linked index for cross-repo hits; ABSENT = the
230
+ * run's own repo.
231
+ */
232
+ export const LessonConsultedItemSchema = z.object({
233
+ contentHash: Sha256HexSchema,
234
+ filePath: z.string().trim().min(1),
235
+ sourceRepo: z.string().trim().min(1).optional(),
236
+ });
237
+ /**
238
+ * The round's lesson-recall record (mmnto-ai/totem#2363, strategy#474
239
+ * grounding lever): which lessons the retrieval delivered into the shared
240
+ * per-lane prompt, and whether recall hit at all. One field per VERDICT, not
241
+ * per lane — identical-kit discipline means every lane received the same
242
+ * retrieval, so a per-lane copy would be a mirrored count.
243
+ *
244
+ * Three observable states, honest-absent by construction:
245
+ * - field ABSENT — the producer performed no lesson retrieval (pre-1.1
246
+ * artifacts, or a path without index retrieval); never fabricated.
247
+ * - `status: 'empty'` — retrieval RAN and returned zero lessons: the
248
+ * visibly-ungrounded state the strategy#474 abstain-on-empty rule needs
249
+ * to be checkable.
250
+ * - `status: 'hit'` — ≥1 lesson delivered; `items` carries identities.
251
+ *
252
+ * `status` ⟺ `items` consistency is enforced in the artifact `superRefine`
253
+ * (never mirrored on trust). Per-lane delivery provenance stays one hop away
254
+ * in each lane's run-artifact grounding bundle; this field is the round-level
255
+ * contract line so recall can never silently drop out of the redesign.
256
+ */
257
+ export const LessonsConsultedSchema = z.object({
258
+ status: z.enum(['hit', 'empty']),
259
+ items: z.array(LessonConsultedItemSchema),
260
+ });
261
+ /**
262
+ * Derive the round-level recall record from the grounding bundle the runner
263
+ * delivered to its lanes (single home for the mapping — every future runner
264
+ * derives, never hand-builds). `lesson`-partition items only; identity fields
265
+ * pass through verbatim.
266
+ */
267
+ export function deriveLessonsConsulted(bundle) {
268
+ const items = bundle.items
269
+ .filter((i) => i.sourceType === 'lesson')
270
+ .map((i) => ({
271
+ contentHash: i.contentHash,
272
+ filePath: i.filePath,
273
+ ...(i.sourceRepo !== undefined ? { sourceRepo: i.sourceRepo } : {}),
274
+ }));
275
+ return { status: items.length > 0 ? 'hit' : 'empty', items };
276
+ }
219
277
  // ─── Round / lineage ─────────────────────────────────────────────────────────
220
278
  /**
221
279
  * Round bookkeeping (all DERIVED — see the CLI lifecycle). `lineageKey` is the
@@ -320,6 +378,13 @@ export const VerdictArtifactSchema = z
320
378
  findings: z.array(VerdictFindingSchema),
321
379
  /** A SINGLE top-level panel-diversity summary (classifyDiversity output) — present only with a panel; NEVER mirrored per finding. */
322
380
  diversity: PanelDiversitySchema.optional(),
381
+ /**
382
+ * The round's lesson-recall record (mmnto-ai/totem#2363) — see
383
+ * {@link LessonsConsultedSchema}. Additive-optional 1.x (F1): pre-1.1
384
+ * artifacts predate it, and a producer that performed no retrieval omits
385
+ * it (honest-absent) rather than fabricating an `empty`.
386
+ */
387
+ lessonsConsulted: LessonsConsultedSchema.optional(),
323
388
  round: VerdictRoundSchema,
324
389
  /**
325
390
  * Post-fan tree compare against the PRE-fan content hash (codex rev-2 fold 1):
@@ -417,6 +482,18 @@ export const VerdictArtifactSchema = z
417
482
  message: `round ${a.round.index} (>0) requires priorVerdictHash linking the prior round in the chain`,
418
483
  });
419
484
  }
485
+ // ── mmnto-ai/totem#2363: lessonsConsulted status ⟺ items (never mirrored on trust) ──
486
+ if (a.lessonsConsulted !== undefined) {
487
+ const hasItems = a.lessonsConsulted.items.length > 0;
488
+ const claimsHit = a.lessonsConsulted.status === 'hit';
489
+ if (claimsHit !== hasItems) {
490
+ ctx.addIssue({
491
+ code: z.ZodIssueCode.custom,
492
+ path: ['lessonsConsulted', 'status'],
493
+ message: `lessonsConsulted.status "${a.lessonsConsulted.status}" must match items (${a.lessonsConsulted.items.length}) — 'hit' ⟺ at least one item; the status is never mirrored on trust`,
494
+ });
495
+ }
496
+ }
420
497
  // ── Finding 5: the persisted boundary re-derives `settled`, never trusts it ──
421
498
  const derivedSettled = deriveSettled(a);
422
499
  if (a.settled !== derivedSettled) {
@@ -1 +1 @@
1
- {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/artifacts/verdict.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/artifacts/verdict.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ import { TotemError, TotemParseError } from '../errors.js';
29
29
  import { cleanTmpDir } from '../test-utils.js';
30
30
  import { calculateDeterministicHash } from './hash.js';
31
31
  import { classifyDiversity } from './panel.js';
32
- import { computeLineageKey, computeVerdictArtifactContentHash, deriveCacheEligible, deriveSettled, findLatestVerdictForLineage, listVerdictArtifacts, loadVerdictArtifact, renderCovariateLine, saveVerdictArtifact, VERDICT_ARTIFACT_SCHEMA_VERSION, VerdictArtifactSchema, verdictsDir, } from './verdict.js';
32
+ import { computeLineageKey, computeVerdictArtifactContentHash, deriveCacheEligible, deriveLessonsConsulted, deriveSettled, findLatestVerdictForLineage, listVerdictArtifacts, loadVerdictArtifact, renderCovariateLine, saveVerdictArtifact, VERDICT_ARTIFACT_SCHEMA_VERSION, VerdictArtifactSchema, verdictsDir, } from './verdict.js';
33
33
  // ─── Fixtures ──────────────────────────────────────────────────────────────
34
34
  //
35
35
  // laneIds follow the backend-derived vocabulary `lane-<index>:<backend>` (G1),
@@ -521,6 +521,77 @@ describe('renderCovariateLine (gate G4, format v1)', () => {
521
521
  expect(renderCovariateLine({ artifact: v, contentHash })).toBe(`local-lane: ${contentHash.slice(0, 8)} round=0 settled=false lanes=1/2`);
522
522
  });
523
523
  });
524
+ // ─── lessonsConsulted (mmnto-ai/totem#2363) ─────────────────────────────────
525
+ describe('lessonsConsulted — round-level recall record (mmnto-ai/totem#2363)', () => {
526
+ const item = (seed) => ({
527
+ contentHash: seed.repeat(64).slice(0, 64),
528
+ filePath: `.totem/lessons/${seed}.md`,
529
+ });
530
+ it('accepts an absent field (pre-1.1 artifacts / no-retrieval producers)', () => {
531
+ expect(VerdictArtifactSchema.safeParse(verdict()).success).toBe(true);
532
+ });
533
+ it("accepts 'hit' with items and 'empty' with none", () => {
534
+ expect(VerdictArtifactSchema.safeParse(verdict({ lessonsConsulted: { status: 'hit', items: [item('a')] } })).success).toBe(true);
535
+ expect(VerdictArtifactSchema.safeParse(verdict({ lessonsConsulted: { status: 'empty', items: [] } }))
536
+ .success).toBe(true);
537
+ });
538
+ it("rejects a mirrored-on-trust status: 'hit' with zero items and 'empty' with items", () => {
539
+ const hitNoItems = VerdictArtifactSchema.safeParse(verdict({ lessonsConsulted: { status: 'hit', items: [] } }));
540
+ expect(hitNoItems.success).toBe(false);
541
+ const emptyWithItems = VerdictArtifactSchema.safeParse(verdict({ lessonsConsulted: { status: 'empty', items: [item('b')] } }));
542
+ expect(emptyWithItems.success).toBe(false);
543
+ });
544
+ it('rejects a non-sha256 contentHash', () => {
545
+ const bad = VerdictArtifactSchema.safeParse(verdict({
546
+ lessonsConsulted: {
547
+ status: 'hit',
548
+ items: [{ contentHash: 'not-a-hash', filePath: '.totem/lessons/x.md' }],
549
+ },
550
+ }));
551
+ expect(bad.success).toBe(false);
552
+ });
553
+ it('deriveLessonsConsulted filters the lesson partition and passes identity through', () => {
554
+ const lessonItem = {
555
+ provenance: 'similarity-only',
556
+ contentHash: 'c'.repeat(64),
557
+ sourceType: 'lesson',
558
+ filePath: '.totem/lessons/no-child-process.md',
559
+ };
560
+ const crossRepoLesson = {
561
+ provenance: 'similarity-only',
562
+ contentHash: 'd'.repeat(64),
563
+ sourceType: 'lesson',
564
+ filePath: '.totem/lessons/remote.md',
565
+ sourceRepo: 'linked-repo',
566
+ };
567
+ const codeItem = {
568
+ provenance: 'similarity-only',
569
+ contentHash: 'e'.repeat(64),
570
+ sourceType: 'code',
571
+ filePath: 'src/x.ts',
572
+ };
573
+ const derived = deriveLessonsConsulted({ items: [lessonItem, codeItem, crossRepoLesson] });
574
+ expect(derived.status).toBe('hit');
575
+ expect(derived.items).toEqual([
576
+ { contentHash: 'c'.repeat(64), filePath: '.totem/lessons/no-child-process.md' },
577
+ {
578
+ contentHash: 'd'.repeat(64),
579
+ filePath: '.totem/lessons/remote.md',
580
+ sourceRepo: 'linked-repo',
581
+ },
582
+ ]);
583
+ });
584
+ it("deriveLessonsConsulted yields 'empty' when the bundle has no lesson items", () => {
585
+ const codeOnly = {
586
+ provenance: 'similarity-only',
587
+ contentHash: 'e'.repeat(64),
588
+ sourceType: 'code',
589
+ filePath: 'src/x.ts',
590
+ };
591
+ expect(deriveLessonsConsulted({ items: [codeOnly] })).toEqual({ status: 'empty', items: [] });
592
+ expect(deriveLessonsConsulted({ items: [] })).toEqual({ status: 'empty', items: [] });
593
+ });
594
+ });
524
595
  // ─── LANE-BLINDNESS structural test (Prop 302) ──────────────────────────────
525
596
  describe('lane-blindness: no runner/lane-mode discriminator (Prop 302)', () => {
526
597
  it('the known top-level key set contains no warm/cold/runner key', () => {
@@ -529,6 +600,10 @@ describe('lane-blindness: no runner/lane-mode discriminator (Prop 302)', () => {
529
600
  ...verdict({ lanes: [completedLane(0), completedLane(1, 'anthropic')] }),
530
601
  panelArtifactHash: 'e'.repeat(64),
531
602
  diversity: classifyDiversity(['gemini', 'anthropic']),
603
+ lessonsConsulted: {
604
+ status: 'hit',
605
+ items: [{ contentHash: 'f'.repeat(64), filePath: '.totem/lessons/x.md' }],
606
+ },
532
607
  };
533
608
  expect(VerdictArtifactSchema.safeParse(full).success).toBe(true);
534
609
  const topKeys = Object.keys(full).sort();
@@ -540,6 +615,7 @@ describe('lane-blindness: no runner/lane-mode discriminator (Prop 302)', () => {
540
615
  'diversity',
541
616
  'findings',
542
617
  'lanes',
618
+ 'lessonsConsulted',
543
619
  'panelArtifactHash',
544
620
  'postChecks',
545
621
  'reviewedState',