@principles/core 1.241.0 → 1.243.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.
- package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.d.ts +12 -0
- package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.d.ts.map +1 -0
- package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.js +114 -0
- package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.js.map +1 -0
- package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.d.ts +8 -0
- package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.d.ts.map +1 -0
- package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.js +56 -0
- package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.js.map +1 -0
- package/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js +14 -0
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.d.ts +15 -0
- package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.js +301 -0
- package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.js.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.d.ts +12 -0
- package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.js +176 -0
- package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.js.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.d.ts +11 -0
- package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.js +154 -0
- package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.js.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.d.ts +12 -0
- package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.js +254 -0
- package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.js.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.d.ts +15 -0
- package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.js +150 -0
- package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.js.map +1 -0
- package/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.js +12 -0
- package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/candidate-lineage.d.ts +136 -0
- package/dist/runtime-v2/internalization/candidate-lineage.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/candidate-lineage.js +230 -0
- package/dist/runtime-v2/internalization/candidate-lineage.js.map +1 -0
- package/dist/runtime-v2/internalization/context-manifest.d.ts +117 -0
- package/dist/runtime-v2/internalization/context-manifest.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/context-manifest.js +156 -0
- package/dist/runtime-v2/internalization/context-manifest.js.map +1 -0
- package/dist/runtime-v2/internalization/context-manifests.d.ts +74 -0
- package/dist/runtime-v2/internalization/context-manifests.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/context-manifests.js +192 -0
- package/dist/runtime-v2/internalization/context-manifests.js.map +1 -0
- package/dist/runtime-v2/internalization/dimension-coverage-policy.d.ts +54 -0
- package/dist/runtime-v2/internalization/dimension-coverage-policy.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/dimension-coverage-policy.js +70 -0
- package/dist/runtime-v2/internalization/dimension-coverage-policy.js.map +1 -0
- package/dist/runtime-v2/internalization/dreamer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/dreamer-runner.js +13 -1
- package/dist/runtime-v2/internalization/dreamer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-output.d.ts +26 -0
- package/dist/runtime-v2/internalization/evaluator-output.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-output.js +7 -1
- package/dist/runtime-v2/internalization/evaluator-output.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js +13 -0
- package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/progressive-evaluator.d.ts +115 -0
- package/dist/runtime-v2/internalization/progressive-evaluator.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/progressive-evaluator.js +248 -0
- package/dist/runtime-v2/internalization/progressive-evaluator.js.map +1 -0
- package/dist/runtime-v2/internalization/prompt-budget-manager.d.ts +90 -0
- package/dist/runtime-v2/internalization/prompt-budget-manager.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/prompt-budget-manager.js +149 -0
- package/dist/runtime-v2/internalization/prompt-budget-manager.js.map +1 -0
- package/dist/runtime-v2/internalization/resolve-injection.d.ts +62 -0
- package/dist/runtime-v2/internalization/resolve-injection.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/resolve-injection.js +78 -0
- package/dist/runtime-v2/internalization/resolve-injection.js.map +1 -0
- package/dist/runtime-v2/internalization/scribe-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/scribe-runner.js +10 -0
- package/dist/runtime-v2/internalization/scribe-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/summary-field-reader.d.ts +38 -0
- package/dist/runtime-v2/internalization/summary-field-reader.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/summary-field-reader.js +108 -0
- package/dist/runtime-v2/internalization/summary-field-reader.js.map +1 -0
- package/dist/runtime-v2/runner/base-peer-runner.d.ts +36 -0
- package/dist/runtime-v2/runner/base-peer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/runner/base-peer-runner.js +71 -0
- package/dist/runtime-v2/runner/base-peer-runner.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"candidate-lineage.property.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/internalization/__tests__/candidate-lineage.property.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Property tests for ContextManifest well-formedness + ranking
|
|
3
|
+
* (design §6.2, §6.6.1, tasks 5.3–5.4).
|
|
4
|
+
*
|
|
5
|
+
* CP-12: manifest well-formedness (built-in manifests + synthetic generators)
|
|
6
|
+
* CP-13: unlisted fields sort last via rankOf
|
|
7
|
+
*
|
|
8
|
+
* @see .kiro/specs/internalization-progressive-disclosure/design.md §6.2, §6.6.1
|
|
9
|
+
* @see .kiro/specs/internalization-progressive-disclosure/requirements.md Requirement 4
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=context-manifest.property.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-manifest.property.test.d.ts","sourceRoot":"","sources":["../../../../src/runtime-v2/internalization/__tests__/context-manifest.property.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Property tests for ContextManifest well-formedness + ranking
|
|
3
|
+
* (design §6.2, §6.6.1, tasks 5.3–5.4).
|
|
4
|
+
*
|
|
5
|
+
* CP-12: manifest well-formedness (built-in manifests + synthetic generators)
|
|
6
|
+
* CP-13: unlisted fields sort last via rankOf
|
|
7
|
+
*
|
|
8
|
+
* @see .kiro/specs/internalization-progressive-disclosure/design.md §6.2, §6.6.1
|
|
9
|
+
* @see .kiro/specs/internalization-progressive-disclosure/requirements.md Requirement 4
|
|
10
|
+
*/
|
|
11
|
+
import { describe, it, expect } from 'vitest';
|
|
12
|
+
import fc from 'fast-check';
|
|
13
|
+
import { CONTEXT_MANIFEST_SCHEMA_VERSION, validateManifest, rankOf, declaredFields, checkManifestCriterionAlignment, } from '../context-manifest.js';
|
|
14
|
+
import { BUILTIN_MANIFESTS, DREAMER_MANIFEST, SCRIBE_MANIFEST, ARTIFICER_MANIFEST, EVALUATOR_STAGE1_MANIFEST, EVALUATOR_STAGE2_MANIFEST, MANIFEST_RUNNER_KINDS, } from '../context-manifests.js';
|
|
15
|
+
import { DIMENSION_COVERAGE_POLICY, REQUIRED_FIDELITY_DIMENSIONS, ALL_DREAMER_DIMENSIONS, } from '../dimension-coverage-policy.js';
|
|
16
|
+
// ── CP-12: manifest well-formedness ──────────────────────────────────────────
|
|
17
|
+
describe('CP-12 — manifest well-formedness', () => {
|
|
18
|
+
it('BUILTIN_MANIFESTS has exactly 4 distinct runnerKinds (no diagnostic stage)', () => {
|
|
19
|
+
// dreamer, scribe, artificer, evaluator — never diag_rootcause/distiller/router
|
|
20
|
+
expect(MANIFEST_RUNNER_KINDS).toHaveLength(4);
|
|
21
|
+
expect(new Set(MANIFEST_RUNNER_KINDS)).toEqual(new Set(['dreamer', 'scribe', 'artificer', 'evaluator']));
|
|
22
|
+
for (const kind of MANIFEST_RUNNER_KINDS) {
|
|
23
|
+
expect(kind).not.toMatch(/^diag_/);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
it('every built-in manifest is well-formed (non-adjudicator path)', () => {
|
|
27
|
+
for (const m of BUILTIN_MANIFESTS) {
|
|
28
|
+
// Pass isAdjudicator only for evaluator manifests.
|
|
29
|
+
const isAdj = m.runnerKind === 'evaluator';
|
|
30
|
+
const result = validateManifest(m, { isAdjudicator: isAdj });
|
|
31
|
+
expect(result.ok, `manifest ${m.manifestId}: ${result.ok ? '' : JSON.stringify(result.error)}`).toBe(true);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
it('every built-in manifest has schemaVersion, positive budget, all-string tiers/priority', () => {
|
|
35
|
+
for (const m of BUILTIN_MANIFESTS) {
|
|
36
|
+
expect(m.schemaVersion).toBe(CONTEXT_MANIFEST_SCHEMA_VERSION);
|
|
37
|
+
expect(m.budgetTokens).toBeGreaterThan(0);
|
|
38
|
+
for (const arr of [m.tier0, m.tier1, m.tier2, m.priority]) {
|
|
39
|
+
for (const el of arr) {
|
|
40
|
+
expect(typeof el).toBe('string');
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
it('priority covers every declared field in every built-in manifest', () => {
|
|
46
|
+
// design §6.2: priority must cover tier0 ∪ tier1 ∪ tier2. The built-in
|
|
47
|
+
// manifests list every field explicitly.
|
|
48
|
+
for (const m of BUILTIN_MANIFESTS) {
|
|
49
|
+
const declared = new Set(declaredFields(m));
|
|
50
|
+
const priority = new Set(m.priority);
|
|
51
|
+
for (const path of declared) {
|
|
52
|
+
expect(priority.has(path), `${m.manifestId}: priority missing ${path}`).toBe(true);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
it('budgetTokens not positive → validation fails', () => {
|
|
57
|
+
const bad = { ...DREAMER_MANIFEST, budgetTokens: 0 };
|
|
58
|
+
const result = validateManifest(bad);
|
|
59
|
+
expect(result.ok).toBe(false);
|
|
60
|
+
if (!result.ok)
|
|
61
|
+
expect(result.error.kind).toBe('budget_not_positive');
|
|
62
|
+
});
|
|
63
|
+
it('non-string element in a tier → validation fails (rc-4)', () => {
|
|
64
|
+
const bad = { ...DREAMER_MANIFEST, tier1: [...DREAMER_MANIFEST.tier1, 123] };
|
|
65
|
+
const result = validateManifest(bad);
|
|
66
|
+
expect(result.ok).toBe(false);
|
|
67
|
+
if (!result.ok)
|
|
68
|
+
expect(result.error.kind).toBe('non_string_element');
|
|
69
|
+
});
|
|
70
|
+
it('synthetic manifests with injected non-string elements are always rejected', () => {
|
|
71
|
+
const validBase = DREAMER_MANIFEST;
|
|
72
|
+
fc.assert(fc.property(fc.constantFrom('tier0', 'tier1', 'tier2', 'priority'), fc.oneof(fc.integer(), fc.boolean(), fc.constant(null), fc.constant(undefined)), (arrayName, badElement) => {
|
|
73
|
+
const arr = validBase[arrayName];
|
|
74
|
+
const corrupted = [...arr, badElement];
|
|
75
|
+
const manifest = { ...validBase, [arrayName]: corrupted };
|
|
76
|
+
const result = validateManifest(manifest);
|
|
77
|
+
expect(result.ok).toBe(false);
|
|
78
|
+
if (!result.ok)
|
|
79
|
+
expect(result.error.kind).toBe('non_string_element');
|
|
80
|
+
}), { numRuns: 60 });
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
// ── INV-MANIFEST-CRITERION (§6.6.1) ───────────────────────────────────────────
|
|
84
|
+
describe('INV-MANIFEST-CRITERION — adjudicator manifests inject all non-excluded dims', () => {
|
|
85
|
+
it('both evaluator stage manifests inject all 4 non-excluded dreamer dimensions', () => {
|
|
86
|
+
// strategicPerspective is excluded; the other 4 must be injectable.
|
|
87
|
+
for (const m of [EVALUATOR_STAGE1_MANIFEST, EVALUATOR_STAGE2_MANIFEST]) {
|
|
88
|
+
const allPaths = new Set([...m.tier0, ...m.tier1, ...m.tier2]);
|
|
89
|
+
for (const dim of ALL_DREAMER_DIMENSIONS) {
|
|
90
|
+
const path = `dreamer.summary.${dim}`;
|
|
91
|
+
if (DIMENSION_COVERAGE_POLICY[dim] === 'excluded') {
|
|
92
|
+
// excluded dims must NOT be injected (design §6.6.1).
|
|
93
|
+
expect(allPaths.has(path), `${m.manifestId} must not inject excluded ${path}`).toBe(false);
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
expect(allPaths.has(path), `${m.manifestId} must inject ${path}`).toBe(true);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
it('promoting an excluded dim to required without adding its path fails alignment', () => {
|
|
102
|
+
// Simulate the regression: take STAGE1 (valid), drop dreamer.summary.riskLevel,
|
|
103
|
+
// and check alignment catches it.
|
|
104
|
+
const tampered = {
|
|
105
|
+
...EVALUATOR_STAGE1_MANIFEST,
|
|
106
|
+
tier1: EVALUATOR_STAGE1_MANIFEST.tier1.filter((p) => p !== 'dreamer.summary.riskLevel'),
|
|
107
|
+
};
|
|
108
|
+
const err = checkManifestCriterionAlignment(tampered, true);
|
|
109
|
+
expect(err).not.toBeNull();
|
|
110
|
+
expect(err?.kind).toBe('manifest_criterion_misaligned');
|
|
111
|
+
if (err && err.kind === 'manifest_criterion_misaligned') {
|
|
112
|
+
expect(err.detail).toContain('riskLevel');
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
it('non-evaluator manifests skip the alignment check (not adjudicators)', () => {
|
|
116
|
+
for (const m of [DREAMER_MANIFEST, SCRIBE_MANIFEST, ARTIFICER_MANIFEST]) {
|
|
117
|
+
expect(checkManifestCriterionAlignment(m, true)).toBeNull();
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
it('validateManifest flags misaligned adjudicator when isAdjudicator=true', () => {
|
|
121
|
+
const tampered = {
|
|
122
|
+
...EVALUATOR_STAGE1_MANIFEST,
|
|
123
|
+
tier1: EVALUATOR_STAGE1_MANIFEST.tier1.filter((p) => p !== 'dreamer.summary.betterDecision'),
|
|
124
|
+
};
|
|
125
|
+
const result = validateManifest(tampered, { isAdjudicator: true });
|
|
126
|
+
expect(result.ok).toBe(false);
|
|
127
|
+
if (!result.ok)
|
|
128
|
+
expect(result.error.kind).toBe('manifest_criterion_misaligned');
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
// ── CP-13: unlisted fields sort last ─────────────────────────────────────────
|
|
132
|
+
describe('CP-13 — unlisted fields sort last via rankOf', () => {
|
|
133
|
+
it('rankOf(listed field) === its index in priority', () => {
|
|
134
|
+
for (const m of BUILTIN_MANIFESTS) {
|
|
135
|
+
m.priority.forEach((path, idx) => {
|
|
136
|
+
expect(rankOf(path, m)).toBe(idx);
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
it('rankOf(unlisted declared field) is strictly greater than every listed field rank', () => {
|
|
141
|
+
fc.assert(fc.property(fc.constantFrom(...BUILTIN_MANIFESTS), fc.string({ minLength: 1, maxLength: 12 }).map((s) => `extra.${s}`), (m, extraPath) => {
|
|
142
|
+
fc.pre(!m.priority.includes(extraPath));
|
|
143
|
+
// Add extraPath to tier1 so it's "declared" but unlisted.
|
|
144
|
+
const tier1WithExtra = [...m.tier1, extraPath];
|
|
145
|
+
const manifest = { ...m, tier1: tier1WithExtra };
|
|
146
|
+
const extraRank = rankOf(extraPath, manifest);
|
|
147
|
+
for (const listed of m.priority) {
|
|
148
|
+
expect(extraRank).toBeGreaterThan(rankOf(listed, manifest));
|
|
149
|
+
}
|
|
150
|
+
}), { numRuns: 80 });
|
|
151
|
+
});
|
|
152
|
+
it('rankOf is deterministic: same input → same rank', () => {
|
|
153
|
+
for (const m of BUILTIN_MANIFESTS) {
|
|
154
|
+
for (const path of declaredFields(m)) {
|
|
155
|
+
expect(rankOf(path, m)).toBe(rankOf(path, m));
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
// ── dimension coverage policy sanity ─────────────────────────────────────────
|
|
161
|
+
describe('DIMENSION_COVERAGE_POLICY — single source of truth', () => {
|
|
162
|
+
it('covers all 5 dreamer dimensions', () => {
|
|
163
|
+
for (const dim of ALL_DREAMER_DIMENSIONS) {
|
|
164
|
+
expect(Object.hasOwn(DIMENSION_COVERAGE_POLICY, dim)).toBe(true);
|
|
165
|
+
}
|
|
166
|
+
expect(Object.keys(DIMENSION_COVERAGE_POLICY)).toHaveLength(5);
|
|
167
|
+
});
|
|
168
|
+
it('REQUIRED_FIDELITY_DIMENSIONS = exactly the required ones', () => {
|
|
169
|
+
expect(REQUIRED_FIDELITY_DIMENSIONS).toEqual(['betterDecision', 'rationale', 'riskLevel']);
|
|
170
|
+
});
|
|
171
|
+
it('strategicPerspective is the only excluded dimension', () => {
|
|
172
|
+
const excluded = ALL_DREAMER_DIMENSIONS.filter((d) => DIMENSION_COVERAGE_POLICY[d] === 'excluded');
|
|
173
|
+
expect(excluded).toEqual(['strategicPerspective']);
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
//# sourceMappingURL=context-manifest.property.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-manifest.property.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/internalization/__tests__/context-manifest.property.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EACL,+BAA+B,EAC/B,gBAAgB,EAChB,MAAM,EACN,cAAc,EACd,+BAA+B,GAEhC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,gFAAgF;AAEhF,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,gFAAgF;QAChF,MAAM,CAAC,qBAAqB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QACzG,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;YAClC,mDAAmD;YACnD,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,KAAK,WAAW,CAAC;YAC3C,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE,GAAG,EAAE;QAC/F,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;YAClC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC9D,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAC1C,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1D,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;oBACrB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,uEAAuE;QACvE,yCAAyC;QACzC,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,UAAU,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrF,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,GAAG,GAAoB,EAAE,GAAG,gBAAgB,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QACtE,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,GAAG,GAAG,EAAE,GAAG,gBAAgB,EAAE,KAAK,EAAE,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAwB,CAAC,EAAE,CAAC;QAClG,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACnF,MAAM,SAAS,GAAG,gBAAgB,CAAC;QACnC,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CACT,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EACtD,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAC/E,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,CAAC,GAAG,GAAG,EAAE,UAA+B,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAqB,CAAC;YAC7E,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAC1C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACvE,CAAC,CACF,EACD,EAAE,OAAO,EAAE,EAAE,EAAE,CAChB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,iFAAiF;AAEjF,QAAQ,CAAC,6EAA6E,EAAE,GAAG,EAAE;IAC3F,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACrF,oEAAoE;QACpE,KAAK,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,yBAAyB,CAAC,EAAE,CAAC;YACvE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,KAAK,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;gBACzC,MAAM,IAAI,GAAG,mBAAmB,GAAG,EAAE,CAAC;gBACtC,IAAI,yBAAyB,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,UAAU,6BAA6B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7F,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,UAAU,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;QACvF,gFAAgF;QAChF,kCAAkC;QAClC,MAAM,QAAQ,GAAoB;YAChC,GAAG,yBAAyB;YAC5B,KAAK,EAAE,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,2BAA2B,CAAC;SACxF,CAAC;QACF,MAAM,GAAG,GAAG,+BAA+B,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QACxD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,+BAA+B,EAAE,CAAC;YACxD,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,KAAK,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,CAAC,EAAE,CAAC;YACxE,MAAM,CAAC,+BAA+B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,QAAQ,GAAoB;YAChC,GAAG,yBAAyB;YAC5B,KAAK,EAAE,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,gCAAgC,CAAC;SAC7F,CAAC;QACF,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAEhF,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;IAC5D,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;YAClC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;gBAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CACT,EAAE,CAAC,YAAY,CAAC,GAAG,iBAAiB,CAAC,EACrC,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EACnE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;YACf,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YACxC,0DAA0D;YAC1D,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAoB,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;YAClE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC9C,KAAK,MAAM,MAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAChC,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CACF,EACD,EAAE,OAAO,EAAE,EAAE,EAAE,CAChB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;YAClC,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAEhF,QAAQ,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAClE,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,KAAK,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,CAAC,4BAA4B,CAAC,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC;QACnG,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Property tests for the progressive evaluator (design §6.5, tasks 9.2–9.3).
|
|
3
|
+
*
|
|
4
|
+
* CP-21: flagged criteria equivalence (flagged ⟺ reasons non-empty; missing
|
|
5
|
+
* fields → undetermined; required-only filter on missingDimensions)
|
|
6
|
+
* CP-22: deterministic forced sampling (fnv1a32, no Math.random)
|
|
7
|
+
*
|
|
8
|
+
* @see .kiro/specs/internalization-progressive-disclosure/design.md §6.5
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=progressive-evaluator.property.test.d.ts.map
|
package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressive-evaluator.property.test.d.ts","sourceRoot":"","sources":["../../../../src/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Property tests for the progressive evaluator (design §6.5, tasks 9.2–9.3).
|
|
3
|
+
*
|
|
4
|
+
* CP-21: flagged criteria equivalence (flagged ⟺ reasons non-empty; missing
|
|
5
|
+
* fields → undetermined; required-only filter on missingDimensions)
|
|
6
|
+
* CP-22: deterministic forced sampling (fnv1a32, no Math.random)
|
|
7
|
+
*
|
|
8
|
+
* @see .kiro/specs/internalization-progressive-disclosure/design.md §6.5
|
|
9
|
+
*/
|
|
10
|
+
import { describe, it, expect } from 'vitest';
|
|
11
|
+
import fc from 'fast-check';
|
|
12
|
+
import { evaluateFlaggedCriteria, isForcedStage2, fnv1a32, IMPLEMENTATION_FIDELITY_THRESHOLD, } from '../progressive-evaluator.js';
|
|
13
|
+
// ── CP-21: flagged criteria equivalence ──────────────────────────────────────
|
|
14
|
+
describe('CP-21 — flagged criteria equivalence', () => {
|
|
15
|
+
it('flagged === true iff reasons is non-empty', () => {
|
|
16
|
+
// A clearly flagged output: required dim missing.
|
|
17
|
+
const flagged = evaluateFlaggedCriteria({
|
|
18
|
+
compressionFidelity: { missingDimensions: ['riskLevel'], optionalUncovered: [], explanation: '' },
|
|
19
|
+
painCoverage: { fullyCovered: true, uncoveredAspects: [], explanation: '' },
|
|
20
|
+
implementationFidelity: { score: 0.9 },
|
|
21
|
+
});
|
|
22
|
+
expect(flagged.flagged).toBe(true);
|
|
23
|
+
expect(flagged.reasons).toHaveLength(1);
|
|
24
|
+
expect(flagged.reasons).toContain('missing_dimensions');
|
|
25
|
+
// A clean output: all pass.
|
|
26
|
+
const clean = evaluateFlaggedCriteria({
|
|
27
|
+
compressionFidelity: { missingDimensions: [], optionalUncovered: [], explanation: '' },
|
|
28
|
+
painCoverage: { fullyCovered: true, uncoveredAspects: [], explanation: '' },
|
|
29
|
+
implementationFidelity: { score: 0.9 },
|
|
30
|
+
});
|
|
31
|
+
expect(clean.flagged).toBe(false);
|
|
32
|
+
expect(clean.reasons).toHaveLength(0);
|
|
33
|
+
});
|
|
34
|
+
it('optional/excluded dims in missingDimensions do NOT trigger flag (required-only)', () => {
|
|
35
|
+
const result = evaluateFlaggedCriteria({
|
|
36
|
+
compressionFidelity: { missingDimensions: ['badDecision', 'strategicPerspective', 'unknownDim'], optionalUncovered: ['badDecision'], explanation: '' },
|
|
37
|
+
painCoverage: { fullyCovered: true, uncoveredAspects: [], explanation: '' },
|
|
38
|
+
implementationFidelity: { score: 0.9 },
|
|
39
|
+
});
|
|
40
|
+
expect(result.flagged).toBe(false);
|
|
41
|
+
expect(result.reasons).not.toContain('missing_dimensions');
|
|
42
|
+
});
|
|
43
|
+
it('painCoverage.fullyCovered === false triggers flag', () => {
|
|
44
|
+
const result = evaluateFlaggedCriteria({
|
|
45
|
+
compressionFidelity: { missingDimensions: [], optionalUncovered: [], explanation: '' },
|
|
46
|
+
painCoverage: { fullyCovered: false, uncoveredAspects: ['x'], explanation: '' },
|
|
47
|
+
implementationFidelity: { score: 0.9 },
|
|
48
|
+
});
|
|
49
|
+
expect(result.flagged).toBe(true);
|
|
50
|
+
expect(result.reasons).toContain('pain_not_fully_covered');
|
|
51
|
+
});
|
|
52
|
+
it('implementationFidelity.score < threshold triggers flag', () => {
|
|
53
|
+
const result = evaluateFlaggedCriteria({
|
|
54
|
+
compressionFidelity: { missingDimensions: [], optionalUncovered: [], explanation: '' },
|
|
55
|
+
painCoverage: { fullyCovered: true, uncoveredAspects: [], explanation: '' },
|
|
56
|
+
implementationFidelity: { score: IMPLEMENTATION_FIDELITY_THRESHOLD - 0.01 },
|
|
57
|
+
});
|
|
58
|
+
expect(result.flagged).toBe(true);
|
|
59
|
+
expect(result.reasons).toContain('implementation_fidelity_below_threshold');
|
|
60
|
+
});
|
|
61
|
+
it('score exactly at threshold does NOT trigger flag (boundary)', () => {
|
|
62
|
+
const result = evaluateFlaggedCriteria({
|
|
63
|
+
compressionFidelity: { missingDimensions: [], optionalUncovered: [], explanation: '' },
|
|
64
|
+
painCoverage: { fullyCovered: true, uncoveredAspects: [], explanation: '' },
|
|
65
|
+
implementationFidelity: { score: IMPLEMENTATION_FIDELITY_THRESHOLD },
|
|
66
|
+
});
|
|
67
|
+
expect(result.flagged).toBe(false);
|
|
68
|
+
});
|
|
69
|
+
it('missing fields → undetermined (never silent pass, rc-3)', () => {
|
|
70
|
+
const result = evaluateFlaggedCriteria({});
|
|
71
|
+
expect(result.flagged).toBe(false);
|
|
72
|
+
expect(result.undetermined.length).toBeGreaterThan(0);
|
|
73
|
+
expect(result.undetermined).toContain('compressionFidelity');
|
|
74
|
+
expect(result.undetermined).toContain('painCoverage');
|
|
75
|
+
expect(result.undetermined).toContain('implementationFidelity');
|
|
76
|
+
});
|
|
77
|
+
it('non-object input → all undetermined', () => {
|
|
78
|
+
const result = evaluateFlaggedCriteria(null);
|
|
79
|
+
expect(result.flagged).toBe(false);
|
|
80
|
+
expect(result.undetermined).toContain('output_not_object');
|
|
81
|
+
});
|
|
82
|
+
it('property: flagged ⟺ reasons non-empty across random inputs', () => {
|
|
83
|
+
const scoreGen = fc.float({ min: 0, max: 1, noNaN: true });
|
|
84
|
+
const fullyCoveredGen = fc.boolean();
|
|
85
|
+
const missingDimsGen = fc.array(fc.constantFrom('betterDecision', 'rationale', 'riskLevel', 'badDecision', 'strategicPerspective', 'unknownX'));
|
|
86
|
+
fc.assert(fc.property(scoreGen, fullyCoveredGen, missingDimsGen, (score, fullyCovered, missingDims) => {
|
|
87
|
+
const result = evaluateFlaggedCriteria({
|
|
88
|
+
compressionFidelity: { missingDimensions: missingDims, optionalUncovered: [], explanation: '' },
|
|
89
|
+
painCoverage: { fullyCovered, uncoveredAspects: [], explanation: '' },
|
|
90
|
+
implementationFidelity: { score },
|
|
91
|
+
});
|
|
92
|
+
// flagged MUST equal reasons.length > 0.
|
|
93
|
+
expect(result.flagged).toBe(result.reasons.length > 0);
|
|
94
|
+
}), { numRuns: 200 });
|
|
95
|
+
});
|
|
96
|
+
it('property: adversarial unknown input never throws, always returns a Result', () => {
|
|
97
|
+
const adversarial = fc.oneof(fc.constant(null), fc.constant(undefined), fc.string(), fc.integer(), fc.constant({}), fc.array(fc.anything()), fc.constant({ __proto__: { polluted: true } }));
|
|
98
|
+
fc.assert(fc.property(adversarial, (input) => {
|
|
99
|
+
const result = evaluateFlaggedCriteria(input);
|
|
100
|
+
expect(typeof result.flagged).toBe('boolean');
|
|
101
|
+
expect(Array.isArray(result.reasons)).toBe(true);
|
|
102
|
+
expect(Array.isArray(result.undetermined)).toBe(true);
|
|
103
|
+
}), { numRuns: 100 });
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
// ── CP-22: deterministic forced sampling ─────────────────────────────────────
|
|
107
|
+
describe('CP-22 — deterministic forced sampling', () => {
|
|
108
|
+
it('fnv1a32 is deterministic: same input → same output', () => {
|
|
109
|
+
fc.assert(fc.property(fc.string(), (s) => {
|
|
110
|
+
expect(fnv1a32(s)).toBe(fnv1a32(s));
|
|
111
|
+
}), { numRuns: 100 });
|
|
112
|
+
});
|
|
113
|
+
it('isForcedStage2 is deterministic: same taskId → same result', () => {
|
|
114
|
+
fc.assert(fc.property(fc.string(), (taskId) => {
|
|
115
|
+
expect(isForcedStage2(taskId)).toBe(isForcedStage2(taskId));
|
|
116
|
+
}), { numRuns: 100 });
|
|
117
|
+
});
|
|
118
|
+
it('Math.random is NOT used (replacing it with a throwing impl does not affect isForcedStage2)', () => {
|
|
119
|
+
const original = Math.random;
|
|
120
|
+
Math.random = () => { throw new Error('Math.random should not be called'); };
|
|
121
|
+
try {
|
|
122
|
+
for (const taskId of ['', 'a', 'test-123', '🎨', 'x'.repeat(1000)]) {
|
|
123
|
+
expect(() => isForcedStage2(taskId)).not.toThrow();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
finally {
|
|
127
|
+
Math.random = original;
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
it('modulus=1 forces every task; modulus<=0 forces none', () => {
|
|
131
|
+
expect(isForcedStage2('any-task', 1)).toBe(true);
|
|
132
|
+
expect(isForcedStage2('any-task', 0)).toBe(false);
|
|
133
|
+
expect(isForcedStage2('any-task', -1)).toBe(false);
|
|
134
|
+
});
|
|
135
|
+
it('~5% hit rate with default modulus (statistical sanity)', () => {
|
|
136
|
+
let hits = 0;
|
|
137
|
+
const total = 1000;
|
|
138
|
+
for (let i = 0; i < total; i++) {
|
|
139
|
+
if (isForcedStage2(`task-${i}`))
|
|
140
|
+
hits++;
|
|
141
|
+
}
|
|
142
|
+
// ~5% ± 3% tolerance for randomness-free deterministic distribution.
|
|
143
|
+
expect(hits).toBeGreaterThan(20);
|
|
144
|
+
expect(hits).toBeLessThan(80);
|
|
145
|
+
});
|
|
146
|
+
it('empty string / Unicode / super-long all produce finite results', () => {
|
|
147
|
+
for (const s of ['', '🎨', 'x'.repeat(10000)]) {
|
|
148
|
+
const hash = fnv1a32(s);
|
|
149
|
+
expect(Number.isFinite(hash)).toBe(true);
|
|
150
|
+
expect(hash).toBeGreaterThanOrEqual(0);
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
//# sourceMappingURL=progressive-evaluator.property.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressive-evaluator.property.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Property tests for PromptBudgetManager (design §6.3, tasks 5.6–5.8).
|
|
3
|
+
*
|
|
4
|
+
* CP-14: allocation determinism + total order
|
|
5
|
+
* CP-15: field conservation + budget accounting
|
|
6
|
+
* CP-16: bounded-safe preview serialization
|
|
7
|
+
*
|
|
8
|
+
* @see .kiro/specs/internalization-progressive-disclosure/design.md §6.3
|
|
9
|
+
* @see .kiro/specs/internalization-progressive-disclosure/requirements.md Requirement 5
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=prompt-budget-manager.property.test.d.ts.map
|
package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-budget-manager.property.test.d.ts","sourceRoot":"","sources":["../../../../src/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|