zelari-code 2.11.2 → 2.12.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.
@@ -0,0 +1,176 @@
1
+ /**
2
+ * completionProof — harness-hardening P0.3 (× ADR-0023): the completion
3
+ * proof-of-work artifact.
4
+ *
5
+ * Every strict build-gate evaluation (kraken BUILD turn, post-repair
6
+ * re-evaluation, mission close, TUI agent_end) leaves a durable witness on
7
+ * disk: `.zelari/completion-proof.md` for humans and hosts that read prose,
8
+ * `.zelari/completion-proof.json` for machines. The JSON body IS the spine
9
+ * `verification.run` payload (`strictGateEventPayload`) — same source of
10
+ * truth, zero duplication — so the artifact can never disagree with the
11
+ * session log.
12
+ *
13
+ * Discipline:
14
+ * - rendering is deterministic (no clock access; `generatedAt` only when
15
+ * passed via meta);
16
+ * - writing NEVER fails the parent flow: `writeCompletionProof` swallows
17
+ * every error and reports it as `null`.
18
+ */
19
+ import { mkdir, writeFile } from 'node:fs/promises';
20
+ import path from 'node:path';
21
+ import { strictGateEventPayload } from './verificationBridge.js';
22
+ /** Verdict line — mirrors strictGateEventPayload's fallback rule exactly. */
23
+ function verdictOf(evaluation) {
24
+ return evaluation.evaluation?.verdict ?? (evaluation.blocked ? 'BLOCKED' : 'PASS');
25
+ }
26
+ /** Markdown table cell: pipes and newlines must not break the table. */
27
+ function cell(text, max = 200) {
28
+ const flat = text.replace(/\r?\n/g, ' ').replace(/\|/g, '\\|').trim();
29
+ return flat.length > max ? `${flat.slice(0, max - 1)}…` : flat;
30
+ }
31
+ /** One `tier · seq N · digest xxxxxxxx…` evidence descriptor per ref. */
32
+ function evidenceCell(result) {
33
+ if (!result || result.evidence.length === 0)
34
+ return '—';
35
+ return result.evidence
36
+ .map((e) => {
37
+ const parts = [e.tier];
38
+ if (e.seq !== undefined)
39
+ parts.push(`seq ${e.seq}`);
40
+ if (e.digest)
41
+ parts.push(`digest ${e.digest.slice(0, 8)}…`);
42
+ return parts.join(' · ');
43
+ })
44
+ .join('; ');
45
+ }
46
+ /**
47
+ * Deterministic criterion rows: flat results first (selection contract then
48
+ * native pack order — the order they joined the evaluation), then unsatisfied
49
+ * ids that produced no result at all (`missing`). Only native criteria expose
50
+ * their text on the evaluation; selection criteria render their stable id.
51
+ */
52
+ function proofRows(evaluation) {
53
+ const nativeById = new Map((evaluation.native?.criteria ?? []).map((c) => [c.id, c]));
54
+ const rows = new Map();
55
+ for (const result of evaluation.results ?? []) {
56
+ const criterion = nativeById.get(result.criterionId);
57
+ rows.set(result.criterionId, {
58
+ id: result.criterionId,
59
+ text: criterion?.text ?? null,
60
+ required: criterion ? criterion.required : true,
61
+ status: result.status,
62
+ result,
63
+ });
64
+ }
65
+ for (const unsatisfied of evaluation.evaluation?.unsatisfied ?? []) {
66
+ if (rows.has(unsatisfied.id))
67
+ continue;
68
+ const criterion = nativeById.get(unsatisfied.id);
69
+ rows.set(unsatisfied.id, {
70
+ id: unsatisfied.id,
71
+ text: criterion?.text ?? null,
72
+ required: true, // satisfied/unsatisfied lists cover required criteria only
73
+ status: unsatisfied.status,
74
+ result: null,
75
+ });
76
+ }
77
+ return [...rows.values()];
78
+ }
79
+ function renderMarkdown(evaluation, meta) {
80
+ const lines = [
81
+ '# Completion Proof',
82
+ '',
83
+ 'Strict build-gate proof-of-work (ADR-0023). The machine-readable twin of',
84
+ 'this document — `completion-proof.json` — is the exact `verification.run`',
85
+ 'payload sent to the session spine.',
86
+ '',
87
+ `- **Verdict**: **${verdictOf(evaluation)}**`,
88
+ `- **Strict gate**: ${evaluation.strict ? 'on' : 'off'}`,
89
+ `- **Turn blocked**: ${evaluation.blocked ? 'yes' : 'no'}`,
90
+ `- **Summary**: ${cell(evaluation.summary, 400)}`,
91
+ `- **Legacy selection gate**: ${evaluation.gate.passed}/${evaluation.gate.total} passed` +
92
+ (evaluation.gate.failedChecks.length > 0 ? `; failed: ${evaluation.gate.failedChecks.length}` : '') +
93
+ (evaluation.gate.unknownChecks.length > 0 ? `; unknown: ${evaluation.gate.unknownChecks.length}` : ''),
94
+ ];
95
+ if (meta.surface)
96
+ lines.push(`- **Surface**: ${meta.surface}`);
97
+ if (meta.sessionId)
98
+ lines.push(`- **Session**: ${meta.sessionId} (session spine)`);
99
+ if (meta.generatedAt !== undefined) {
100
+ lines.push(`- **Generated**: ${new Date(meta.generatedAt).toISOString()}`);
101
+ }
102
+ const rows = proofRows(evaluation);
103
+ lines.push('', '## Criteria', '', '| Criterion | Required | Status | Evidence |', '| --- | --- | --- | --- |');
104
+ if (rows.length === 0) {
105
+ lines.push('| _none — no criteria joined this evaluation_ | — | — | — |');
106
+ }
107
+ for (const row of rows) {
108
+ const label = row.text ? `\`${row.id}\` — ${cell(row.text)}` : `\`${row.id}\``;
109
+ lines.push(`| ${label} | ${row.required ? 'yes' : 'no'} | ${row.status} | ${evidenceCell(row.result)} |`);
110
+ }
111
+ const unsatisfied = evaluation.evaluation?.unsatisfied ?? [];
112
+ if (unsatisfied.length > 0) {
113
+ lines.push('', '### Unsatisfied', '');
114
+ for (const u of unsatisfied)
115
+ lines.push(`- \`${u.id}\`: **${u.status}** — ${cell(u.reason, 300)}`);
116
+ }
117
+ const native = evaluation.native;
118
+ if (native) {
119
+ lines.push('', `## Native criteria pack — ${native.packId}`, '', '| Criterion | Command | Status | Detail |', '| --- | --- | --- | --- |');
120
+ for (const result of native.results) {
121
+ const criterion = native.criteria.find((c) => c.id === result.criterionId);
122
+ const check = criterion?.check;
123
+ const command = check?.kind === 'command' ? check.command : '—';
124
+ const label = criterion?.text ? `\`${result.criterionId}\` — ${cell(criterion.text, 120)}` : `\`${result.criterionId}\``;
125
+ lines.push(`| ${label} | \`${cell(command, 120)}\` | ${result.status} | ${cell(result.detail ?? '—')} |`);
126
+ }
127
+ }
128
+ const review = evaluation.review;
129
+ if (review) {
130
+ lines.push('', '## Advisory verifier review', '', '_Advisory only — this review cannot change the gate verdict above._', '', `- **Verdict**: ${review.verdict}`);
131
+ if (review.score !== undefined)
132
+ lines.push(`- **Score**: ${review.score}`);
133
+ const model = review.effectiveModel.model ?? review.effectiveModel.provider ?? review.effectiveModel.mode;
134
+ lines.push(`- **Model**: ${model}${review.usedLogprobs ? ' (logprobs)' : ''}`);
135
+ if (review.fallback)
136
+ lines.push(`- **Fallback**: ${review.fallback}`);
137
+ if (review.rationale)
138
+ lines.push(`- **Rationale**: ${cell(review.rationale, 400)}`);
139
+ }
140
+ lines.push('', '---', '', 'Machine record: `completion-proof.json` (same directory).');
141
+ return `${lines.join('\n')}\n`;
142
+ }
143
+ /**
144
+ * Render the proof pair for a strict build-gate evaluation. `json` is the
145
+ * spine `verification.run` payload verbatim; `markdown` is the human- and
146
+ * host-facing view. Deterministic: no clock or randomness unless
147
+ * `meta.generatedAt` is provided.
148
+ */
149
+ export function renderCompletionProof(evaluation, meta = {}) {
150
+ return {
151
+ markdown: renderMarkdown(evaluation, meta),
152
+ json: JSON.stringify(strictGateEventPayload(evaluation), null, 2),
153
+ };
154
+ }
155
+ /**
156
+ * Persist `.zelari/completion-proof.{md,json}` under `baseDir` (default
157
+ * `process.cwd()`), creating the directory. NEVER throws: any failure is
158
+ * swallowed and reported as `null` — a proof write must not break the
159
+ * parent run (harness-hardening P0.3).
160
+ */
161
+ export async function writeCompletionProof(evaluation, options = {}) {
162
+ try {
163
+ const dir = path.join(options.baseDir ?? process.cwd(), '.zelari');
164
+ await mkdir(dir, { recursive: true });
165
+ const { markdown, json } = renderCompletionProof(evaluation, options.meta);
166
+ const markdownPath = path.join(dir, 'completion-proof.md');
167
+ const jsonPath = path.join(dir, 'completion-proof.json');
168
+ await writeFile(markdownPath, markdown, 'utf8');
169
+ await writeFile(jsonPath, json, 'utf8');
170
+ return { markdownPath, jsonPath };
171
+ }
172
+ catch {
173
+ return null; // proof writing is best-effort by contract
174
+ }
175
+ }
176
+ //# sourceMappingURL=completionProof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completionProof.js","sourceRoot":"","sources":["../../../src/cli/kraken/completionProof.ts"],"names":[],"mappings":"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"}
@@ -18,9 +18,10 @@
18
18
  * permanently-unknown blocker on repos without that script). Optional
19
19
  * advisory criteria are kept — they surface as `unknown` without gating.
20
20
  *
21
- * Env surface (all optional, alpha flags documented in GUIDA):
22
- * ZELARI_VERIFY_PACK=1|on|true enable the native pack (alpha: opt-in,
23
- * default off mirrors ZELARI_STRICT_DONE)
21
+ * Env surface (all optional, flags documented in GUIDA):
22
+ * ZELARI_VERIFY_PACK=0|off|false disable the native pack (ON by default
23
+ * since P0.2; repo-adaptive binding keeps
24
+ * repos without npm scripts unaffected)
24
25
  * ZELARI_VERIFY_TYPECHECK_CMD override typecheck command ('' disables)
25
26
  * ZELARI_VERIFY_TEST_CMD override test command ('' disables)
26
27
  * ZELARI_VERIFY_BUILD_CMD override build command ('' disables)
@@ -30,10 +31,16 @@ import { readFile } from 'node:fs/promises';
30
31
  import path from 'node:path';
31
32
  import { LocalWorkspace, NodeShellProvider } from '@zelari/core/runtime';
32
33
  import { VerificationEngine, ZELARI_CODING_PACK_ID, codingCriteriaPack, } from '@zelari/core/verification';
33
- /** Opt-in during the alpha: the native pack runs only when explicitly enabled. */
34
+ /**
35
+ * ON by default since harness-hardening P0.2 — the native criteria pack joins
36
+ * every strict evaluation unless explicitly disabled. Explicit opt-out:
37
+ * `ZELARI_VERIFY_PACK=0|off|false`.
38
+ */
34
39
  export function nativePackEnabled(env = process.env) {
35
40
  const v = env.ZELARI_VERIFY_PACK?.toLowerCase();
36
- return v === '1' || v === 'on' || v === 'true';
41
+ if (v === '0' || v === 'off' || v === 'false')
42
+ return false;
43
+ return true;
37
44
  }
38
45
  /**
39
46
  * Resolve pack commands: env override wins (empty string = explicit
@@ -1 +1 @@
1
- {"version":3,"file":"nativeVerification.js","sourceRoot":"","sources":["../../../src/cli/kraken/nativeVerification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nativeVerification.js","sourceRoot":"","sources":["../../../src/cli/kraken/nativeVerification.ts"],"names":[],"mappings":"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"}
@@ -32,8 +32,12 @@ export function strictDoneEnabled(surface = 'kraken') {
32
32
  return false;
33
33
  return true;
34
34
  }
35
+ // P0.1: strict evidence gate is the default on the kraken surface too —
36
+ // "done means verified" no longer requires an opt-in. `0|false` opts out.
35
37
  const v = process.env.ZELARI_STRICT_DONE;
36
- return v === '1' || v === 'true';
38
+ if (v === '0' || v === 'false')
39
+ return false;
40
+ return true;
37
41
  }
38
42
  /** Stable criterion id for a required-check text (deterministic per turn). */
39
43
  function criterionId(check, index) {
@@ -1 +1 @@
1
- {"version":3,"file":"verificationBridge.js","sourceRoot":"","sources":["../../../src/cli/kraken/verificationBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verificationBridge.js","sourceRoot":"","sources":["../../../src/cli/kraken/verificationBridge.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import { VerifierService, } from '@zelari/core/verification';
2
2
  import { collectProviderText } from '../tools/krakenSelectTool.js';
3
+ import { resolveCrossModelVerifier } from '../tools/krakenModel.js';
4
+ import { getWorkingDiff } from '../gitOps.js';
3
5
  import { loadVerifierModelSelection } from './verifierResolution.js';
4
6
  /**
5
7
  * Opt-in rule (see module doc): explicit env wins in both directions;
@@ -37,11 +39,76 @@ export function makeVerifierCallModel(loadStream, identity, timeoutMs = 120_000)
37
39
  return { text, provider: identity.provider, model: identity.model };
38
40
  };
39
41
  }
40
- function resolveIdentity(selection, session) {
42
+ function resolveIdentity(selection, session, familyCandidates, env = process.env) {
41
43
  if (selection.mode === 'fixed') {
42
44
  return { provider: selection.provider, model: selection.model };
43
45
  }
44
- return session && session.provider && session.model ? session : null;
46
+ if (!session || !session.provider || !session.model)
47
+ return null;
48
+ // P0.6 cross-model: inherit mode may route to a different provider family
49
+ // when family candidates were supplied; otherwise keep session identity.
50
+ if (familyCandidates && familyCandidates.length > 0) {
51
+ const cross = resolveCrossModelVerifier(session, familyCandidates, env);
52
+ if (cross)
53
+ return { provider: cross.provider, model: cross.model };
54
+ }
55
+ return session;
56
+ }
57
+ /** Criterion ids that look like deterministic test/typecheck/build/lint runs. */
58
+ function isTestEvidenceCriterion(criterionId) {
59
+ const id = criterionId.toLowerCase();
60
+ return ['test', 'typecheck', 'build', 'lint'].some((k) => id.includes(k));
61
+ }
62
+ /**
63
+ * Blind evidence excerpt: criterionId + status + detail for deterministic
64
+ * test/typecheck/build/lint criteria, capped at maxChars. Empty when none.
65
+ */
66
+ export function extractTestOutputExcerpt(results, maxChars = 4000) {
67
+ const lines = [];
68
+ for (const r of results) {
69
+ if (!isTestEvidenceCriterion(r.criterionId))
70
+ continue;
71
+ lines.push([r.criterionId, r.status, r.detail].filter(Boolean).join(' — '));
72
+ }
73
+ if (lines.length === 0)
74
+ return '';
75
+ return lines.join('\n').slice(0, maxChars);
76
+ }
77
+ /**
78
+ * Build the BLIND review input for VerifierService.reviewCompletion:
79
+ * original task, synthetic deterministic-evidence summary, staged git diff
80
+ * summary, and a capped test-output excerpt. Never reads session messages,
81
+ * builder reasoning, or assistant text — the verifier sees evidence only.
82
+ * Every extra input degrades independently (empty/failing diff → omitted).
83
+ */
84
+ export async function buildBlindReviewInput(evaluation, deps) {
85
+ const results = evaluation.results ?? [];
86
+ const passed = results.filter((r) => r.status === 'pass').length;
87
+ const verdict = evaluation.evaluation?.verdict ?? 'UNKNOWN';
88
+ const summary = `Kraken BUILD turn — deterministic evidence: ${passed}/${results.length} ` +
89
+ `criteria pass, completion verdict ${verdict}.`;
90
+ const task = deps.task?.trim();
91
+ const testOutputExcerpt = extractTestOutputExcerpt(results);
92
+ let diffSummary;
93
+ try {
94
+ const res = await (deps.getDiff ?? getWorkingDiff)({
95
+ cwd: deps.cwd ?? process.cwd(),
96
+ maxChars: 8000,
97
+ staged: true,
98
+ });
99
+ if (res && !res.empty && res.diff)
100
+ diffSummary = res.diff;
101
+ }
102
+ catch {
103
+ // degrade-and-continue: the blind review proceeds without the diff
104
+ }
105
+ return {
106
+ ...(task ? { task } : {}),
107
+ summary,
108
+ ...(diffSummary !== undefined ? { diffSummary } : {}),
109
+ ...(testOutputExcerpt ? { testOutputExcerpt } : {}),
110
+ results,
111
+ };
45
112
  }
46
113
  /**
47
114
  * Run the advisory completion review and ATTACH it to the evaluation
@@ -56,7 +123,7 @@ export async function runAdvisoryVerifierReview(evaluation, deps = {}) {
56
123
  const selection = deps.selection ?? loadVerifierModelSelection();
57
124
  if (!verifierReviewEnabled(selection, env))
58
125
  return null;
59
- const identity = resolveIdentity(selection, deps.session);
126
+ const identity = resolveIdentity(selection, deps.session, deps.familyCandidates, env);
60
127
  let callModel = deps.callModel;
61
128
  if (!callModel) {
62
129
  if (!identity || !deps.loadStream)
@@ -74,12 +141,9 @@ export async function runAdvisoryVerifierReview(evaluation, deps = {}) {
74
141
  emit: deps.emit,
75
142
  env,
76
143
  });
77
- const passed = evaluation.results.filter((r) => r.status === 'pass').length;
78
- const summary = `Kraken BUILD turn — deterministic evidence: ${passed}/${evaluation.results.length} ` +
79
- `criteria pass, completion verdict ${evaluation.evaluation.verdict}.`;
144
+ const blind = await buildBlindReviewInput(evaluation, deps);
80
145
  const review = await service.reviewCompletion({
81
- summary,
82
- results: evaluation.results,
146
+ ...blind,
83
147
  session: deps.session,
84
148
  });
85
149
  evaluation.review = review;
@@ -1 +1 @@
1
- {"version":3,"file":"verifierLifecycle.js","sourceRoot":"","sources":["../../../src/cli/kraken/verifierLifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifierLifecycle.js","sourceRoot":"","sources":["../../../src/cli/kraken/verifierLifecycle.ts"],"names":[],"mappings":"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"}