vdelta 0.1.0 → 0.1.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/README.md CHANGED
@@ -18,7 +18,7 @@ another" — a verification delta can, and when two runs are not comparable it
18
18
  - Runner support (MVP): **vitest v4** (native reporter, structured channel only)
19
19
  - Zero runtime dependencies; Node ≥ 20
20
20
  - Machine-verified against the [conformance suite](conformance/) —
21
- 38 fixtures covering the spec's invariants, adversarial inputs, and a
21
+ 39 fixtures covering the spec's invariants, adversarial inputs, and a
22
22
  10-mutation cheating corpus with 100% detection recall
23
23
 
24
24
  ## Quickstart (5 minutes)
@@ -142,6 +142,14 @@ consumers must treat unknown values as hard errors.
142
142
  or digested.
143
143
  - The run store lives in `.veridelta/` (repo-local, self-gitignored,
144
144
  content-addressed, immutable).
145
+ - veridelta is read-only with respect to the observed repository: the only
146
+ things it writes are its own `.veridelta/` store and throwaway files under
147
+ the OS temp directory. Tree digesting uses a private index
148
+ (`GIT_INDEX_FILE`) and a private object directory
149
+ (`GIT_OBJECT_DIRECTORY`, with the repo's real objects supplied read-only
150
+ via `GIT_ALTERNATE_OBJECT_DIRECTORIES`), so no loose objects are ever
151
+ added to your `.git` — recording works even when the object database is
152
+ not writable (e.g. sandboxed environments).
145
153
 
146
154
  ## Protocol
147
155
 
@@ -154,7 +162,7 @@ intended success mode.
154
162
 
155
163
  ```bash
156
164
  npm test # unit + full conformance suite
157
- npm run test:conformance # the 38-fixture suite only
165
+ npm run test:conformance # the 39-fixture suite only
158
166
  ```
159
167
 
160
168
  The suite is authored independently of this implementation (the fixture
@@ -163,8 +171,10 @@ author reads only the spec and the harness contract in
163
171
  and mechanically verifies, among the spec's §13.2 classes: byte-identical
164
172
  determinism of re-executed comparisons, 100% detection recall on the
165
173
  cheating corpus, zero false green, fail-open degradation (INV-5),
166
- record-integrity tampering detection (INV-10), and exact tree-digest
167
- staleness (INV-11).
174
+ record-integrity tampering detection (INV-10), exact tree-digest
175
+ staleness (INV-11), and read-only object-database recording (tree
176
+ digesting never writes loose objects into the observed repository's
177
+ `.git`, even when it is not writable).
168
178
 
169
179
  ## License
170
180
 
@@ -160,7 +160,10 @@ function mapVerdict(t) {
160
160
  return { verdict: 'skip', suppression: { marker: 'todo' } };
161
161
  return {
162
162
  verdict: 'skip',
163
- suppression: { marker: 'runtime', ...(t.note !== undefined ? { note: t.note } : {}) },
163
+ suppression: {
164
+ marker: 'runtime',
165
+ ...(t.note !== undefined ? { note: t.note } : {}),
166
+ },
164
167
  };
165
168
  case 'pending':
166
169
  return { verdict: 'not_run' };
@@ -175,7 +178,10 @@ function buildFinding(t) {
175
178
  ...(e.operator !== undefined ? { operator: e.operator } : {}),
176
179
  rel_offsets: relOffsets(t, e.frames),
177
180
  }));
178
- const consoleEntries = t.console.map((c) => ({ type: c.type, content: redactText(c.content) }));
181
+ const consoleEntries = t.console.map((c) => ({
182
+ type: c.type,
183
+ content: redactText(c.content),
184
+ }));
179
185
  return {
180
186
  evidence_digest: canonicalDigest({ errors }),
181
187
  structural_fingerprint: canonicalDigest({
@@ -201,7 +207,9 @@ function buildFinding(t) {
201
207
  function relOffsets(t, frames) {
202
208
  if (t.location_line === null)
203
209
  return [];
204
- return frames.filter((f) => f.file === t.module_id).map((f) => f.line - t.location_line);
210
+ return frames
211
+ .filter((f) => f.file === t.module_id)
212
+ .map((f) => f.line - t.location_line);
205
213
  }
206
214
  function fileDigest(path) {
207
215
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"recorder.js","sourceRoot":"","sources":["../../../src/adapters/vitest/recorder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recorder.js","sourceRoot":"","sources":["../../../src/adapters/vitest/recorder.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  * a project's vitest config (ambient recording, §4.2).
8
8
  */
9
9
  import { writeFileSync } from 'node:fs';
10
- import { CAPTURE_VERSION } from './capture.js';
10
+ import { CAPTURE_VERSION, } from './capture.js';
11
11
  export default class VdeltaReporter {
12
12
  ctx;
13
13
  consoleByTask = new Map();
@@ -43,8 +43,7 @@ export default class VdeltaReporter {
43
43
  }
44
44
  }
45
45
  const config = this.ctx?.config;
46
- const chaiConfig = config
47
- ?.chaiConfig;
46
+ const chaiConfig = config?.chaiConfig;
48
47
  const capture = {
49
48
  capture_version: CAPTURE_VERSION,
50
49
  runner: 'vitest',
@@ -52,7 +51,8 @@ export default class VdeltaReporter {
52
51
  reason,
53
52
  unhandled_errors: unhandledErrors.length,
54
53
  config: {
55
- include_task_location: config?.includeTaskLocation === true,
54
+ include_task_location: config
55
+ ?.includeTaskLocation === true,
56
56
  truncate_threshold: chaiConfig?.truncateThreshold ?? null,
57
57
  },
58
58
  tests,
@@ -67,12 +67,16 @@ export default class VdeltaReporter {
67
67
  const err = e;
68
68
  return {
69
69
  name: typeof err.name === 'string' ? err.name : 'Error',
70
- message: typeof err.message === 'string' ? err.message : String(err.message ?? ''),
70
+ message: typeof err.message === 'string'
71
+ ? err.message
72
+ : String(err.message ?? ''),
71
73
  ...(typeof err.expected === 'string' ? { expected: err.expected } : {}),
72
74
  ...(typeof err.actual === 'string' ? { actual: err.actual } : {}),
73
75
  ...(typeof err.operator === 'string' ? { operator: err.operator } : {}),
74
76
  frames: (err.stacks ?? [])
75
- .filter((f) => typeof f.file === 'string' && typeof f.line === 'number' && typeof f.column === 'number')
77
+ .filter((f) => typeof f.file === 'string' &&
78
+ typeof f.line === 'number' &&
79
+ typeof f.column === 'number')
76
80
  .map((f) => ({ file: f.file, line: f.line, column: f.column })),
77
81
  };
78
82
  });
@@ -83,7 +87,9 @@ export default class VdeltaReporter {
83
87
  state: result.state,
84
88
  mode: tc.options.mode,
85
89
  fails: tc.options.fails === true,
86
- ...(result.state === 'skipped' && result.note !== undefined ? { note: result.note } : {}),
90
+ ...(result.state === 'skipped' && result.note !== undefined
91
+ ? { note: result.note }
92
+ : {}),
87
93
  location_line: tc.location?.line ?? null,
88
94
  errors,
89
95
  console: this.consoleByTask.get(tc.id) ?? [],
@@ -1 +1 @@
1
- {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../src/adapters/vitest/reporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../src/adapters/vitest/reporter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"canonical.js","sourceRoot":"","sources":["../src/canonical.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;IACtC,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,IAAY;IAC7C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,MAAM,CAAA;IACjC,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;QACjC,KAAK,QAAQ;YACX,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,sBAAsB,CAAC,yBAAyB,IAAI,KAAK,KAAK,EAAE,CAAC,CAAA;YAC7E,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,sBAAsB,CAAC,qBAAqB,IAAI,KAAK,KAAK,EAAE,CAAC,CAAA;YACzE,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;QACtB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC9B,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;YACrG,CAAC;YACD,MAAM,MAAM,GAAG,KAAgC,CAAA;YAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;iBAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;iBACtC,IAAI,EAAE,CAAA;YACT,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;QACzG,CAAC;QACD;YACE,MAAM,IAAI,sBAAsB,CAAC,kBAAkB,OAAO,KAAK,OAAO,IAAI,EAAE,CAAC,CAAA;IACjF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"canonical.js","sourceRoot":"","sources":["../src/canonical.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;IACtC,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,IAAY;IAC7C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,MAAM,CAAA;IACjC,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;QACjC,KAAK,QAAQ;YACX,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,sBAAsB,CAC9B,yBAAyB,IAAI,KAAK,KAAK,EAAE,CAC1C,CAAA;YACH,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,sBAAsB,CAAC,qBAAqB,IAAI,KAAK,KAAK,EAAE,CAAC,CAAA;YACzE,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;QACtB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC9B,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;YACrG,CAAC;YACD,MAAM,MAAM,GAAG,KAAgC,CAAA;YAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;iBAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;iBACtC,IAAI,EAAE,CAAA;YACT,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;QACzG,CAAC;QACD;YACE,MAAM,IAAI,sBAAsB,CAC9B,kBAAkB,OAAO,KAAK,OAAO,IAAI,EAAE,CAC5C,CAAA;IACL,CAAC;AACH,CAAC"}
package/dist/cli.js CHANGED
@@ -8,7 +8,7 @@
8
8
  * gate — report-only: 0 whenever a report is produced, 2 otherwise
9
9
  * The report goes to stdout; vdelta diagnostics go to stderr only.
10
10
  */
11
- import { buildComparisonReport, CompareOperationError } from './compare.js';
11
+ import { buildComparisonReport, CompareOperationError, } from './compare.js';
12
12
  import { buildGateReport, GateOperationError } from './gate.js';
13
13
  import { renderReport } from './render.js';
14
14
  import { runAndRecord, VDELTA_VERSION } from './run.js';
@@ -105,8 +105,16 @@ async function cmdCompare(argv) {
105
105
  const resolved = await resolveRef(worktree, ref);
106
106
  if (resolved === null)
107
107
  die(`cannot resolve ref: ${ref}`);
108
- spec = { mode: 'git-ref', ref, commit: resolved.commit, tree: resolved.tree };
109
- currentId = positional[0] !== undefined ? store.resolveRunId(positional[0]) : store.lastRunId();
108
+ spec = {
109
+ mode: 'git-ref',
110
+ ref,
111
+ commit: resolved.commit,
112
+ tree: resolved.tree,
113
+ };
114
+ currentId =
115
+ positional[0] !== undefined
116
+ ? store.resolveRunId(positional[0])
117
+ : store.lastRunId();
110
118
  }
111
119
  else if (positional.length === 2) {
112
120
  spec = { mode: 'explicit-run-id', runId: positional[0] };
@@ -258,7 +266,7 @@ async function main() {
258
266
  }
259
267
  }
260
268
  main().catch((err) => {
261
- process.stderr.write(`vdelta: internal error: ${err instanceof Error ? err.stack ?? err.message : String(err)}\n`);
269
+ process.stderr.write(`vdelta: internal error: ${err instanceof Error ? (err.stack ?? err.message) : String(err)}\n`);
262
270
  process.exit(1);
263
271
  });
264
272
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/compare.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { RunStore } from './store.js';
2
- import { type BaselineMode, type ComparabilityDetail, type ComparisonReport, type RunRecord } from './schema.js';
1
+ import { type BaselineMode, type ComparabilityDetail, type ComparisonReport, type NearMiss, type RunRecord } from './schema.js';
2
+ import { type RunStore } from './store.js';
3
3
  export type BaselineSpec = {
4
4
  mode: 'previous-comparable';
5
5
  } | {
@@ -16,6 +16,17 @@ export declare class CompareOperationError extends Error {
16
16
  }
17
17
  /** Stream key (§5.1): repo + worktree + branch + cwd + command + selector + instrument. */
18
18
  export declare function streamKey(r: RunRecord): string;
19
+ /**
20
+ * Near-miss disclosure (§5.4): given `candidates` (complete stored runs
21
+ * excluding the current run, oldest-first insertion order), select the
22
+ * candidate with the fewest mismatching stream-key components. Ties break
23
+ * on recency = latest store insertion order (last element wins). Returns
24
+ * undefined when there are no candidates. Deterministic: no timestamps.
25
+ */
26
+ export declare function nearMissDisclosure(current: RunRecord, candidates: readonly {
27
+ runId: string;
28
+ record: RunRecord;
29
+ }[]): NearMiss | undefined;
19
30
  export interface BaselineResolution {
20
31
  record: RunRecord | null;
21
32
  runId: string | null;
package/dist/compare.js CHANGED
@@ -3,9 +3,9 @@
3
3
  * the three delta axes, and comparison-report construction. Deterministic:
4
4
  * no timestamps, stable sort orders, recency = store insertion order.
5
5
  */
6
- import { DEGRADED_CAPABILITIES, COMPOSITION_ID } from './adapters/vitest/recorder.js';
6
+ import { COMPOSITION_ID, DEGRADED_CAPABILITIES, } from './adapters/vitest/recorder.js';
7
+ import { isRed, SCHEMA_VERSION, STREAM_KEY_FIELDS, } from './schema.js';
7
8
  import { StoreCorruptError } from './store.js';
8
- import { SCHEMA_VERSION, isRed, } from './schema.js';
9
9
  export class CompareOperationError extends Error {
10
10
  constructor(message) {
11
11
  super(message);
@@ -26,6 +26,68 @@ export function streamKey(r) {
26
26
  r.instrument.config_digest,
27
27
  ]);
28
28
  }
29
+ /** Stream-key component value, rendered for near-miss disclosure (array fields joined with a single space). */
30
+ function streamKeyFieldValue(r, field) {
31
+ switch (field) {
32
+ case 'repo.identity':
33
+ return r.repo.identity;
34
+ case 'repo.worktree':
35
+ return r.repo.worktree;
36
+ case 'repo.branch':
37
+ return r.repo.branch;
38
+ case 'repo.cwd':
39
+ return r.repo.cwd;
40
+ case 'invocation.command':
41
+ return r.invocation.command.join(' ');
42
+ case 'invocation.selector':
43
+ return r.invocation.selector.join(' ');
44
+ case 'instrument.adapter':
45
+ return r.instrument.adapter;
46
+ case 'instrument.adapter_version':
47
+ return r.instrument.adapter_version;
48
+ case 'instrument.config_digest':
49
+ return r.instrument.config_digest;
50
+ }
51
+ }
52
+ function streamKeyFieldEqual(a, b, field) {
53
+ if (field === 'invocation.command') {
54
+ return (JSON.stringify(a.invocation.command) ===
55
+ JSON.stringify(b.invocation.command));
56
+ }
57
+ if (field === 'invocation.selector') {
58
+ return (JSON.stringify(a.invocation.selector) ===
59
+ JSON.stringify(b.invocation.selector));
60
+ }
61
+ return streamKeyFieldValue(a, field) === streamKeyFieldValue(b, field);
62
+ }
63
+ /**
64
+ * Near-miss disclosure (§5.4): given `candidates` (complete stored runs
65
+ * excluding the current run, oldest-first insertion order), select the
66
+ * candidate with the fewest mismatching stream-key components. Ties break
67
+ * on recency = latest store insertion order (last element wins). Returns
68
+ * undefined when there are no candidates. Deterministic: no timestamps.
69
+ */
70
+ export function nearMissDisclosure(current, candidates) {
71
+ let best;
72
+ for (const { runId, record } of candidates) {
73
+ const mismatches = [];
74
+ for (const field of STREAM_KEY_FIELDS) {
75
+ if (!streamKeyFieldEqual(record, current, field)) {
76
+ mismatches.push({
77
+ field,
78
+ recorded: streamKeyFieldValue(record, field),
79
+ current: streamKeyFieldValue(current, field),
80
+ });
81
+ }
82
+ }
83
+ if (best === undefined || mismatches.length <= best.mismatches.length) {
84
+ best = { runId, mismatches };
85
+ }
86
+ }
87
+ if (best === undefined)
88
+ return undefined;
89
+ return { run_id: best.runId, mismatches: best.mismatches };
90
+ }
29
91
  function sameInstrument(a, b) {
30
92
  return (a.instrument.adapter === b.instrument.adapter &&
31
93
  a.instrument.adapter_version === b.instrument.adapter_version &&
@@ -33,14 +95,16 @@ function sameInstrument(a, b) {
33
95
  a.instrument.config_digest === b.instrument.config_digest);
34
96
  }
35
97
  function sameSelector(a, b) {
36
- return JSON.stringify(a.invocation.selector) === JSON.stringify(b.invocation.selector);
98
+ return (JSON.stringify(a.invocation.selector) ===
99
+ JSON.stringify(b.invocation.selector));
37
100
  }
38
101
  function sameStreamScope(a, b) {
39
102
  return (a.repo.identity === b.repo.identity &&
40
103
  a.repo.worktree === b.repo.worktree &&
41
104
  a.repo.branch === b.repo.branch &&
42
105
  a.repo.cwd === b.repo.cwd &&
43
- JSON.stringify(a.invocation.command) === JSON.stringify(b.invocation.command));
106
+ JSON.stringify(a.invocation.command) ===
107
+ JSON.stringify(b.invocation.command));
44
108
  }
45
109
  /**
46
110
  * Resolve the baseline per §5.2. Selection is content-addressed and
@@ -63,6 +127,7 @@ export function resolveBaseline(store, current, currentId, spec) {
63
127
  case 'previous-comparable': {
64
128
  const ids = store.listRunIds();
65
129
  const key = streamKey(current);
130
+ const candidates = [];
66
131
  for (let i = ids.length - 1; i >= 0; i--) {
67
132
  const id = ids[i];
68
133
  if (id === currentId)
@@ -70,6 +135,7 @@ export function resolveBaseline(store, current, currentId, spec) {
70
135
  const record = store.readRun(id);
71
136
  if (record.completeness.status !== 'complete')
72
137
  continue;
138
+ candidates.push({ runId: id, record });
73
139
  if (streamKey(record) !== key)
74
140
  continue;
75
141
  return {
@@ -79,12 +145,18 @@ export function resolveBaseline(store, current, currentId, spec) {
79
145
  selectionReason: 'same-worktree-command-config-scope',
80
146
  };
81
147
  }
148
+ candidates.reverse();
149
+ const nm = nearMissDisclosure(current, candidates);
82
150
  return {
83
151
  record: null,
84
152
  runId: null,
85
153
  mode: 'previous-comparable',
86
154
  selectionReason: 'no-complete-run-in-stream',
87
- failure: { reason: 'baseline-missing', kind: 'determined' },
155
+ failure: {
156
+ reason: 'baseline-missing',
157
+ kind: 'determined',
158
+ ...(nm !== undefined ? { near_miss: nm } : {}),
159
+ },
88
160
  };
89
161
  }
90
162
  case 'git-ref': {
@@ -128,7 +200,8 @@ function judgeComparability(baseline, current) {
128
200
  },
129
201
  ];
130
202
  if (baseline.instrument.adapter !== current.instrument.adapter ||
131
- baseline.instrument.adapter_version !== current.instrument.adapter_version ||
203
+ baseline.instrument.adapter_version !==
204
+ current.instrument.adapter_version ||
132
205
  baseline.instrument.composition_id !== current.instrument.composition_id) {
133
206
  events.push({
134
207
  kind: 'adapter-capability-changed',
@@ -171,7 +244,10 @@ function judgeComparability(baseline, current) {
171
244
  }
172
245
  const bInventory = baseline.observations.map((o) => o.test_id).join('\n');
173
246
  const cInventory = current.observations.map((o) => o.test_id).join('\n');
174
- return { comparability: bInventory === cInventory ? 'exact' : 'scope_changed', events: [] };
247
+ return {
248
+ comparability: bInventory === cInventory ? 'exact' : 'scope_changed',
249
+ events: [],
250
+ };
175
251
  }
176
252
  function configSourceEvents(baseline, current) {
177
253
  const events = [];
@@ -180,7 +256,8 @@ function configSourceEvents(baseline, current) {
180
256
  ...Object.keys(current.surface.config_sources),
181
257
  ]);
182
258
  for (const path of [...paths].sort()) {
183
- if (baseline.surface.config_sources[path] !== current.surface.config_sources[path]) {
259
+ if (baseline.surface.config_sources[path] !==
260
+ current.surface.config_sources[path]) {
184
261
  events.push({ kind: 'config-source-changed', path });
185
262
  }
186
263
  }
@@ -205,7 +282,9 @@ function coverage(record) {
205
282
  return `${observed}/${declared}`;
206
283
  }
207
284
  function redIds(record) {
208
- return record.observations.filter((o) => isRed(o.verdict)).map((o) => o.test_id);
285
+ return record.observations
286
+ .filter((o) => isRed(o.verdict))
287
+ .map((o) => o.test_id);
209
288
  }
210
289
  function shortId(runId) {
211
290
  return runId.slice(0, 12);
@@ -234,7 +313,8 @@ export function buildComparisonReport(store, currentId, spec) {
234
313
  const baseline = resolution.record;
235
314
  const judged = judgeComparability(baseline, current);
236
315
  if (judged.comparability === 'none') {
237
- const detail = judged.detail ?? resolution.failure ?? {
316
+ const detail = judged.detail ??
317
+ resolution.failure ?? {
238
318
  reason: 'baseline-missing',
239
319
  kind: 'determined',
240
320
  };
@@ -276,7 +356,10 @@ function abstentionReport(current, currentId, detail, events, baseline, resoluti
276
356
  anchors,
277
357
  };
278
358
  if (events.length > 0) {
279
- report.verification_surface = { status: 'changed', events: sortEvents(events) };
359
+ report.verification_surface = {
360
+ status: 'changed',
361
+ events: sortEvents(events),
362
+ };
280
363
  }
281
364
  return report;
282
365
  }
@@ -344,7 +427,8 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
344
427
  test_id: id,
345
428
  evidence_digest_before: bDigest ?? '',
346
429
  evidence_digest_after: cDigest ?? '',
347
- failure_mode_changed: b.finding?.structural_fingerprint !== c.finding?.structural_fingerprint,
430
+ failure_mode_changed: b.finding?.structural_fingerprint !==
431
+ c.finding?.structural_fingerprint,
348
432
  degraded_capabilities: [...DEGRADED_CAPABILITIES],
349
433
  };
350
434
  transitions.updated_fail.push(entry);
@@ -387,12 +471,19 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
387
471
  }
388
472
  }
389
473
  events.push(...configSourceEvents(baseline, current));
390
- const lostObservation = transitions.not_observed.length > 0 || (partial && hasLostObservation(baseline, current));
474
+ const lostObservation = transitions.not_observed.length > 0 ||
475
+ (partial && hasLostObservation(baseline, current));
391
476
  const reduced = transitions.fail_to_skip.length > 0 ||
392
477
  transitions.fail_to_xfail.length > 0 ||
393
- events.some((e) => e.kind === 'test-removed' || e.kind === 'fail-to-skip' || e.kind === 'fail-to-xfail') ||
478
+ events.some((e) => e.kind === 'test-removed' ||
479
+ e.kind === 'fail-to-skip' ||
480
+ e.kind === 'fail-to-xfail') ||
394
481
  lostObservation;
395
- const status = reduced ? 'reduced' : events.length > 0 ? 'changed' : 'intact';
482
+ const status = reduced
483
+ ? 'reduced'
484
+ : events.length > 0
485
+ ? 'changed'
486
+ : 'intact';
396
487
  const outcome = deriveOutcome(transitions, partial);
397
488
  const anchors = {};
398
489
  for (const id of transitions.new_fail)
@@ -441,7 +532,9 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
441
532
  };
442
533
  }
443
534
  function hasLostObservation(baseline, current) {
444
- const observedNow = new Set(current.observations.filter((o) => o.verdict !== 'not_run').map((o) => o.test_id));
535
+ const observedNow = new Set(current.observations
536
+ .filter((o) => o.verdict !== 'not_run')
537
+ .map((o) => o.test_id));
445
538
  return baseline.observations.some((o) => o.verdict !== 'not_run' && !observedNow.has(o.test_id));
446
539
  }
447
540
  function relOf(testId) {
@@ -453,7 +546,8 @@ function deriveOutcome(t, partial) {
453
546
  return 'regressed';
454
547
  if (partial)
455
548
  return 'inconclusive';
456
- if (t.repaired_same_surface.length > 0 || t.repaired_with_test_change.length > 0) {
549
+ if (t.repaired_same_surface.length > 0 ||
550
+ t.repaired_with_test_change.length > 0) {
457
551
  return 'improved';
458
552
  }
459
553
  return 'unchanged';
@@ -471,6 +565,6 @@ function sortTransitions(t) {
471
565
  const kb = typeof b === 'string' ? b : b.test_id;
472
566
  return ka < kb ? -1 : ka > kb ? 1 : 0;
473
567
  });
474
- t.updated_fail.sort((a, b) => (a.test_id < b.test_id ? -1 : a.test_id > b.test_id ? 1 : 0));
568
+ t.updated_fail.sort((a, b) => a.test_id < b.test_id ? -1 : a.test_id > b.test_id ? 1 : 0);
475
569
  }
476
570
  //# sourceMappingURL=compare.js.map