zelari-code 2.0.0-alpha.6 → 2.0.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.
Files changed (47) hide show
  1. package/dist/cli/headless.js +9 -0
  2. package/dist/cli/headless.js.map +1 -1
  3. package/dist/cli/headlessE2eSession.test.js +189 -0
  4. package/dist/cli/headlessE2eSession.test.js.map +1 -0
  5. package/dist/cli/headlessSpine.js +6 -0
  6. package/dist/cli/headlessSpine.js.map +1 -1
  7. package/dist/cli/hooks/chatState.js.map +1 -1
  8. package/dist/cli/hooks/eventsToMessages.js.map +1 -1
  9. package/dist/cli/hooks/useChatTurn.js +5 -3
  10. package/dist/cli/hooks/useChatTurn.js.map +1 -1
  11. package/dist/cli/hooks/useSession.js +0 -2
  12. package/dist/cli/hooks/useSession.js.map +1 -1
  13. package/dist/cli/kraken/evidenceAnchoring.test.js +92 -0
  14. package/dist/cli/kraken/evidenceAnchoring.test.js.map +1 -0
  15. package/dist/cli/kraken/nativeVerification.js +113 -0
  16. package/dist/cli/kraken/nativeVerification.js.map +1 -0
  17. package/dist/cli/kraken/nativeVerification.test.js +207 -0
  18. package/dist/cli/kraken/nativeVerification.test.js.map +1 -0
  19. package/dist/cli/kraken/strictDefaults.test.js +149 -0
  20. package/dist/cli/kraken/strictDefaults.test.js.map +1 -0
  21. package/dist/cli/kraken/verificationBridge.js +86 -8
  22. package/dist/cli/kraken/verificationBridge.js.map +1 -1
  23. package/dist/cli/kraken/verificationBridge.session.test.js +2 -2
  24. package/dist/cli/kraken/verificationBridge.session.test.js.map +1 -1
  25. package/dist/cli/kraken/verificationBridge.test.js +38 -22
  26. package/dist/cli/kraken/verificationBridge.test.js.map +1 -1
  27. package/dist/cli/kraken/verifierAdvisoryLock.test.js +154 -0
  28. package/dist/cli/kraken/verifierAdvisoryLock.test.js.map +1 -0
  29. package/dist/cli/kraken/verifierResolution.js +28 -0
  30. package/dist/cli/kraken/verifierResolution.js.map +1 -0
  31. package/dist/cli/kraken/verifierRoundTrip.test.js +166 -0
  32. package/dist/cli/kraken/verifierRoundTrip.test.js.map +1 -0
  33. package/dist/cli/legacyContextIsolation.test.js +3 -2
  34. package/dist/cli/legacyContextIsolation.test.js.map +1 -1
  35. package/dist/cli/main.bundled.js +707 -314
  36. package/dist/cli/main.bundled.js.map +4 -4
  37. package/dist/cli/missionContinuation.test.js +117 -0
  38. package/dist/cli/missionContinuation.test.js.map +1 -0
  39. package/dist/cli/profileMatrix.test.js +130 -0
  40. package/dist/cli/profileMatrix.test.js.map +1 -0
  41. package/dist/cli/runHeadless.js +39 -4
  42. package/dist/cli/runHeadless.js.map +1 -1
  43. package/dist/cli/sessionSpine.js +29 -3
  44. package/dist/cli/sessionSpine.js.map +1 -1
  45. package/dist/cli/zelariMission.js +16 -0
  46. package/dist/cli/zelariMission.js.map +1 -1
  47. package/package.json +2 -2
@@ -0,0 +1,207 @@
1
+ /**
2
+ * nativeVerification tests — F2 / Exit-2.4: the Zelari Coding Criteria Pack
3
+ * runs natively in the Kraken strict-build path.
4
+ *
5
+ * Locks the composition contract:
6
+ * - pack is opt-in (ZELARI_VERIFY_PACK=1), default off during the alpha;
7
+ * - env overrides replace `npm run <script>` binding (hermetic tests);
8
+ * - required criteria without a bound command are DROPPED, not unknowned;
9
+ * - a failing pack command forces REPAIR_REQUIRED even when every selection
10
+ * check passed with verify-agent evidence (deterministic beats narrative);
11
+ * - all-pass pack + all-pass selection → PASS, and the spine payload
12
+ * carries the native results with command digests.
13
+ */
14
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest';
15
+ import { buildNativeCriteria, evaluateNativePack, nativePackEnabled, packTimeoutMs, resolvePackCommands, } from './nativeVerification.js';
16
+ import { evaluateStrictBuildGate, strictGateEventPayload, } from './verificationBridge.js';
17
+ import { resetKrakenCandidates, setKrakenCheckResults, setKrakenSelection } from './candidateRegistry.js';
18
+ const CHECKS = ['session survives concurrent refresh'];
19
+ function emitSeq() {
20
+ let n = 1;
21
+ return async () => ({ seq: n++ });
22
+ }
23
+ function selectWithChecks(checks) {
24
+ resetKrakenCandidates();
25
+ setKrakenSelection({
26
+ status: 'selected',
27
+ winnerIndex: 0,
28
+ rationale: 'test',
29
+ requiredChecks: checks,
30
+ degraded: false,
31
+ verifier: null,
32
+ judgedBy: 'llm',
33
+ });
34
+ }
35
+ /** Deterministic shell stub: map each command to a canned ShellResult. */
36
+ function stubShell(byCommand) {
37
+ return {
38
+ async exec(command) {
39
+ const canned = byCommand[command] ?? { exit: 0, stdout: '' };
40
+ return {
41
+ exitCode: canned.exit ?? 0,
42
+ stdout: canned.stdout ?? '',
43
+ stderr: canned.stderr ?? '',
44
+ durationMs: 1,
45
+ timedOut: false,
46
+ };
47
+ },
48
+ };
49
+ }
50
+ const TYPECHECK = 'fake-typecheck';
51
+ const TEST = 'fake-test';
52
+ const BUILD = 'fake-build';
53
+ function packEnv(overrides = {}) {
54
+ return {
55
+ ZELARI_VERIFY_PACK: '1',
56
+ ZELARI_VERIFY_TYPECHECK_CMD: TYPECHECK,
57
+ ZELARI_VERIFY_TEST_CMD: TEST,
58
+ ZELARI_VERIFY_BUILD_CMD: BUILD,
59
+ ...overrides,
60
+ };
61
+ }
62
+ let envPrev;
63
+ beforeEach(() => {
64
+ envPrev = process.env.ZELARI_STRICT_DONE;
65
+ process.env.ZELARI_STRICT_DONE = '1';
66
+ resetKrakenCandidates();
67
+ });
68
+ afterEach(() => {
69
+ if (envPrev === undefined)
70
+ delete process.env.ZELARI_STRICT_DONE;
71
+ else
72
+ process.env.ZELARI_STRICT_DONE = envPrev;
73
+ resetKrakenCandidates();
74
+ });
75
+ describe('nativePackEnabled (alpha opt-in)', () => {
76
+ it('is OFF by default and only enabled by explicit flags', () => {
77
+ expect(nativePackEnabled({})).toBe(false);
78
+ expect(nativePackEnabled({ ZELARI_VERIFY_PACK: '1' })).toBe(true);
79
+ expect(nativePackEnabled({ ZELARI_VERIFY_PACK: 'on' })).toBe(true);
80
+ expect(nativePackEnabled({ ZELARI_VERIFY_PACK: 'true' })).toBe(true);
81
+ expect(nativePackEnabled({ ZELARI_VERIFY_PACK: '0' })).toBe(false);
82
+ expect(nativePackEnabled({ ZELARI_VERIFY_PACK: 'yes' })).toBe(false);
83
+ });
84
+ });
85
+ describe('resolvePackCommands', () => {
86
+ it('binds npm scripts present in package.json', () => {
87
+ const cmds = resolvePackCommands({}, { typecheck: 'tsc -p .', test: 'vitest run' });
88
+ expect(cmds.typecheckCommand).toBe('npm run typecheck');
89
+ expect(cmds.testCommand).toBe('npm run test');
90
+ expect(cmds.buildCommand).toBeNull(); // script absent → unbound
91
+ });
92
+ it('env override wins; empty string explicitly disables', () => {
93
+ const cmds = resolvePackCommands({ ZELARI_VERIFY_TYPECHECK_CMD: 'tsc --noEmit', ZELARI_VERIFY_TEST_CMD: '' }, { typecheck: 'x', test: 'y', build: 'z' });
94
+ expect(cmds.typecheckCommand).toBe('tsc --noEmit');
95
+ expect(cmds.testCommand).toBeNull();
96
+ expect(cmds.buildCommand).toBe('npm run build');
97
+ });
98
+ it('packTimeoutMs clamps to [1, 3600000] and defaults to 600000', () => {
99
+ expect(packTimeoutMs({})).toBe(600_000);
100
+ expect(packTimeoutMs({ ZELARI_VERIFY_TIMEOUT_MS: '5000' })).toBe(5_000);
101
+ expect(packTimeoutMs({ ZELARI_VERIFY_TIMEOUT_MS: '-3' })).toBe(600_000);
102
+ expect(packTimeoutMs({ ZELARI_VERIFY_TIMEOUT_MS: '99999999' })).toBe(3_600_000);
103
+ });
104
+ });
105
+ describe('buildNativeCriteria', () => {
106
+ it('drops required criteria without a bound command; keeps advisory ones', () => {
107
+ const criteria = buildNativeCriteria({ typecheckCommand: 'tsc', testCommand: null, buildCommand: null }, 1_000);
108
+ const ids = criteria.map((c) => c.id);
109
+ expect(ids).toContain('correctness.error-signals');
110
+ expect(ids).not.toContain('correctness.specification');
111
+ expect(ids).not.toContain('correctness.observable-output');
112
+ // advisories stay even unbound — they surface as honest `unknown`
113
+ expect(ids).toContain('evidence.verification-quality');
114
+ });
115
+ });
116
+ describe('evaluateNativePack', () => {
117
+ it('returns null when disabled or when no command is bound', async () => {
118
+ expect(await evaluateNativePack({ env: {}, shell: stubShell({}) })).toBeNull();
119
+ expect(await evaluateNativePack({
120
+ env: { ZELARI_VERIFY_PACK: '1' },
121
+ cwd: 'Z:/__no_such_repo__',
122
+ shell: stubShell({}),
123
+ })).toBeNull();
124
+ });
125
+ it('runs bound commands through the core engine and returns digested evidence', async () => {
126
+ const pack = await evaluateNativePack({
127
+ env: packEnv(),
128
+ shell: stubShell({
129
+ [TYPECHECK]: { exit: 0, stdout: 'no errors' },
130
+ [TEST]: { exit: 0, stdout: '58 passed' },
131
+ [BUILD]: { exit: 0, stdout: 'bundled' },
132
+ }),
133
+ });
134
+ expect(pack).not.toBeNull();
135
+ const byId = new Map(pack.results.map((r) => [r.criterionId, r]));
136
+ expect(byId.get('correctness.error-signals')?.status).toBe('pass');
137
+ expect(byId.get('correctness.specification')?.status).toBe('pass');
138
+ const ev = byId.get('correctness.specification')?.evidence[0];
139
+ expect(ev?.tier).toBe('command-output');
140
+ expect(ev?.digest).toMatch(/^[0-9a-f]{64}$/);
141
+ });
142
+ });
143
+ describe('evaluateStrictBuildGate × native pack (F2 lock)', () => {
144
+ it('failing typecheck forces REPAIR_REQUIRED even when every selection check passes with notes', async () => {
145
+ selectWithChecks(CHECKS);
146
+ setKrakenCheckResults([{ check: CHECKS[0], status: 'pass', note: 'vitest 58/58' }]);
147
+ const gate = await evaluateStrictBuildGate('build', {
148
+ env: packEnv(),
149
+ emit: emitSeq(),
150
+ shell: stubShell({
151
+ [TYPECHECK]: { exit: 2, stderr: 'TS2345: argument of type...' },
152
+ [TEST]: { exit: 0, stdout: '58 passed' },
153
+ [BUILD]: { exit: 0, stdout: 'ok' },
154
+ }),
155
+ });
156
+ expect(gate.strict).toBe(true);
157
+ expect(gate.native).not.toBeNull();
158
+ expect(gate.evaluation.verdict).toBe('REPAIR_REQUIRED');
159
+ expect(gate.blocked).toBe(true);
160
+ const failed = gate.evaluation.unsatisfied.find((u) => u.id === 'correctness.error-signals');
161
+ expect(failed?.status).toBe('fail');
162
+ });
163
+ it('all-pass pack + all-pass selection → PASS with native results in the payload', async () => {
164
+ selectWithChecks(CHECKS);
165
+ setKrakenCheckResults([{ check: CHECKS[0], status: 'pass', note: 'vitest 58/58' }]);
166
+ const gate = await evaluateStrictBuildGate('build', {
167
+ env: packEnv(),
168
+ emit: emitSeq(),
169
+ shell: stubShell({
170
+ [TYPECHECK]: { exit: 0 },
171
+ [TEST]: { exit: 0, stdout: '58 passed' },
172
+ [BUILD]: { exit: 0 },
173
+ }),
174
+ });
175
+ expect(gate.evaluation.verdict).toBe('PASS');
176
+ expect(gate.blocked).toBe(false);
177
+ const payload = strictGateEventPayload(gate);
178
+ expect(payload.engine).toBe('kraken-legacy+completion-policy+criteria-pack');
179
+ expect(payload.native).toMatchObject({ packId: 'zelari-coding/v1' });
180
+ const results = payload.native.results;
181
+ expect(results.filter((r) => r.status === 'pass').length).toBeGreaterThanOrEqual(3);
182
+ });
183
+ it('pack disabled (default) → native null and identical legacy-only verdict', async () => {
184
+ selectWithChecks(CHECKS);
185
+ setKrakenCheckResults([{ check: CHECKS[0], status: 'pass', note: 'vitest 58/58' }]);
186
+ const gate = await evaluateStrictBuildGate('build', { env: {}, emit: emitSeq(), shell: stubShell({}) });
187
+ expect(gate.native).toBeNull();
188
+ expect(gate.evaluation.verdict).toBe('PASS');
189
+ expect(strictGateEventPayload(gate).engine).toBe('kraken-legacy+completion-policy');
190
+ });
191
+ it('a pack criterion timing out is unknown — blockers add, unknown never passes silently', async () => {
192
+ selectWithChecks(CHECKS);
193
+ setKrakenCheckResults([{ check: CHECKS[0], status: 'pass', note: 'ok' }]);
194
+ const timeoutShell = {
195
+ async exec(command) {
196
+ if (command === TEST) {
197
+ return { exitCode: null, stdout: '', stderr: '', durationMs: 9, timedOut: true };
198
+ }
199
+ return { exitCode: 0, stdout: '', stderr: '', durationMs: 1, timedOut: false };
200
+ },
201
+ };
202
+ const gate = await evaluateStrictBuildGate('build', { env: packEnv(), emit: emitSeq(), shell: timeoutShell });
203
+ expect(gate.evaluation.verdict).toBe('BLOCKED'); // unknown ≠ pass
204
+ expect(gate.blocked).toBe(true);
205
+ });
206
+ });
207
+ //# sourceMappingURL=nativeVerification.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeVerification.test.js","sourceRoot":"","sources":["../../../src/cli/kraken/nativeVerification.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * ADR-0025 lock tests — strict done defaults per surface.
3
+ *
4
+ * Kraken (default surface): opt-in via ZELARI_STRICT_DONE, else off (1.x compat).
5
+ * Mission: strict evidence gate ON by default; ZELARI_MISSION_STRICT=0|false
6
+ * is the only opt-out. These defaults are product decisions, not accidents —
7
+ * a regression here changes what "done" means for autonomous missions.
8
+ */
9
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest';
10
+ import { evaluateStrictBuildGate, strictDoneEnabled, } from './verificationBridge.js';
11
+ import { resetKrakenCandidates, setKrakenCheckResults, setKrakenSelection, } from './candidateRegistry.js';
12
+ const CHECKS = ['mission slice keeps the spine replayable', 'export round-trips'];
13
+ function emitSeq() {
14
+ let n = 1;
15
+ return async () => ({ seq: n++ });
16
+ }
17
+ function selectWithChecks(checks) {
18
+ resetKrakenCandidates();
19
+ setKrakenSelection({
20
+ status: 'selected',
21
+ winnerIndex: 0,
22
+ rationale: 'test',
23
+ requiredChecks: checks,
24
+ degraded: false,
25
+ verifier: null,
26
+ judgedBy: 'llm',
27
+ });
28
+ }
29
+ let prevKraken;
30
+ let prevMission;
31
+ let prevPack;
32
+ /** Swap both strict envs for the duration of fn; restore in finally. */
33
+ async function withEnv(kraken, mission, fn) {
34
+ const k = process.env.ZELARI_STRICT_DONE;
35
+ const m = process.env.ZELARI_MISSION_STRICT;
36
+ if (kraken === undefined)
37
+ delete process.env.ZELARI_STRICT_DONE;
38
+ else
39
+ process.env.ZELARI_STRICT_DONE = kraken;
40
+ if (mission === undefined)
41
+ delete process.env.ZELARI_MISSION_STRICT;
42
+ else
43
+ process.env.ZELARI_MISSION_STRICT = mission;
44
+ try {
45
+ return await fn();
46
+ }
47
+ finally {
48
+ if (k === undefined)
49
+ delete process.env.ZELARI_STRICT_DONE;
50
+ else
51
+ process.env.ZELARI_STRICT_DONE = k;
52
+ if (m === undefined)
53
+ delete process.env.ZELARI_MISSION_STRICT;
54
+ else
55
+ process.env.ZELARI_MISSION_STRICT = m;
56
+ }
57
+ }
58
+ beforeEach(() => {
59
+ prevKraken = process.env.ZELARI_STRICT_DONE;
60
+ prevMission = process.env.ZELARI_MISSION_STRICT;
61
+ prevPack = process.env.ZELARI_VERIFY_PACK;
62
+ delete process.env.ZELARI_VERIFY_PACK;
63
+ resetKrakenCandidates();
64
+ });
65
+ afterEach(() => {
66
+ if (prevKraken === undefined)
67
+ delete process.env.ZELARI_STRICT_DONE;
68
+ else
69
+ process.env.ZELARI_STRICT_DONE = prevKraken;
70
+ if (prevMission === undefined)
71
+ delete process.env.ZELARI_MISSION_STRICT;
72
+ else
73
+ process.env.ZELARI_MISSION_STRICT = prevMission;
74
+ if (prevPack === undefined)
75
+ delete process.env.ZELARI_VERIFY_PACK;
76
+ else
77
+ process.env.ZELARI_VERIFY_PACK = prevPack;
78
+ resetKrakenCandidates();
79
+ });
80
+ describe('strictDoneEnabled defaults (ADR-0025)', () => {
81
+ it('kraken: default OFF, opt-in via ZELARI_STRICT_DONE', async () => {
82
+ await withEnv(undefined, undefined, () => {
83
+ expect(strictDoneEnabled()).toBe(false);
84
+ expect(strictDoneEnabled('kraken')).toBe(false);
85
+ });
86
+ await withEnv('1', undefined, () => expect(strictDoneEnabled()).toBe(true));
87
+ await withEnv('true', undefined, () => expect(strictDoneEnabled()).toBe(true));
88
+ await withEnv('0', undefined, () => expect(strictDoneEnabled()).toBe(false));
89
+ });
90
+ it('mission: default ON regardless of ZELARI_STRICT_DONE', async () => {
91
+ await withEnv(undefined, undefined, () => expect(strictDoneEnabled('mission')).toBe(true));
92
+ await withEnv('0', undefined, () => expect(strictDoneEnabled('mission')).toBe(true));
93
+ await withEnv('false', undefined, () => expect(strictDoneEnabled('mission')).toBe(true));
94
+ });
95
+ it('mission: ZELARI_MISSION_STRICT=0|false is the only opt-out', async () => {
96
+ await withEnv(undefined, '0', () => expect(strictDoneEnabled('mission')).toBe(false));
97
+ await withEnv(undefined, 'false', () => expect(strictDoneEnabled('mission')).toBe(false));
98
+ await withEnv(undefined, '1', () => expect(strictDoneEnabled('mission')).toBe(true));
99
+ await withEnv('1', '0', () => expect(strictDoneEnabled('mission')).toBe(false));
100
+ });
101
+ });
102
+ describe('evaluateStrictBuildGate surface wiring (ADR-0025)', () => {
103
+ it('mission surface enforces the evidence contract by default (unknown → blocked)', async () => {
104
+ await withEnv(undefined, undefined, async () => {
105
+ selectWithChecks(CHECKS);
106
+ // No check results reported → every required criterion is unknown.
107
+ const gate = await evaluateStrictBuildGate('build', { surface: 'mission' });
108
+ expect(gate.strict).toBe(true);
109
+ expect(gate.blocked).toBe(true);
110
+ });
111
+ });
112
+ it('mission opt-out restores the legacy-only outcome', async () => {
113
+ await withEnv(undefined, '0', async () => {
114
+ selectWithChecks(CHECKS);
115
+ setKrakenCheckResults(CHECKS.map((c) => ({ check: c, status: 'pass', note: 'ok (stub)' })));
116
+ const gate = await evaluateStrictBuildGate('build', { surface: 'mission' });
117
+ expect(gate.strict).toBe(false);
118
+ expect(gate.blocked).toBe(false); // legacy gate green + no strict overlay
119
+ });
120
+ });
121
+ it('kraken surface (default) stays opt-in even with checks registered', async () => {
122
+ await withEnv(undefined, undefined, async () => {
123
+ selectWithChecks(CHECKS);
124
+ setKrakenCheckResults(CHECKS.map((c) => ({ check: c, status: 'pass', note: 'ok (stub)' })));
125
+ const gate = await evaluateStrictBuildGate('build'); // no surface → kraken
126
+ expect(gate.strict).toBe(false);
127
+ expect(gate.blocked).toBe(false);
128
+ });
129
+ });
130
+ it('mission default does not run the native pack without ZELARI_VERIFY_PACK', async () => {
131
+ // The mission default gates on the selection contract only; the native
132
+ // criteria pack (real typecheck/test/build commands) stays opt-in so the
133
+ // default never adds process spawns the user did not ask for.
134
+ await withEnv(undefined, undefined, async () => {
135
+ selectWithChecks([CHECKS[0]]);
136
+ setKrakenCheckResults([
137
+ { check: CHECKS[0], status: 'pass', note: 'spine replay ok (stub)' },
138
+ ]);
139
+ const gate = await evaluateStrictBuildGate('build', { surface: 'mission', emit: emitSeq() });
140
+ expect(gate.strict).toBe(true);
141
+ expect(gate.native).toBeNull();
142
+ expect(gate.blocked).toBe(false); // pass with event-backed note → PASS
143
+ });
144
+ });
145
+ });
146
+ // Type-level lock: the surface union is exactly the two ADR-0025 surfaces.
147
+ const _surfaceUnionLock = ['kraken', 'mission'];
148
+ void _surfaceUnionLock;
149
+ //# sourceMappingURL=strictDefaults.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strictDefaults.test.js","sourceRoot":"","sources":["../../../src/cli/kraken/strictDefaults.test.ts"],"names":[],"mappings":"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"}
@@ -12,12 +12,25 @@
12
12
  * them. A legacy-blocked turn stays blocked; a legacy-open turn can become
13
13
  * blocked only when strict evaluation is enabled AND the evidence contract
14
14
  * is not satisfied.
15
+ *
16
+ * F2 (Exit-2.4): when the native criteria pack is enabled
17
+ * (ZELARI_VERIFY_PACK=1), the Zelari Coding Criteria Pack v1 joins the SAME
18
+ * CompletionPolicy evaluation with real deterministic checks (typecheck/
19
+ * test/build commands) executed through the core VerificationEngine —
20
+ * see nativeVerification.ts. The pack is additive evidence; it can only add
21
+ * blockers, never remove them, exactly like the rest of the strict layer.
15
22
  */
16
23
  import { getKrakenCheckResults, krakenRequiredChecks } from './candidateRegistry.js';
17
24
  import { evaluateKrakenCompletionGate } from './completionGate.js';
25
+ import { evaluateNativePack } from './nativeVerification.js';
18
26
  import { evaluateCompletion, STRICT_BUILD_POLICY, snapshotToCompletionEvaluation, } from '@zelari/core/verification';
19
- /** Strict done gate — opt-in during the alpha (default off for compat). */
20
- export function strictDoneEnabled() {
27
+ export function strictDoneEnabled(surface = 'kraken') {
28
+ if (surface === 'mission') {
29
+ const v = process.env.ZELARI_MISSION_STRICT;
30
+ if (v === '0' || v === 'false')
31
+ return false;
32
+ return true;
33
+ }
21
34
  const v = process.env.ZELARI_STRICT_DONE;
22
35
  return v === '1' || v === 'true';
23
36
  }
@@ -96,18 +109,57 @@ export function krakenResultsToContract(requiredChecks, results, now = Date.now(
96
109
  });
97
110
  return { criteria, results: verifications };
98
111
  }
112
+ /**
113
+ * 2.0 (ADR-0026): stamp EvidenceRef.seq on selection-contract notes by
114
+ * appending a `verification.evidence` event. Without an emitter the refs
115
+ * stay unanchored and STRICT_BUILD_POLICY (requireEventBackedEvidence)
116
+ * will BLOCK — that is the RC false-done guard, not a test-only quirk.
117
+ */
118
+ export async function anchorSelectionEvidence(results, emit) {
119
+ if (!emit)
120
+ return;
121
+ for (const r of results) {
122
+ for (const ev of r.evidence) {
123
+ if (ev.seq !== undefined)
124
+ continue;
125
+ if (ev.tier === 'verifier-llm' || ev.tier === 'human')
126
+ continue;
127
+ try {
128
+ const appended = await emit({
129
+ kind: 'verification.evidence',
130
+ actor: { type: 'system', role: 'verification' },
131
+ data: {
132
+ observation: 'verify-report-note',
133
+ criterionId: r.criterionId,
134
+ ref: ev.ref,
135
+ tier: ev.tier,
136
+ },
137
+ });
138
+ const seq = appended && typeof appended === 'object' && 'seq' in appended
139
+ ? Number(appended.seq)
140
+ : NaN;
141
+ if (Number.isFinite(seq) && seq > 0)
142
+ ev.seq = seq;
143
+ }
144
+ catch {
145
+ // degrade-and-stop: leave unanchored; policy will BLOCK if required
146
+ }
147
+ }
148
+ }
149
+ }
99
150
  /**
100
151
  * Evaluate the BUILD completion gate. When `ZELARI_STRICT_DONE` is enabled
101
152
  * and the turn registered required checks, the evidence contract is evaluated
102
153
  * as well and the verdicts merged (blockers add up).
103
154
  */
104
- export function evaluateStrictBuildGate(mode) {
155
+ export async function evaluateStrictBuildGate(mode, options = {}) {
105
156
  const gate = evaluateKrakenCompletionGate(mode);
106
- if (!gate.selectionUsed || gate.total === 0 || !strictDoneEnabled()) {
157
+ if (!gate.selectionUsed || gate.total === 0 || !strictDoneEnabled(options.surface ?? 'kraken')) {
107
158
  return {
108
159
  gate,
109
160
  strict: false,
110
161
  evaluation: null,
162
+ native: null,
111
163
  blocked: gate.blocked,
112
164
  summary: gate.blocked
113
165
  ? `blocked: ${gate.failedChecks.length} failed, ${gate.unknownChecks.length} unknown`
@@ -116,16 +168,28 @@ export function evaluateStrictBuildGate(mode) {
116
168
  }
117
169
  const checks = krakenRequiredChecks();
118
170
  const contract = krakenResultsToContract(checks, getKrakenCheckResults());
119
- const evaluation = evaluateCompletion(contract.criteria, contract.results, STRICT_BUILD_POLICY);
171
+ await anchorSelectionEvidence(contract.results, options.emit);
172
+ // F2: native criteria pack (opt-in) — real commands via the core engine.
173
+ // A pack failure degrades to the legacy contract only; it never un-blocks.
174
+ const native = await evaluateNativePack({
175
+ cwd: options.cwd,
176
+ env: options.env,
177
+ shell: options.shell,
178
+ emit: options.emit,
179
+ }).catch(() => null);
180
+ const allCriteria = [...contract.criteria, ...(native?.criteria ?? [])];
181
+ const allResults = [...contract.results, ...(native?.results ?? [])];
182
+ const evaluation = evaluateCompletion(allCriteria, allResults, STRICT_BUILD_POLICY);
120
183
  const blocked = gate.blocked || evaluation.verdict !== 'PASS';
121
184
  return {
122
185
  gate,
123
186
  strict: true,
124
187
  evaluation,
188
+ native,
125
189
  blocked,
126
190
  summary: blocked
127
191
  ? `blocked (strict ${evaluation?.verdict ?? 'n/a'}): ${gate.passed}/${gate.total} legacy-pass, evidence ${evaluation?.evidenceComplete ? 'complete' : 'incomplete'}`
128
- : `open (strict PASS): ${evaluation?.satisfied.length ?? 0}/${gate.total} criteria pass with evidence`,
192
+ : `open (strict PASS): ${evaluation?.satisfied.length ?? 0}/${allCriteria.length} criteria pass with evidence`,
129
193
  };
130
194
  }
131
195
  /**
@@ -138,10 +202,10 @@ export const STRICT_DONE_EXIT_CODE = 4;
138
202
  export function strictGateExitCode(evaluation) {
139
203
  return evaluation.strict && evaluation.blocked ? STRICT_DONE_EXIT_CODE : 0;
140
204
  }
141
- /** Machine-readable record for the session spine `verification.run` event. */ /** Machine-readable record for the session spine `verification.run` event. */
205
+ /** Machine-readable record for the session spine `verification.run` event. */
142
206
  export function strictGateEventPayload(evaluation) {
143
207
  return {
144
- engine: 'kraken-legacy+completion-policy',
208
+ engine: evaluation.native ? 'kraken-legacy+completion-policy+criteria-pack' : 'kraken-legacy+completion-policy',
145
209
  strict: evaluation.strict,
146
210
  verdict: evaluation.evaluation?.verdict ?? (evaluation.blocked ? 'BLOCKED' : 'PASS'),
147
211
  legacy: {
@@ -157,6 +221,19 @@ export function strictGateEventPayload(evaluation) {
157
221
  complete: evaluation.evaluation.evidenceComplete,
158
222
  }
159
223
  : null,
224
+ // F2: deterministic pack results — real command evidence, replayable.
225
+ native: evaluation.native
226
+ ? {
227
+ packId: evaluation.native.packId,
228
+ criteria: evaluation.native.criteria.map((c) => ({ id: c.id, required: c.required })),
229
+ results: evaluation.native.results.map((r) => ({
230
+ criterionId: r.criterionId,
231
+ status: r.status,
232
+ evidence: r.evidence.map((e) => ({ tier: e.tier, ref: e.ref, digest: e.digest, ...(e.seq !== undefined ? { seq: e.seq } : {}) })),
233
+ detail: r.detail,
234
+ })),
235
+ }
236
+ : null,
160
237
  summary: evaluation.summary,
161
238
  };
162
239
  }
@@ -177,6 +254,7 @@ export function evaluateStrictBuildGateFromSession(mode, snapshot) {
177
254
  gate,
178
255
  strict: evaluation !== null,
179
256
  evaluation,
257
+ native: null, // session replay carries the payload, not in-process results
180
258
  blocked,
181
259
  summary: evaluation
182
260
  ? blocked
@@ -1 +1 @@
1
- {"version":3,"file":"verificationBridge.js","sourceRoot":"","sources":["../../../src/cli/kraken/verificationBridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,4BAA4B,EAA6B,MAAM,qBAAqB,CAAC;AAE9F,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EAEnB,8BAA8B,GAK/B,MAAM,2BAA2B,CAAC;AAEnC,2EAA2E;AAC3E,MAAM,UAAU,iBAAiB;IAC/B,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACzC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,MAAM,CAAC;AACnC,CAAC;AAOD,8EAA8E;AAC9E,SAAS,WAAW,CAAC,KAAa,EAAE,KAAa;IAC/C,MAAM,IAAI,GAAG,KAAK;SACf,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChB,OAAO,SAAS,KAAK,GAAG,CAAC,IAAI,IAAI,IAAI,WAAW,EAAE,CAAC;AACrD,CAAC;AAED,yEAAyE;AACzE,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAClB,KAAa,EACb,YAA4C;IAE5C,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QACtC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAClE,OAAO,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,cAAiC,EACjC,OAA4C,EAC5C,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;IAC1D,KAAK,MAAM,CAAC,IAAI,OAAO,IAAI,EAAE;QAAE,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB;IAC/F,MAAM,QAAQ,GAAgB,EAAE,CAAC;IACjC,MAAM,aAAa,GAAyB,EAAE,CAAC;IAC/C,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QAClC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACjC,QAAQ,CAAC,IAAI,CAAC;YACZ,EAAE;YACF,IAAI,EAAE,KAAK;YACX,MAAM,EAAE,kBAAkB;YAC1B,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,oCAAoC,EAAE;SACtE,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAClD,MAAM,QAAQ,GACZ,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAC/C,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,aAAa;oBACnB,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;oBACvC,UAAU,EAAE,GAAG;iBAChB;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACT,aAAa,CAAC,IAAI,CAAC;YACjB,WAAW,EAAE,EAAE;YACf,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,SAAS;YACrC,MAAM,EAAE,cAAc;YACtB,QAAQ;YACR,WAAW,EAAE,GAAG;YAChB,UAAU,EAAE,CAAC;YACb,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,uBAAuB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;AAC9C,CAAC;AAaD;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAsB;IAC5D,MAAM,IAAI,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;QACpE,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,KAAK;YACb,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACnB,CAAC,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,YAAY,IAAI,CAAC,aAAa,CAAC,MAAM,UAAU;gBACrF,CAAC,CAAC,MAAM;SACX,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAChG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;IAC9D,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,IAAI;QACZ,UAAU;QACV,OAAO;QACP,OAAO,EAAE,OAAO;YACd,CAAC,CAAC,mBAAmB,UAAU,EAAE,OAAO,IAAI,KAAK,MAAM,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,0BAC5E,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAC9C,EAAE;YACJ,CAAC,CAAC,uBAAuB,UAAU,EAAE,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,8BAA8B;KACzG,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC,yFAAyF;AACzF,MAAM,UAAU,kBAAkB,CAAC,UAAqC;IACtE,OAAO,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,8EAA8E,CAAA,8EAA8E;AAC5J,MAAM,UAAU,sBAAsB,CAAC,UAAqC;IAC1E,OAAO;QACL,MAAM,EAAE,iCAAiC;QACzC,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,OAAO,EAAE,UAAU,CAAC,UAAU,EAAE,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,MAAM,EAAE;YACN,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK;YAC5B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;YAC9B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY;YACpC,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa;SACvC;QACD,QAAQ,EAAE,UAAU,CAAC,UAAU;YAC7B,CAAC,CAAC;gBACE,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,SAAS;gBAC1C,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,WAAW;gBAC9C,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,gBAAgB;aACjD;YACH,CAAC,CAAC,IAAI;QACR,OAAO,EAAE,UAAU,CAAC,OAAO;KAC5B,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kCAAkC,CAChD,IAAsB,EACtB,QAA+C;IAE/C,iEAAiE;IACjE,MAAM,IAAI,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IACnE,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,UAAU,KAAK,IAAI;QAC3B,UAAU;QACV,OAAO;QACP,OAAO,EAAE,UAAU;YACjB,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,mBAAmB,UAAU,CAAC,OAAO,yBAAyB,QAAQ,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE;gBACvG,CAAC,CAAC,0CAA0C,QAAQ,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE;YACrF,CAAC,CAAC,qDAAqD;KAC1D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"verificationBridge.js","sourceRoot":"","sources":["../../../src/cli/kraken/verificationBridge.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ function fakeStrictEvaluation(verdict) {
44
44
  verdict: 'PASS',
45
45
  satisfied: ['check-1-run-tests', 'check-2-lint'],
46
46
  unsatisfied: [],
47
- evidenceComplete: true,
47
+ evidenceComplete: true, eventBackedEvidenceComplete: true,
48
48
  summary: 'open (strict PASS): 2/2 criteria pass with evidence',
49
49
  },
50
50
  blocked: false,
@@ -58,7 +58,7 @@ function fakeStrictEvaluation(verdict) {
58
58
  verdict: 'BLOCKED',
59
59
  satisfied: ['check-2-lint'],
60
60
  unsatisfied: [{ id: 'check-1-run-tests', status: 'fail', reason: 'exit 1' }],
61
- evidenceComplete: false,
61
+ evidenceComplete: false, eventBackedEvidenceComplete: false,
62
62
  summary: 'incomplete (BLOCKED): check-1-run-tests=fail',
63
63
  },
64
64
  blocked: true,
@@ -1 +1 @@
1
- {"version":3,"file":"verificationBridge.session.test.js","sourceRoot":"","sources":["../../../src/cli/kraken/verificationBridge.session.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verificationBridge.session.test.js","sourceRoot":"","sources":["../../../src/cli/kraken/verificationBridge.session.test.ts"],"names":[],"mappings":"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"}