@mmnto/totem 1.70.1 → 1.71.1
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/compiler-schema.d.ts +21 -0
- package/dist/compiler-schema.d.ts.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/rule-engine.d.ts +11 -1
- package/dist/rule-engine.d.ts.map +1 -1
- package/dist/rule-engine.js +98 -5
- package/dist/rule-engine.js.map +1 -1
- package/dist/rule-engine.test.js +97 -1
- package/dist/rule-engine.test.js.map +1 -1
- package/dist/spine/legitimacy-projection.d.ts +61 -0
- package/dist/spine/legitimacy-projection.d.ts.map +1 -0
- package/dist/spine/legitimacy-projection.js +67 -0
- package/dist/spine/legitimacy-projection.js.map +1 -0
- package/dist/spine/legitimacy-projection.test.d.ts +2 -0
- package/dist/spine/legitimacy-projection.test.d.ts.map +1 -0
- package/dist/spine/legitimacy-projection.test.js +153 -0
- package/dist/spine/legitimacy-projection.test.js.map +1 -0
- package/dist/spine/windtunnel-firing.d.ts +15 -10
- package/dist/spine/windtunnel-firing.d.ts.map +1 -1
- package/dist/spine/windtunnel-firing.js +51 -14
- package/dist/spine/windtunnel-firing.js.map +1 -1
- package/dist/spine/windtunnel-firing.test.js +24 -0
- package/dist/spine/windtunnel-firing.test.js.map +1 -1
- package/dist/spine/windtunnel-lock.d.ts +9 -0
- package/dist/spine/windtunnel-lock.d.ts.map +1 -1
- package/dist/spine/windtunnel-lock.js +17 -0
- package/dist/spine/windtunnel-lock.js.map +1 -1
- package/dist/spine/windtunnel-lock.test.js +24 -0
- package/dist/spine/windtunnel-lock.test.js.map +1 -1
- package/dist/spine/windtunnel-scorer.d.ts +22 -0
- package/dist/spine/windtunnel-scorer.d.ts.map +1 -1
- package/dist/spine/windtunnel-scorer.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule-engine.test.js","sourceRoot":"","sources":["../src/rule-engine.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rule-engine.test.js","sourceRoot":"","sources":["../src/rule-engine.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { type CompiledRule, type CompiledRulesFile, type ProvenanceRecord } from '../compiler-schema.js';
|
|
2
|
+
import type { PerRuleControlResult } from './windtunnel-firing.js';
|
|
3
|
+
import type { WindtunnelVerdict } from './windtunnel-scorer.js';
|
|
4
|
+
export interface LegitimacyProjectionInput {
|
|
5
|
+
/** The scorer's run-level verdict. Only PASS stamps survivors (§6 L3). */
|
|
6
|
+
verdict: WindtunnelVerdict;
|
|
7
|
+
/**
|
|
8
|
+
* C1 per-rule control results over the SURVIVORS (active, non-culled rules),
|
|
9
|
+
* keyed by ruleId (= lessonHash). A rule absent here is not a survivor.
|
|
10
|
+
*/
|
|
11
|
+
perRuleControls: Map<string, PerRuleControlResult>;
|
|
12
|
+
/** Candidate (minted) compiled rules to consider for stamping. */
|
|
13
|
+
candidates: CompiledRule[];
|
|
14
|
+
/** Mining provenance per rule (lessonHash → provenance) from the compile stage. */
|
|
15
|
+
provenanceByRule: Map<string, ProvenanceRecord>;
|
|
16
|
+
}
|
|
17
|
+
/** A rule that was NOT stamped, with the reason — for the cert-run report. */
|
|
18
|
+
export type LegitimacyProjectionSkip = {
|
|
19
|
+
reason: 'verdict-not-pass';
|
|
20
|
+
verdict: WindtunnelVerdict['verdict'];
|
|
21
|
+
} | {
|
|
22
|
+
reason: 'not-a-survivor' | 'missing-provenance';
|
|
23
|
+
ruleId: string;
|
|
24
|
+
};
|
|
25
|
+
export interface LegitimacyProjectionResult {
|
|
26
|
+
/** Survivor rules stamped with legitimacy + ruleClass (PASS-only; else empty). */
|
|
27
|
+
stamped: CompiledRule[];
|
|
28
|
+
/** Run-level + per-rule skips (never silently dropped — they feed the report). */
|
|
29
|
+
skips: LegitimacyProjectionSkip[];
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* fold-B — project the wind-tunnel verdict + C1 per-rule control results onto
|
|
33
|
+
* per-rule legitimacy stamps, SURVIVOR-ONLY and PASS-ONLY (ADR-110; §6 L3).
|
|
34
|
+
*
|
|
35
|
+
* - verdict ≠ PASS ⟹ stamp NOTHING. HONEST-NEGATIVE / FAIL / needs-adjudication
|
|
36
|
+
* are non-terminals; they belong in the cert-run report, never the live
|
|
37
|
+
* corpus (corpus population is strategy#516's job).
|
|
38
|
+
* - On PASS, each survivor (present in `perRuleControls`) is stamped with
|
|
39
|
+
* `legitimacy = {provenance, positiveControl, negativeControl}` from its OWN
|
|
40
|
+
* control result (never the global `nonVacuity`, which would over-stamp a rule
|
|
41
|
+
* that never exercised a control). `unverified` is flipped to `false` ONLY
|
|
42
|
+
* when BOTH controls passed (binding-4: never promote until the verdict
|
|
43
|
+
* promotes); otherwise it stays `true` ⟹ advisory. `ruleClass` is
|
|
44
|
+
* `deriveRuleClass(...)` over the stamped fields, so the legitimacy⇔ruleClass
|
|
45
|
+
* consistency superRefine in `CompiledRuleSchema` holds by construction (the
|
|
46
|
+
* fold-C parse-before-write net then re-checks it before any bytes hit disk).
|
|
47
|
+
*
|
|
48
|
+
* Pure: no IO, no clock. Returns new rule objects; inputs are not mutated.
|
|
49
|
+
*/
|
|
50
|
+
export declare function projectLegitimacy(input: LegitimacyProjectionInput): LegitimacyProjectionResult;
|
|
51
|
+
/**
|
|
52
|
+
* fold-C — assemble the compiled-rules file payload and run it through
|
|
53
|
+
* `CompiledRulesFileSchema.parse` IMMEDIATELY before persistence, so any
|
|
54
|
+
* half-stamped rule (legitimacy without ruleClass, ruleClass without legitimacy,
|
|
55
|
+
* or an inconsistent ruleClass — the consistency superRefine) fails LOUD BEFORE
|
|
56
|
+
* a single byte reaches disk. The certifying orchestrator passes the returned,
|
|
57
|
+
* validated `CompiledRulesFile` straight to `saveCompiledRulesFile`. Pure:
|
|
58
|
+
* throws (`ZodError`) on inconsistency, never writes.
|
|
59
|
+
*/
|
|
60
|
+
export declare function buildCertifiedRulesFile(stamped: CompiledRule[]): CompiledRulesFile;
|
|
61
|
+
//# sourceMappingURL=legitimacy-projection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legitimacy-projection.d.ts","sourceRoot":"","sources":["../../src/spine/legitimacy-projection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAItB,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,MAAM,WAAW,yBAAyB;IACxC,0EAA0E;IAC1E,OAAO,EAAE,iBAAiB,CAAC;IAC3B;;;OAGG;IACH,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACnD,kEAAkE;IAClE,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,mFAAmF;IACnF,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CACjD;AAED,8EAA8E;AAC9E,MAAM,MAAM,wBAAwB,GAChC;IAAE,MAAM,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAA;CAAE,GACrE;IAAE,MAAM,EAAE,gBAAgB,GAAG,oBAAoB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,MAAM,WAAW,0BAA0B;IACzC,kFAAkF;IAClF,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,kFAAkF;IAClF,KAAK,EAAE,wBAAwB,EAAE,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,yBAAyB,GAAG,0BAA0B,CAkC9F;AAID;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,iBAAiB,CAElF"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { CompiledRulesFileSchema, deriveRuleClass, } from '../compiler-schema.js';
|
|
2
|
+
/**
|
|
3
|
+
* fold-B — project the wind-tunnel verdict + C1 per-rule control results onto
|
|
4
|
+
* per-rule legitimacy stamps, SURVIVOR-ONLY and PASS-ONLY (ADR-110; §6 L3).
|
|
5
|
+
*
|
|
6
|
+
* - verdict ≠ PASS ⟹ stamp NOTHING. HONEST-NEGATIVE / FAIL / needs-adjudication
|
|
7
|
+
* are non-terminals; they belong in the cert-run report, never the live
|
|
8
|
+
* corpus (corpus population is strategy#516's job).
|
|
9
|
+
* - On PASS, each survivor (present in `perRuleControls`) is stamped with
|
|
10
|
+
* `legitimacy = {provenance, positiveControl, negativeControl}` from its OWN
|
|
11
|
+
* control result (never the global `nonVacuity`, which would over-stamp a rule
|
|
12
|
+
* that never exercised a control). `unverified` is flipped to `false` ONLY
|
|
13
|
+
* when BOTH controls passed (binding-4: never promote until the verdict
|
|
14
|
+
* promotes); otherwise it stays `true` ⟹ advisory. `ruleClass` is
|
|
15
|
+
* `deriveRuleClass(...)` over the stamped fields, so the legitimacy⇔ruleClass
|
|
16
|
+
* consistency superRefine in `CompiledRuleSchema` holds by construction (the
|
|
17
|
+
* fold-C parse-before-write net then re-checks it before any bytes hit disk).
|
|
18
|
+
*
|
|
19
|
+
* Pure: no IO, no clock. Returns new rule objects; inputs are not mutated.
|
|
20
|
+
*/
|
|
21
|
+
export function projectLegitimacy(input) {
|
|
22
|
+
const { verdict, perRuleControls, candidates, provenanceByRule } = input;
|
|
23
|
+
if (verdict.verdict !== 'PASS') {
|
|
24
|
+
return { stamped: [], skips: [{ reason: 'verdict-not-pass', verdict: verdict.verdict }] };
|
|
25
|
+
}
|
|
26
|
+
const stamped = [];
|
|
27
|
+
const skips = [];
|
|
28
|
+
for (const rule of candidates) {
|
|
29
|
+
const control = perRuleControls.get(rule.lessonHash);
|
|
30
|
+
if (!control) {
|
|
31
|
+
// Not a survivor (culled by a negative control, or never minted) — never stamped.
|
|
32
|
+
skips.push({ reason: 'not-a-survivor', ruleId: rule.lessonHash });
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const provenance = provenanceByRule.get(rule.lessonHash);
|
|
36
|
+
if (!provenance) {
|
|
37
|
+
// A survivor without provenance cannot be legitimately stamped — surface it
|
|
38
|
+
// (a provenance gap is a real defect) rather than fabricate a marker.
|
|
39
|
+
skips.push({ reason: 'missing-provenance', ruleId: rule.lessonHash });
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
const legitimacy = {
|
|
43
|
+
provenance,
|
|
44
|
+
positiveControl: control.positiveControl,
|
|
45
|
+
negativeControl: control.negativeControl,
|
|
46
|
+
};
|
|
47
|
+
// binding-4: promote (unverified:false) ONLY when both controls passed.
|
|
48
|
+
const unverified = !(control.positiveControl && control.negativeControl);
|
|
49
|
+
const ruleClass = deriveRuleClass({ legitimacy, unverified });
|
|
50
|
+
stamped.push({ ...rule, legitimacy, ruleClass, unverified });
|
|
51
|
+
}
|
|
52
|
+
return { stamped, skips };
|
|
53
|
+
}
|
|
54
|
+
// ─── fold-C: parse-before-write net ──────────────────
|
|
55
|
+
/**
|
|
56
|
+
* fold-C — assemble the compiled-rules file payload and run it through
|
|
57
|
+
* `CompiledRulesFileSchema.parse` IMMEDIATELY before persistence, so any
|
|
58
|
+
* half-stamped rule (legitimacy without ruleClass, ruleClass without legitimacy,
|
|
59
|
+
* or an inconsistent ruleClass — the consistency superRefine) fails LOUD BEFORE
|
|
60
|
+
* a single byte reaches disk. The certifying orchestrator passes the returned,
|
|
61
|
+
* validated `CompiledRulesFile` straight to `saveCompiledRulesFile`. Pure:
|
|
62
|
+
* throws (`ZodError`) on inconsistency, never writes.
|
|
63
|
+
*/
|
|
64
|
+
export function buildCertifiedRulesFile(stamped) {
|
|
65
|
+
return CompiledRulesFileSchema.parse({ version: 1, rules: stamped });
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=legitimacy-projection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legitimacy-projection.js","sourceRoot":"","sources":["../../src/spine/legitimacy-projection.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,uBAAuB,EACvB,eAAe,GAGhB,MAAM,uBAAuB,CAAC;AAgC/B;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAgC;IAChE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;IAEzE,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC/B,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;IAC5F,CAAC;IAED,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,KAAK,GAA+B,EAAE,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,kFAAkF;YAClF,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YAClE,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,4EAA4E;YAC5E,sEAAsE;YACtE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YACtE,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAe;YAC7B,UAAU;YACV,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC;QACF,wEAAwE;QACxE,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,wDAAwD;AAExD;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAuB;IAC7D,OAAO,uBAAuB,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legitimacy-projection.test.d.ts","sourceRoot":"","sources":["../../src/spine/legitimacy-projection.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { buildCertifiedRulesFile, projectLegitimacy } from './legitimacy-projection.js';
|
|
3
|
+
// ─── Fixtures ────────────────────────────────────────
|
|
4
|
+
const COMMIT = 'a'.repeat(40);
|
|
5
|
+
function provenance(mergedPr = 100) {
|
|
6
|
+
return { mergedPr, reviewThread: `pr#${mergedPr}/thread-1`, commitSha: COMMIT };
|
|
7
|
+
}
|
|
8
|
+
function makeRule(lessonHash, overrides = {}) {
|
|
9
|
+
return {
|
|
10
|
+
lessonHash,
|
|
11
|
+
lessonHeading: `Rule ${lessonHash}`,
|
|
12
|
+
pattern: 'debugger',
|
|
13
|
+
message: 'no debugger',
|
|
14
|
+
engine: 'regex',
|
|
15
|
+
compiledAt: '2026-06-20T00:00:00.000Z',
|
|
16
|
+
...overrides,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
function makeVerdict(kind) {
|
|
20
|
+
return {
|
|
21
|
+
verdict: kind,
|
|
22
|
+
precision: kind === 'PASS' ? 1.0 : null,
|
|
23
|
+
mintedRuleCount: 1,
|
|
24
|
+
culledCount: 0,
|
|
25
|
+
survivingRuleCount: 1,
|
|
26
|
+
exposureTuple: [2, 1, 1],
|
|
27
|
+
cullLedger: [],
|
|
28
|
+
nonVacuity: kind === 'PASS',
|
|
29
|
+
needsAdjudication: [],
|
|
30
|
+
diagnostics: { survivorPrecision: kind === 'PASS' ? 1.0 : null },
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
function control(positiveControl, negativeControl = true) {
|
|
34
|
+
return { positiveControl, negativeControl, evidenceRefs: [] };
|
|
35
|
+
}
|
|
36
|
+
// ─── fold-B: legitimacy projection ───────────────────
|
|
37
|
+
describe('projectLegitimacy (fold-B)', () => {
|
|
38
|
+
it('PASS + both controls ⟹ legitimacy {true,true}, ruleClass hard, unverified false', () => {
|
|
39
|
+
const result = projectLegitimacy({
|
|
40
|
+
verdict: makeVerdict('PASS'),
|
|
41
|
+
perRuleControls: new Map([['r1', control(true, true)]]),
|
|
42
|
+
candidates: [makeRule('r1')],
|
|
43
|
+
provenanceByRule: new Map([['r1', provenance()]]),
|
|
44
|
+
});
|
|
45
|
+
expect(result.stamped).toHaveLength(1);
|
|
46
|
+
const stamped = result.stamped[0];
|
|
47
|
+
expect(stamped.legitimacy).toEqual({
|
|
48
|
+
provenance: provenance(),
|
|
49
|
+
positiveControl: true,
|
|
50
|
+
negativeControl: true,
|
|
51
|
+
});
|
|
52
|
+
expect(stamped.ruleClass).toBe('hard');
|
|
53
|
+
expect(stamped.unverified).toBe(false);
|
|
54
|
+
expect(result.skips).toHaveLength(0);
|
|
55
|
+
});
|
|
56
|
+
it('PASS + positiveControl FALSE ⟹ advisory, unverified stays true (binding-4: no premature promotion)', () => {
|
|
57
|
+
const result = projectLegitimacy({
|
|
58
|
+
verdict: makeVerdict('PASS'),
|
|
59
|
+
perRuleControls: new Map([['r1', control(false, true)]]),
|
|
60
|
+
candidates: [makeRule('r1')],
|
|
61
|
+
provenanceByRule: new Map([['r1', provenance()]]),
|
|
62
|
+
});
|
|
63
|
+
expect(result.stamped).toHaveLength(1);
|
|
64
|
+
const stamped = result.stamped[0];
|
|
65
|
+
expect(stamped.legitimacy.positiveControl).toBe(false);
|
|
66
|
+
expect(stamped.ruleClass).toBe('advisory');
|
|
67
|
+
expect(stamped.unverified).toBe(true);
|
|
68
|
+
});
|
|
69
|
+
it('non-PASS verdict ⟹ stamps NOTHING (non-terminals never touch the corpus, §6 L3)', () => {
|
|
70
|
+
for (const kind of ['HONEST-NEGATIVE', 'FAIL']) {
|
|
71
|
+
const result = projectLegitimacy({
|
|
72
|
+
verdict: makeVerdict(kind),
|
|
73
|
+
perRuleControls: new Map([['r1', control(true, true)]]),
|
|
74
|
+
candidates: [makeRule('r1')],
|
|
75
|
+
provenanceByRule: new Map([['r1', provenance()]]),
|
|
76
|
+
});
|
|
77
|
+
expect(result.stamped).toHaveLength(0);
|
|
78
|
+
expect(result.skips).toEqual([{ reason: 'verdict-not-pass', verdict: kind }]);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
it('a candidate that is not a survivor (absent from perRuleControls) is skipped, not stamped', () => {
|
|
82
|
+
const result = projectLegitimacy({
|
|
83
|
+
verdict: makeVerdict('PASS'),
|
|
84
|
+
perRuleControls: new Map(), // r1 culled / not a survivor
|
|
85
|
+
candidates: [makeRule('r1')],
|
|
86
|
+
provenanceByRule: new Map([['r1', provenance()]]),
|
|
87
|
+
});
|
|
88
|
+
expect(result.stamped).toHaveLength(0);
|
|
89
|
+
expect(result.skips).toEqual([{ reason: 'not-a-survivor', ruleId: 'r1' }]);
|
|
90
|
+
});
|
|
91
|
+
it('a survivor missing provenance is surfaced as a skip, never fabricated', () => {
|
|
92
|
+
const result = projectLegitimacy({
|
|
93
|
+
verdict: makeVerdict('PASS'),
|
|
94
|
+
perRuleControls: new Map([['r1', control(true, true)]]),
|
|
95
|
+
candidates: [makeRule('r1')],
|
|
96
|
+
provenanceByRule: new Map(), // no provenance for r1
|
|
97
|
+
});
|
|
98
|
+
expect(result.stamped).toHaveLength(0);
|
|
99
|
+
expect(result.skips).toEqual([{ reason: 'missing-provenance', ruleId: 'r1' }]);
|
|
100
|
+
});
|
|
101
|
+
it('does not mutate the input candidate rule', () => {
|
|
102
|
+
const candidate = makeRule('r1');
|
|
103
|
+
projectLegitimacy({
|
|
104
|
+
verdict: makeVerdict('PASS'),
|
|
105
|
+
perRuleControls: new Map([['r1', control(true, true)]]),
|
|
106
|
+
candidates: [candidate],
|
|
107
|
+
provenanceByRule: new Map([['r1', provenance()]]),
|
|
108
|
+
});
|
|
109
|
+
expect(candidate.legitimacy).toBeUndefined();
|
|
110
|
+
expect(candidate.ruleClass).toBeUndefined();
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
// ─── fold-C: parse-before-write net ──────────────────
|
|
114
|
+
describe('buildCertifiedRulesFile (fold-C parse-before-write)', () => {
|
|
115
|
+
it('round-trips a consistently-stamped projection output', () => {
|
|
116
|
+
const { stamped } = projectLegitimacy({
|
|
117
|
+
verdict: makeVerdict('PASS'),
|
|
118
|
+
perRuleControls: new Map([['r1', control(true, true)]]),
|
|
119
|
+
candidates: [makeRule('r1')],
|
|
120
|
+
provenanceByRule: new Map([['r1', provenance()]]),
|
|
121
|
+
});
|
|
122
|
+
const file = buildCertifiedRulesFile(stamped);
|
|
123
|
+
expect(file.version).toBe(1);
|
|
124
|
+
expect(file.rules).toHaveLength(1);
|
|
125
|
+
expect(file.rules[0].ruleClass).toBe('hard');
|
|
126
|
+
});
|
|
127
|
+
it('throws BEFORE disk on a half-stamp: legitimacy without ruleClass', () => {
|
|
128
|
+
const halfStamped = {
|
|
129
|
+
...makeRule('r1'),
|
|
130
|
+
legitimacy: { provenance: provenance(), positiveControl: true, negativeControl: true },
|
|
131
|
+
// ruleClass intentionally absent — the superRefine must reject this
|
|
132
|
+
};
|
|
133
|
+
expect(() => buildCertifiedRulesFile([halfStamped])).toThrow();
|
|
134
|
+
});
|
|
135
|
+
it('throws BEFORE disk on a half-stamp: ruleClass without legitimacy', () => {
|
|
136
|
+
const halfStamped = {
|
|
137
|
+
...makeRule('r1'),
|
|
138
|
+
ruleClass: 'hard',
|
|
139
|
+
// legitimacy intentionally absent — the superRefine must reject this
|
|
140
|
+
};
|
|
141
|
+
expect(() => buildCertifiedRulesFile([halfStamped])).toThrow();
|
|
142
|
+
});
|
|
143
|
+
it('throws BEFORE disk on an inconsistent ruleClass (hard stamp without passing controls)', () => {
|
|
144
|
+
const inconsistent = {
|
|
145
|
+
...makeRule('r1'),
|
|
146
|
+
legitimacy: { provenance: provenance(), positiveControl: false, negativeControl: true },
|
|
147
|
+
ruleClass: 'hard', // derived class is 'advisory' (positiveControl false) — inconsistent
|
|
148
|
+
unverified: true,
|
|
149
|
+
};
|
|
150
|
+
expect(() => buildCertifiedRulesFile([inconsistent])).toThrow();
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
//# sourceMappingURL=legitimacy-projection.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legitimacy-projection.test.js","sourceRoot":"","sources":["../../src/spine/legitimacy-projection.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,13 +72,17 @@ export declare class ArchivedRuleInScopeError extends Error {
|
|
|
72
72
|
*/
|
|
73
73
|
export declare function assertNoArchivedRules(rules: CompiledRule[]): void;
|
|
74
74
|
/**
|
|
75
|
-
* A1 (fold-D) —
|
|
76
|
-
* `scoreWindtunnel` (Tenet 4).
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
75
|
+
* A1 (fold-D) — assert `firings.length === unique(labelIds).size` BEFORE
|
|
76
|
+
* `scoreWindtunnel` (Tenet 4). Originally specced as a hard-gate FLOOR that
|
|
77
|
+
* threw on any collision; the strategy ruling (2026-06-20) DEMOTED it to a
|
|
78
|
+
* post-dedup invariant once `buildFirings` learned to collapse same-labelId
|
|
79
|
+
* matches (`dedupeFirings`). It still THROWS on a collision — but a collision
|
|
80
|
+
* here now means a dedup BUG (or a caller that bypassed `buildFirings`), not an
|
|
81
|
+
* honest multi-match line, so failing loud is correct. We deliberately do NOT
|
|
82
|
+
* add an occurrence discriminator / ordinal (it would regress `firingLabelId`'s
|
|
83
|
+
* line-drift resistance); a diff-hunk-span discriminator stays reserved. The
|
|
84
|
+
* invariant guards the `labelId→evidenceRef` contract the ground-truth join
|
|
85
|
+
* depends on: a 1:1 labelId→firing map.
|
|
82
86
|
*/
|
|
83
87
|
export declare function assertUniqueFiringLabels(firings: RuleFiring[]): void;
|
|
84
88
|
export interface BuildFiringsInput {
|
|
@@ -121,9 +125,10 @@ export interface BuildFiringsResult {
|
|
|
121
125
|
* - **C2**: `filesTouchedInWindow` is the count of distinct post-image files
|
|
122
126
|
* across all diffs — the real third exposure leg.
|
|
123
127
|
*
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
128
|
+
* fold-D: before returning, same-`labelId` matches are collapsed to ONE logical
|
|
129
|
+
* firing (`dedupeFirings`), retaining every raw match as `evidence`. The caller's
|
|
130
|
+
* `assertUniqueFiringLabels` is therefore a post-dedup INVARIANT (it can no
|
|
131
|
+
* longer fire on an honest multi-match line), not a pre-score floor.
|
|
127
132
|
*/
|
|
128
133
|
export declare function buildFirings(input: BuildFiringsInput): Promise<BuildFiringsResult>;
|
|
129
134
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windtunnel-firing.d.ts","sourceRoot":"","sources":["../../src/spine/windtunnel-firing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAA2B,MAAM,uBAAuB,CAAC;AAEnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;IAChD,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,mFAAmF;IACnF,eAAe,EAAE,OAAO,CAAC;IACzB,gFAAgF;IAChF,eAAe,EAAE,OAAO,CAAC;IACzB,uEAAuE;IACvE,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,YAAY,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5F;AAED,0EAA0E;AAC1E,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,UAAU,EAAE,oBAAoB,EAAE,CAAC;gBAChC,UAAU,EAAE,oBAAoB,EAAE;CAkB/C;AAED,6EAA6E;AAC7E,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;gBACvB,eAAe,EAAE,MAAM,EAAE;CAStC;AAqBD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI,CAKjE;AAID
|
|
1
|
+
{"version":3,"file":"windtunnel-firing.d.ts","sourceRoot":"","sources":["../../src/spine/windtunnel-firing.ts"],"names":[],"mappings":"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"}
|