@mmnto/totem 1.14.8 → 1.14.9
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.
- package/dist/ast-grep-query.d.ts +22 -2
- package/dist/ast-grep-query.d.ts.map +1 -1
- package/dist/ast-grep-query.js +34 -5
- package/dist/ast-grep-query.js.map +1 -1
- package/dist/ast-grep-query.test.js +45 -1
- package/dist/ast-grep-query.test.js.map +1 -1
- package/dist/compile-lesson.d.ts +24 -1
- package/dist/compile-lesson.d.ts.map +1 -1
- package/dist/compile-lesson.js +112 -58
- package/dist/compile-lesson.js.map +1 -1
- package/dist/compile-lesson.test.js +283 -14
- package/dist/compile-lesson.test.js.map +1 -1
- package/dist/compile-manifest.d.ts +14 -1
- package/dist/compile-manifest.d.ts.map +1 -1
- package/dist/compile-manifest.js +107 -3
- package/dist/compile-manifest.js.map +1 -1
- package/dist/compile-manifest.test.js +123 -1
- package/dist/compile-manifest.test.js.map +1 -1
- package/dist/compile-smoke-gate.d.ts +42 -0
- package/dist/compile-smoke-gate.d.ts.map +1 -0
- package/dist/compile-smoke-gate.js +135 -0
- package/dist/compile-smoke-gate.js.map +1 -0
- package/dist/compile-smoke-gate.test.d.ts +2 -0
- package/dist/compile-smoke-gate.test.d.ts.map +1 -0
- package/dist/compile-smoke-gate.test.js +202 -0
- package/dist/compile-smoke-gate.test.js.map +1 -0
- package/dist/compiler-schema.d.ts +286 -24
- package/dist/compiler-schema.d.ts.map +1 -1
- package/dist/compiler-schema.js +128 -5
- package/dist/compiler-schema.js.map +1 -1
- package/dist/compiler-schema.test.d.ts +2 -0
- package/dist/compiler-schema.test.d.ts.map +1 -0
- package/dist/compiler-schema.test.js +263 -0
- package/dist/compiler-schema.test.js.map +1 -0
- package/dist/compiler.d.ts +22 -5
- package/dist/compiler.d.ts.map +1 -1
- package/dist/compiler.js +9 -3
- package/dist/compiler.js.map +1 -1
- package/dist/compiler.test.js +17 -2
- package/dist/compiler.test.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/ledger.d.ts +1 -1
- package/dist/lesson-pattern.d.ts +26 -0
- package/dist/lesson-pattern.d.ts.map +1 -1
- package/dist/lesson-pattern.js +35 -1
- package/dist/lesson-pattern.js.map +1 -1
- package/dist/lesson-pattern.test.js +72 -0
- package/dist/lesson-pattern.test.js.map +1 -1
- package/dist/rule-engine.d.ts.map +1 -1
- package/dist/rule-engine.js +25 -7
- package/dist/rule-engine.js.map +1 -1
- package/dist/rule-engine.test.js +98 -4
- package/dist/rule-engine.test.js.map +1 -1
- package/dist/rule-tester.d.ts.map +1 -1
- package/dist/rule-tester.js +9 -2
- package/dist/rule-tester.js.map +1 -1
- package/dist/rule-tester.test.js +41 -0
- package/dist/rule-tester.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { describe, expect, it, vi } from 'vitest';
|
|
2
2
|
import { buildCompiledRule, buildManualRule, compileLesson, validateAstGrepPattern, verifyRuleExamples, } from './compile-lesson.js';
|
|
3
|
+
import { CompilerOutputSchema } from './compiler-schema.js';
|
|
3
4
|
// ─── Helpers ────────────────────────────────────────
|
|
4
5
|
const lesson = {
|
|
5
6
|
index: 0,
|
|
@@ -191,10 +192,10 @@ describe('self-suppression guard (#1177)', () => {
|
|
|
191
192
|
expect(result.rule).toBeNull();
|
|
192
193
|
expect(result.rejectReason).toContain('self-suppress');
|
|
193
194
|
});
|
|
194
|
-
it('rejects ast-grep
|
|
195
|
+
it('rejects ast-grep compound rule containing totem-context', () => {
|
|
195
196
|
const result = buildCompiledRule({
|
|
196
197
|
compilable: true,
|
|
197
|
-
|
|
198
|
+
astGrepYamlRule: { rule: { pattern: 'totem-context: something' } },
|
|
198
199
|
message: 'test',
|
|
199
200
|
engine: 'ast-grep',
|
|
200
201
|
}, { hash: 'ast456', heading: 'Test' }, new Map());
|
|
@@ -394,17 +395,21 @@ describe('buildCompiledRule ast-grep validation (#1062)', () => {
|
|
|
394
395
|
expect(result.rejectReason).toContain('Invalid ast-grep pattern');
|
|
395
396
|
expect(result.rejectReason).toContain('top-level expressions');
|
|
396
397
|
});
|
|
397
|
-
it('rejects ast-grep rule
|
|
398
|
-
|
|
398
|
+
it('rejects ast-grep rule where Zod blocks a yaml rule missing the rule key', () => {
|
|
399
|
+
// The rule parameter is required by the Zod schema; construct the
|
|
400
|
+
// object as unknown to sidestep the type-narrowing and prove that
|
|
401
|
+
// parseCompilerResponse rejects it at the schema boundary rather
|
|
402
|
+
// than at buildCompiledRule. This is the invariant from the design
|
|
403
|
+
// doc: missing-rule-key is a parse-time failure, not a runtime one.
|
|
404
|
+
const malformed = {
|
|
399
405
|
compilable: true,
|
|
400
406
|
message: 'test',
|
|
401
407
|
engine: 'ast-grep',
|
|
402
|
-
|
|
408
|
+
astGrepYamlRule: { pattern: 'console.log($A)' },
|
|
403
409
|
};
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
expect(
|
|
407
|
-
expect(result.rejectReason).toContain('rule');
|
|
410
|
+
// Parse with the authoritative schema to prove Zod rejects.
|
|
411
|
+
const parsed = CompilerOutputSchema.safeParse(malformed);
|
|
412
|
+
expect(parsed.success).toBe(false);
|
|
408
413
|
});
|
|
409
414
|
it('accepts valid ast-grep string pattern', () => {
|
|
410
415
|
const parsed = {
|
|
@@ -417,16 +422,236 @@ describe('buildCompiledRule ast-grep validation (#1062)', () => {
|
|
|
417
422
|
expect(result.rule).not.toBeNull();
|
|
418
423
|
expect(result.rule.engine).toBe('ast-grep');
|
|
419
424
|
});
|
|
420
|
-
it('accepts valid ast-grep
|
|
425
|
+
it('accepts valid ast-grep compound rule via astGrepYamlRule', () => {
|
|
421
426
|
const parsed = {
|
|
422
427
|
compilable: true,
|
|
423
428
|
message: 'No console.log',
|
|
424
429
|
engine: 'ast-grep',
|
|
425
|
-
|
|
430
|
+
astGrepYamlRule: { rule: { pattern: 'console.log($A)' } },
|
|
431
|
+
};
|
|
432
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash);
|
|
433
|
+
expect(result.rule).not.toBeNull();
|
|
434
|
+
expect(result.rule.engine).toBe('ast-grep');
|
|
435
|
+
expect(result.rule.astGrepYamlRule).toEqual({ rule: { pattern: 'console.log($A)' } });
|
|
436
|
+
expect(result.rule.astGrepPattern).toBeUndefined();
|
|
437
|
+
});
|
|
438
|
+
it('buildCompiledRule passes astGrepYamlRule to validateAstGrepPattern and propagates NAPI rejections', () => {
|
|
439
|
+
// Syntactically-valid Zod shape (has `rule` key) but the leaf kind
|
|
440
|
+
// is a node type ast-grep does not recognize. Zod lets it through;
|
|
441
|
+
// napi rejects it. That is the precise boundary this test pins.
|
|
442
|
+
const parsed = {
|
|
443
|
+
compilable: true,
|
|
444
|
+
message: 'nope',
|
|
445
|
+
engine: 'ast-grep',
|
|
446
|
+
astGrepYamlRule: { rule: { kind: '!!!NOT_A_REAL_NODE_KIND!!!' } },
|
|
447
|
+
};
|
|
448
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash);
|
|
449
|
+
expect(result.rule).toBeNull();
|
|
450
|
+
expect(result.rejectReason).toContain('Invalid ast-grep pattern');
|
|
451
|
+
// First-line napi error quoting per #1349
|
|
452
|
+
expect(result.rejectReason).toContain('ast-grep rejected pattern');
|
|
453
|
+
});
|
|
454
|
+
it('isSelfSuppressing still catches compound rules with deep totem-ignore leaves', () => {
|
|
455
|
+
const parsed = {
|
|
456
|
+
compilable: true,
|
|
457
|
+
message: 'nope',
|
|
458
|
+
engine: 'ast-grep',
|
|
459
|
+
astGrepYamlRule: {
|
|
460
|
+
rule: { all: [{ pattern: 'foo($A)' }, { pattern: 'totem-ignore marker' }] },
|
|
461
|
+
},
|
|
462
|
+
};
|
|
463
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash);
|
|
464
|
+
expect(result.rule).toBeNull();
|
|
465
|
+
expect(result.rejectReason).toContain('self-suppress');
|
|
466
|
+
});
|
|
467
|
+
});
|
|
468
|
+
// ─── Smoke gate wiring (mmnto/totem#1408) ────────────
|
|
469
|
+
describe('buildCompiledRule smoke gate (mmnto/totem#1408)', () => {
|
|
470
|
+
it('rejects Pipeline 2 ast-grep rule that is missing badExample', () => {
|
|
471
|
+
const parsed = {
|
|
472
|
+
compilable: true,
|
|
473
|
+
message: 'No debugger',
|
|
474
|
+
engine: 'ast-grep',
|
|
475
|
+
astGrepPattern: 'debugger',
|
|
476
|
+
};
|
|
477
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash, {
|
|
478
|
+
enforceSmokeGate: true,
|
|
479
|
+
});
|
|
480
|
+
expect(result.rule).toBeNull();
|
|
481
|
+
expect(result.rejectReason).toContain('smoke gate');
|
|
482
|
+
expect(result.rejectReason).toContain('badExample');
|
|
483
|
+
});
|
|
484
|
+
it('rejects Pipeline 2 ast-grep rule whose badExample produces zero matches', () => {
|
|
485
|
+
const parsed = {
|
|
486
|
+
compilable: true,
|
|
487
|
+
message: 'No debugger',
|
|
488
|
+
engine: 'ast-grep',
|
|
489
|
+
astGrepPattern: 'debugger',
|
|
490
|
+
badExample: 'const x = 1;\n',
|
|
491
|
+
};
|
|
492
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash, {
|
|
493
|
+
enforceSmokeGate: true,
|
|
494
|
+
});
|
|
495
|
+
expect(result.rule).toBeNull();
|
|
496
|
+
expect(result.rejectReason).toContain('smoke gate');
|
|
497
|
+
expect(result.rejectReason).toContain('zero matches');
|
|
498
|
+
});
|
|
499
|
+
it('rejects Pipeline 2 regex rule that is missing badExample', () => {
|
|
500
|
+
const parsed = {
|
|
501
|
+
compilable: true,
|
|
502
|
+
message: 'No console.log',
|
|
503
|
+
engine: 'regex',
|
|
504
|
+
pattern: 'console\\.log',
|
|
505
|
+
};
|
|
506
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash, {
|
|
507
|
+
enforceSmokeGate: true,
|
|
508
|
+
});
|
|
509
|
+
expect(result.rule).toBeNull();
|
|
510
|
+
expect(result.rejectReason).toContain('smoke gate');
|
|
511
|
+
expect(result.rejectReason).toContain('badExample');
|
|
512
|
+
});
|
|
513
|
+
it('accepts Pipeline 2 ast-grep rule whose badExample produces matches', () => {
|
|
514
|
+
const parsed = {
|
|
515
|
+
compilable: true,
|
|
516
|
+
message: 'No debugger',
|
|
517
|
+
engine: 'ast-grep',
|
|
518
|
+
astGrepPattern: 'debugger',
|
|
519
|
+
badExample: 'debugger;\n',
|
|
520
|
+
};
|
|
521
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash, {
|
|
522
|
+
enforceSmokeGate: true,
|
|
523
|
+
});
|
|
524
|
+
expect(result.rule).not.toBeNull();
|
|
525
|
+
expect(result.rule.badExample).toBe('debugger;\n');
|
|
526
|
+
});
|
|
527
|
+
it('persists badExample on the CompiledRule when the gate accepts', () => {
|
|
528
|
+
const parsed = {
|
|
529
|
+
compilable: true,
|
|
530
|
+
message: 'No console.log',
|
|
531
|
+
engine: 'regex',
|
|
532
|
+
pattern: 'console\\.log',
|
|
533
|
+
badExample: 'console.log("debug")',
|
|
534
|
+
};
|
|
535
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash, {
|
|
536
|
+
enforceSmokeGate: true,
|
|
537
|
+
});
|
|
538
|
+
expect(result.rule).not.toBeNull();
|
|
539
|
+
expect(result.rule.badExample).toBe('console.log("debug")');
|
|
540
|
+
});
|
|
541
|
+
it('honors badExampleOverride so Pipeline 3 can reuse its Bad snippet', () => {
|
|
542
|
+
const parsed = {
|
|
543
|
+
compilable: true,
|
|
544
|
+
message: 'No console.log',
|
|
545
|
+
engine: 'regex',
|
|
546
|
+
pattern: 'console\\.log',
|
|
547
|
+
// No badExample on parsed; caller supplies it via override
|
|
548
|
+
};
|
|
549
|
+
const result = buildCompiledRule(parsed, lesson, existingByHash, {
|
|
550
|
+
enforceSmokeGate: true,
|
|
551
|
+
badExampleOverride: 'console.log("bad")',
|
|
552
|
+
});
|
|
553
|
+
expect(result.rule).not.toBeNull();
|
|
554
|
+
expect(result.rule.badExample).toBe('console.log("bad")');
|
|
555
|
+
});
|
|
556
|
+
it('Pipeline 1 is unaffected (gate is opt-in via enforceSmokeGate)', () => {
|
|
557
|
+
// Without the option flag, buildCompiledRule must behave exactly as before.
|
|
558
|
+
// This pins the design invariant that Pipeline 1 / ad-hoc callers do not
|
|
559
|
+
// break in mmnto/totem#1408. The gate-flip for Pipeline 1 is a follow-up.
|
|
560
|
+
const parsed = {
|
|
561
|
+
compilable: true,
|
|
562
|
+
message: 'No console.log',
|
|
563
|
+
engine: 'regex',
|
|
564
|
+
pattern: 'console\\.log',
|
|
426
565
|
};
|
|
427
566
|
const result = buildCompiledRule(parsed, lesson, existingByHash);
|
|
428
567
|
expect(result.rule).not.toBeNull();
|
|
568
|
+
expect(result.rejectReason).toBeUndefined();
|
|
569
|
+
});
|
|
570
|
+
});
|
|
571
|
+
// ─── Compound rule + smoke gate invariants (mmnto-ai/totem#1409) ────
|
|
572
|
+
describe('compound rule smoke gate (mmnto-ai/totem#1409)', () => {
|
|
573
|
+
const compoundLesson = {
|
|
574
|
+
index: 0,
|
|
575
|
+
heading: 'No const declarations inside for loops',
|
|
576
|
+
body: 'Hoist the const out of the loop or use let.',
|
|
577
|
+
hash: 'compound-1409',
|
|
578
|
+
};
|
|
579
|
+
it('accepts a compound rule with inside: { kind: for_statement } against a matching badExample', () => {
|
|
580
|
+
// Happy path from the spike harness test 1: kind-based outer target
|
|
581
|
+
// is the supported way to express "inside a for-loop". The smoke
|
|
582
|
+
// gate must accept this when the badExample contains a for-loop
|
|
583
|
+
// body; that pins the canonical compound shape against silent
|
|
584
|
+
// regression.
|
|
585
|
+
const parsed = {
|
|
586
|
+
compilable: true,
|
|
587
|
+
message: 'No const inside for-loop',
|
|
588
|
+
engine: 'ast-grep',
|
|
589
|
+
astGrepYamlRule: {
|
|
590
|
+
rule: {
|
|
591
|
+
pattern: 'const $VAR = $VAL',
|
|
592
|
+
inside: { kind: 'for_statement', stopBy: 'end' },
|
|
593
|
+
},
|
|
594
|
+
},
|
|
595
|
+
badExample: 'for (let i = 0; i < 10; i++) {\n const inside = i * 2;\n}',
|
|
596
|
+
};
|
|
597
|
+
const result = buildCompiledRule(parsed, compoundLesson, existingByHash, {
|
|
598
|
+
enforceSmokeGate: true,
|
|
599
|
+
});
|
|
600
|
+
expect(result.rule).not.toBeNull();
|
|
429
601
|
expect(result.rule.engine).toBe('ast-grep');
|
|
602
|
+
expect(result.rule.astGrepYamlRule).toBeDefined();
|
|
603
|
+
});
|
|
604
|
+
it('rejects the inside: { pattern: for ($A; $B; $C) { $$$ } } sharp edge at the smoke gate', () => {
|
|
605
|
+
// Spike harness test 8 (compound.spike.test.ts:247) pins that
|
|
606
|
+
// pattern-shaped outer targets silently match zero in 0.42.0. The
|
|
607
|
+
// prompt forbids this shape; the smoke gate is the backstop. This
|
|
608
|
+
// test holds the gate honest: feed it the forbidden shape against
|
|
609
|
+
// the same snippet that the kind-based version matches, and the
|
|
610
|
+
// gate must reject because the runtime returns zero matches.
|
|
611
|
+
const parsed = {
|
|
612
|
+
compilable: true,
|
|
613
|
+
message: 'No const inside for-loop',
|
|
614
|
+
engine: 'ast-grep',
|
|
615
|
+
astGrepYamlRule: {
|
|
616
|
+
rule: {
|
|
617
|
+
pattern: 'const $VAR = $VAL',
|
|
618
|
+
inside: {
|
|
619
|
+
pattern: 'for ($INIT; $COND; $STEP) { $$$ }',
|
|
620
|
+
stopBy: 'end',
|
|
621
|
+
},
|
|
622
|
+
},
|
|
623
|
+
},
|
|
624
|
+
badExample: 'for (let i = 0; i < 10; i++) {\n const inside = i * 2;\n}',
|
|
625
|
+
};
|
|
626
|
+
const result = buildCompiledRule(parsed, compoundLesson, existingByHash, {
|
|
627
|
+
enforceSmokeGate: true,
|
|
628
|
+
});
|
|
629
|
+
expect(result.rule).toBeNull();
|
|
630
|
+
expect(result.rejectReason).toContain('smoke gate');
|
|
631
|
+
});
|
|
632
|
+
it('rejects a compound rule with no badExample at all (schema-shaped CompilerOutput, gate-shaped test)', () => {
|
|
633
|
+
// Test the buildCompiledRule layer directly - the schema layer is
|
|
634
|
+
// covered in compiler-schema.test.ts. Here we prove the smoke-gate
|
|
635
|
+
// path also rejects a compound rule that arrives with no
|
|
636
|
+
// badExample, so callers that bypass the schema (e.g., the
|
|
637
|
+
// upgrade flow) still get the gate's protection.
|
|
638
|
+
const parsed = {
|
|
639
|
+
compilable: true,
|
|
640
|
+
message: 'No const inside for-loop',
|
|
641
|
+
engine: 'ast-grep',
|
|
642
|
+
astGrepYamlRule: {
|
|
643
|
+
rule: {
|
|
644
|
+
pattern: 'const $VAR = $VAL',
|
|
645
|
+
inside: { kind: 'for_statement', stopBy: 'end' },
|
|
646
|
+
},
|
|
647
|
+
},
|
|
648
|
+
};
|
|
649
|
+
const result = buildCompiledRule(parsed, compoundLesson, existingByHash, {
|
|
650
|
+
enforceSmokeGate: true,
|
|
651
|
+
});
|
|
652
|
+
expect(result.rule).toBeNull();
|
|
653
|
+
expect(result.rejectReason).toContain('smoke gate');
|
|
654
|
+
expect(result.rejectReason).toContain('badExample');
|
|
430
655
|
});
|
|
431
656
|
});
|
|
432
657
|
// ─── buildManualRule ────────────────────────────────
|
|
@@ -520,6 +745,11 @@ describe('compileLesson', () => {
|
|
|
520
745
|
pattern: 'console\\.log',
|
|
521
746
|
message: 'No console.log',
|
|
522
747
|
engine: 'regex',
|
|
748
|
+
// mmnto/totem#1408: Pipeline 2 now requires a badExample that the
|
|
749
|
+
// smoke gate can match. Every existing happy-path test here still
|
|
750
|
+
// wants the rule to compile, so give the helper a known-good
|
|
751
|
+
// snippet that matches the pattern.
|
|
752
|
+
badExample: 'console.log("debug")',
|
|
523
753
|
}
|
|
524
754
|
: null),
|
|
525
755
|
runOrchestrator: vi.fn().mockResolvedValue(response),
|
|
@@ -535,6 +765,40 @@ describe('compileLesson', () => {
|
|
|
535
765
|
expect(result.status).toBe('compiled');
|
|
536
766
|
expect(deps.runOrchestrator).toHaveBeenCalled();
|
|
537
767
|
});
|
|
768
|
+
// ─── Smoke gate on Pipeline 2 (mmnto/totem#1408) ──
|
|
769
|
+
it('Pipeline 2 rejects a rule whose LLM output omits badExample', async () => {
|
|
770
|
+
const deps = {
|
|
771
|
+
parseCompilerResponse: vi.fn().mockReturnValue({
|
|
772
|
+
compilable: true,
|
|
773
|
+
pattern: 'console\\.log',
|
|
774
|
+
message: 'No console.log',
|
|
775
|
+
engine: 'regex',
|
|
776
|
+
// No badExample — gate must reject
|
|
777
|
+
}),
|
|
778
|
+
runOrchestrator: vi.fn().mockResolvedValue('{"compilable": true}'),
|
|
779
|
+
existingByHash: new Map(),
|
|
780
|
+
callbacks: { onWarn: vi.fn(), onDim: vi.fn() },
|
|
781
|
+
};
|
|
782
|
+
const result = await compileLesson(lesson, 'system prompt', deps);
|
|
783
|
+
expect(result.status).toBe('failed');
|
|
784
|
+
expect(deps.callbacks.onWarn).toHaveBeenCalledWith(lesson.heading, expect.stringContaining('smoke gate'));
|
|
785
|
+
});
|
|
786
|
+
it('Pipeline 2 accepts a rule whose LLM output supplies a matching badExample', async () => {
|
|
787
|
+
const deps = {
|
|
788
|
+
parseCompilerResponse: vi.fn().mockReturnValue({
|
|
789
|
+
compilable: true,
|
|
790
|
+
pattern: 'console\\.log',
|
|
791
|
+
message: 'No console.log',
|
|
792
|
+
engine: 'regex',
|
|
793
|
+
badExample: 'console.log("debug")',
|
|
794
|
+
}),
|
|
795
|
+
runOrchestrator: vi.fn().mockResolvedValue('{"compilable": true}'),
|
|
796
|
+
existingByHash: new Map(),
|
|
797
|
+
callbacks: { onWarn: vi.fn(), onDim: vi.fn() },
|
|
798
|
+
};
|
|
799
|
+
const result = await compileLesson(lesson, 'system prompt', deps);
|
|
800
|
+
expect(result.status).toBe('compiled');
|
|
801
|
+
});
|
|
538
802
|
// ─── Phase 3 systemPrompt threading (mmnto/totem#1291) ─────
|
|
539
803
|
it('passes compilerPrompt as the systemPrompt argument (Phase 3 cache target)', async () => {
|
|
540
804
|
const deps = makeDeps('{"compilable": true}');
|
|
@@ -586,6 +850,7 @@ describe('compileLesson', () => {
|
|
|
586
850
|
pattern: 'console\\.log',
|
|
587
851
|
message: 'No console.log',
|
|
588
852
|
engine: 'regex',
|
|
853
|
+
badExample: 'console.log("debug")',
|
|
589
854
|
}),
|
|
590
855
|
runOrchestrator: vi.fn().mockResolvedValue('{"compilable": true}'),
|
|
591
856
|
existingByHash: new Map(),
|
|
@@ -823,6 +1088,7 @@ describe('compileLesson with inline examples', () => {
|
|
|
823
1088
|
pattern: 'console\\.log',
|
|
824
1089
|
message: 'No console.log',
|
|
825
1090
|
engine: 'regex',
|
|
1091
|
+
badExample: 'console.log("debug")',
|
|
826
1092
|
}
|
|
827
1093
|
: null),
|
|
828
1094
|
runOrchestrator: vi.fn().mockResolvedValue(response),
|
|
@@ -943,11 +1209,14 @@ describe('compileLesson Pipeline 3 (Bad/Good snippets)', () => {
|
|
|
943
1209
|
expect(result.status).toBe('skipped');
|
|
944
1210
|
expect(deps.callbacks.onDim).toHaveBeenCalledWith(pipeline3Lesson.heading, expect.stringContaining('Pipeline 3'));
|
|
945
1211
|
});
|
|
946
|
-
it('
|
|
1212
|
+
it('rejects at the smoke gate when the pattern does not match the Bad snippet (mmnto/totem#1408)', async () => {
|
|
947
1213
|
const deps = {
|
|
948
1214
|
parseCompilerResponse: vi.fn().mockReturnValue({
|
|
949
1215
|
compilable: true,
|
|
950
|
-
// Pattern matches neither Bad nor Good
|
|
1216
|
+
// Pattern matches neither Bad nor Good - smoke gate catches this
|
|
1217
|
+
// before the old self-verification step ever runs. Pre-#1408 the
|
|
1218
|
+
// test asserted on the self-verification message; post-#1408 the
|
|
1219
|
+
// smoke gate is the earlier (and stricter) filter.
|
|
951
1220
|
pattern: 'this_matches_nothing_at_all',
|
|
952
1221
|
message: 'Wrong pattern',
|
|
953
1222
|
engine: 'regex',
|
|
@@ -958,7 +1227,7 @@ describe('compileLesson Pipeline 3 (Bad/Good snippets)', () => {
|
|
|
958
1227
|
};
|
|
959
1228
|
const result = await compileLesson(pipeline3Lesson, 'system prompt', deps);
|
|
960
1229
|
expect(result.status).toBe('failed');
|
|
961
|
-
expect(deps.callbacks.onWarn).toHaveBeenCalledWith(pipeline3Lesson.heading, expect.stringContaining('
|
|
1230
|
+
expect(deps.callbacks.onWarn).toHaveBeenCalledWith(pipeline3Lesson.heading, expect.stringContaining('smoke gate'));
|
|
962
1231
|
});
|
|
963
1232
|
it('passes self-verification when pattern matches Bad but not Good', async () => {
|
|
964
1233
|
const deps = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile-lesson.test.js","sourceRoot":"","sources":["../src/compile-lesson.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compile-lesson.test.js","sourceRoot":"","sources":["../src/compile-lesson.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,10 +26,23 @@ export type CompileManifest = z.infer<typeof CompileManifestSchema>;
|
|
|
26
26
|
* and line endings are normalized to `\n` before hashing.
|
|
27
27
|
*/
|
|
28
28
|
export declare function generateInputHash(lessonsDir: string): string;
|
|
29
|
+
export declare function canonicalStringify(value: unknown): string;
|
|
29
30
|
/**
|
|
30
31
|
* Generate a deterministic SHA-256 hash of the compiled rules file.
|
|
31
32
|
*
|
|
32
|
-
* Line endings are normalized to `\n` before hashing.
|
|
33
|
+
* Line endings are normalized to `\n` before hashing. For files that
|
|
34
|
+
* contain at least one compound `astGrepYamlRule`, the payload is
|
|
35
|
+
* re-serialised through `canonicalStringify` so key-order variation
|
|
36
|
+
* inside the yaml object cannot shift the hash (mmnto/totem#1407).
|
|
37
|
+
* Files without any compound rule keep the byte-stream path for
|
|
38
|
+
* backward compatibility with manifests written by pre-#1407 CLIs:
|
|
39
|
+
* the old and new computation match byte-for-byte in that case, so
|
|
40
|
+
* every user's existing compile-manifest.json stays valid after
|
|
41
|
+
* upgrading without a forced recompile.
|
|
42
|
+
*
|
|
43
|
+
* A parse failure falls back to the raw content so verify-manifest
|
|
44
|
+
* can still catch tampering on partial writes; it does not mask the
|
|
45
|
+
* error.
|
|
33
46
|
*/
|
|
34
47
|
export declare function generateOutputHash(rulesPath: string): string;
|
|
35
48
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile-manifest.d.ts","sourceRoot":"","sources":["../src/compile-manifest.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;EAMhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AA8BpE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAoB5D;AAED
|
|
1
|
+
{"version":3,"file":"compile-manifest.d.ts","sourceRoot":"","sources":["../src/compile-manifest.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;EAMhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AA8BpE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAoB5D;AAmDD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAsBzD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAuC5D;AAMD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAW1F;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,eAAe,CA6BzE"}
|