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 +14 -4
- package/dist/adapters/vitest/recorder.js +11 -3
- package/dist/adapters/vitest/recorder.js.map +1 -1
- package/dist/adapters/vitest/reporter.js +13 -7
- package/dist/adapters/vitest/reporter.js.map +1 -1
- package/dist/canonical.js.map +1 -1
- package/dist/cli.js +12 -4
- package/dist/cli.js.map +1 -1
- package/dist/compare.d.ts +13 -2
- package/dist/compare.js +112 -18
- package/dist/compare.js.map +1 -1
- package/dist/gate.d.ts +7 -1
- package/dist/gate.js +11 -6
- package/dist/gate.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/redact.js +4 -1
- package/dist/redact.js.map +1 -1
- package/dist/render.js +12 -2
- package/dist/render.js.map +1 -1
- package/dist/run.d.ts +1 -1
- package/dist/run.js +30 -9
- package/dist/run.js.map +1 -1
- package/dist/schema.d.ts +12 -0
- package/dist/schema.js +127 -19
- package/dist/schema.js.map +1 -1
- package/dist/store.d.ts +5 -0
- package/dist/store.js +5 -3
- package/dist/store.js.map +1 -1
- package/dist/tree-digest.js +51 -14
- package/dist/tree-digest.js.map +1 -1
- package/package.json +5 -2
- package/spec/veridelta-1.md +58 -4
package/dist/schema.js
CHANGED
|
@@ -5,9 +5,23 @@
|
|
|
5
5
|
* backward-compatibility scaffolding.
|
|
6
6
|
*/
|
|
7
7
|
export const SCHEMA_VERSION = 'veridelta/1';
|
|
8
|
-
export const VERDICTS = [
|
|
8
|
+
export const VERDICTS = [
|
|
9
|
+
'pass',
|
|
10
|
+
'fail',
|
|
11
|
+
'error',
|
|
12
|
+
'skip',
|
|
13
|
+
'xfail',
|
|
14
|
+
'xpass',
|
|
15
|
+
'not_run',
|
|
16
|
+
];
|
|
9
17
|
export const RED_SET = ['fail', 'error'];
|
|
10
|
-
export const COMPARABILITIES = [
|
|
18
|
+
export const COMPARABILITIES = [
|
|
19
|
+
'exact',
|
|
20
|
+
'scope_changed',
|
|
21
|
+
'subset',
|
|
22
|
+
'partial',
|
|
23
|
+
'none',
|
|
24
|
+
];
|
|
11
25
|
export const NONE_REASONS = [
|
|
12
26
|
'baseline-missing',
|
|
13
27
|
'stream-mismatch',
|
|
@@ -18,8 +32,29 @@ export const NONE_REASONS = [
|
|
|
18
32
|
'record-integrity-failed',
|
|
19
33
|
];
|
|
20
34
|
export const DETAIL_KINDS = ['determined', 'failed'];
|
|
21
|
-
export const
|
|
22
|
-
|
|
35
|
+
export const STREAM_KEY_FIELDS = [
|
|
36
|
+
'repo.identity',
|
|
37
|
+
'repo.worktree',
|
|
38
|
+
'repo.branch',
|
|
39
|
+
'repo.cwd',
|
|
40
|
+
'invocation.command',
|
|
41
|
+
'invocation.selector',
|
|
42
|
+
'instrument.adapter',
|
|
43
|
+
'instrument.adapter_version',
|
|
44
|
+
'instrument.config_digest',
|
|
45
|
+
];
|
|
46
|
+
export const OUTCOME_VERDICTS = [
|
|
47
|
+
'regressed',
|
|
48
|
+
'improved',
|
|
49
|
+
'unchanged',
|
|
50
|
+
'inconclusive',
|
|
51
|
+
];
|
|
52
|
+
export const SURFACE_STATUSES = [
|
|
53
|
+
'intact',
|
|
54
|
+
'changed',
|
|
55
|
+
'reduced',
|
|
56
|
+
'inconclusive',
|
|
57
|
+
];
|
|
23
58
|
export const SURFACE_EVENT_KINDS = [
|
|
24
59
|
'test-added',
|
|
25
60
|
'test-removed',
|
|
@@ -40,7 +75,11 @@ export const BASELINE_MODES = [
|
|
|
40
75
|
'previous-superset',
|
|
41
76
|
];
|
|
42
77
|
export const COMPLETENESS_STATUSES = ['complete', 'partial', 'crashed'];
|
|
43
|
-
export const RECORD_INTEGRITIES = [
|
|
78
|
+
export const RECORD_INTEGRITIES = [
|
|
79
|
+
'advisory',
|
|
80
|
+
'tamper-evident',
|
|
81
|
+
'trusted-environment',
|
|
82
|
+
];
|
|
44
83
|
export const GATE_POLICIES = ['report-only', 'advisory', 'blocking'];
|
|
45
84
|
export const GATE_VERDICTS = ['pass', 'fail', 'inconclusive'];
|
|
46
85
|
export const GATE_TARGET_KINDS = ['head', 'merge'];
|
|
@@ -116,6 +155,22 @@ function validateStringMap(v, path) {
|
|
|
116
155
|
for (const [k, val] of Object.entries(o))
|
|
117
156
|
asString(val, `${path}.${k}`);
|
|
118
157
|
}
|
|
158
|
+
function validateNearMiss(v, path) {
|
|
159
|
+
const o = asObject(v, path);
|
|
160
|
+
checkKeys(o, path, ['run_id', 'mismatches']);
|
|
161
|
+
asString(o.run_id, `${path}.run_id`);
|
|
162
|
+
if (!Array.isArray(o.mismatches))
|
|
163
|
+
fail(`${path}.mismatches`, 'expected array');
|
|
164
|
+
if (o.mismatches.length === 0)
|
|
165
|
+
fail(`${path}.mismatches`, 'expected non-empty array');
|
|
166
|
+
o.mismatches.forEach((m, i) => {
|
|
167
|
+
const mo = asObject(m, `${path}.mismatches[${i}]`);
|
|
168
|
+
checkKeys(mo, `${path}.mismatches[${i}]`, ['field', 'recorded', 'current']);
|
|
169
|
+
asEnum(mo.field, STREAM_KEY_FIELDS, `${path}.mismatches[${i}].field`);
|
|
170
|
+
asString(mo.recorded, `${path}.mismatches[${i}].recorded`);
|
|
171
|
+
asString(mo.current, `${path}.mismatches[${i}].current`);
|
|
172
|
+
});
|
|
173
|
+
}
|
|
119
174
|
function validateStillFailEntry(v, path) {
|
|
120
175
|
if (typeof v === 'string')
|
|
121
176
|
return;
|
|
@@ -129,7 +184,12 @@ function validateStillFailEntry(v, path) {
|
|
|
129
184
|
}
|
|
130
185
|
function validateUpdatedFailEntry(v, path) {
|
|
131
186
|
const o = asObject(v, path);
|
|
132
|
-
checkKeys(o, path, [
|
|
187
|
+
checkKeys(o, path, [
|
|
188
|
+
'test_id',
|
|
189
|
+
'evidence_digest_before',
|
|
190
|
+
'evidence_digest_after',
|
|
191
|
+
'failure_mode_changed',
|
|
192
|
+
], ['degraded_capabilities']);
|
|
133
193
|
asString(o.test_id, `${path}.test_id`);
|
|
134
194
|
asString(o.evidence_digest_before, `${path}.evidence_digest_before`);
|
|
135
195
|
asString(o.evidence_digest_after, `${path}.evidence_digest_after`);
|
|
@@ -157,13 +217,19 @@ function validateTransitions(v, path) {
|
|
|
157
217
|
if (!Array.isArray(arr))
|
|
158
218
|
fail(`${path}.${key}`, 'expected array');
|
|
159
219
|
if (key === 'still_fail_unchanged') {
|
|
160
|
-
arr.forEach((e, i) =>
|
|
220
|
+
arr.forEach((e, i) => {
|
|
221
|
+
validateStillFailEntry(e, `${path}.${key}[${i}]`);
|
|
222
|
+
});
|
|
161
223
|
}
|
|
162
224
|
else if (key === 'updated_fail') {
|
|
163
|
-
arr.forEach((e, i) =>
|
|
225
|
+
arr.forEach((e, i) => {
|
|
226
|
+
validateUpdatedFailEntry(e, `${path}.${key}[${i}]`);
|
|
227
|
+
});
|
|
164
228
|
}
|
|
165
229
|
else {
|
|
166
|
-
arr.forEach((e, i) =>
|
|
230
|
+
arr.forEach((e, i) => {
|
|
231
|
+
asString(e, `${path}.${key}[${i}]`);
|
|
232
|
+
});
|
|
167
233
|
}
|
|
168
234
|
}
|
|
169
235
|
}
|
|
@@ -178,7 +244,14 @@ function validateSurfaceEvent(v, path) {
|
|
|
178
244
|
}
|
|
179
245
|
function validateGate(v, path) {
|
|
180
246
|
const o = asObject(v, path);
|
|
181
|
-
checkKeys(o, path, [
|
|
247
|
+
checkKeys(o, path, [
|
|
248
|
+
'policy',
|
|
249
|
+
'verdict',
|
|
250
|
+
'triggered',
|
|
251
|
+
'target',
|
|
252
|
+
'staleness',
|
|
253
|
+
'record_integrity',
|
|
254
|
+
]);
|
|
182
255
|
asEnum(o.policy, GATE_POLICIES, `${path}.policy`);
|
|
183
256
|
asEnum(o.verdict, GATE_VERDICTS, `${path}.verdict`);
|
|
184
257
|
asStringArray(o.triggered, `${path}.triggered`);
|
|
@@ -253,9 +326,11 @@ export function parseReport(value) {
|
|
|
253
326
|
asString(cov.baseline, 'report.observation_coverage.baseline');
|
|
254
327
|
if ('comparability_detail' in o) {
|
|
255
328
|
const d = asObject(o.comparability_detail, 'report.comparability_detail');
|
|
256
|
-
checkKeys(d, 'report.comparability_detail', ['reason', 'kind']);
|
|
329
|
+
checkKeys(d, 'report.comparability_detail', ['reason', 'kind'], ['near_miss']);
|
|
257
330
|
asEnum(d.reason, NONE_REASONS, 'report.comparability_detail.reason');
|
|
258
331
|
asEnum(d.kind, DETAIL_KINDS, 'report.comparability_detail.kind');
|
|
332
|
+
if ('near_miss' in d)
|
|
333
|
+
validateNearMiss(d.near_miss, 'report.comparability_detail.near_miss');
|
|
259
334
|
}
|
|
260
335
|
else if (comparability === 'none') {
|
|
261
336
|
fail('report.comparability_detail', 'required when comparability is "none" (§6.3)');
|
|
@@ -266,12 +341,17 @@ export function parseReport(value) {
|
|
|
266
341
|
asEnum(s.status, SURFACE_STATUSES, 'report.verification_surface.status');
|
|
267
342
|
if (!Array.isArray(s.events))
|
|
268
343
|
fail('report.verification_surface.events', 'expected array');
|
|
269
|
-
s.events.forEach((e, i) =>
|
|
344
|
+
s.events.forEach((e, i) => {
|
|
345
|
+
validateSurfaceEvent(e, `report.verification_surface.events[${i}]`);
|
|
346
|
+
});
|
|
270
347
|
}
|
|
271
348
|
if ('transitions' in o)
|
|
272
349
|
validateTransitions(o.transitions, 'report.transitions');
|
|
273
350
|
const fe = asObject(o.failure_evidence, 'report.failure_evidence');
|
|
274
|
-
checkKeys(fe, 'report.failure_evidence', [
|
|
351
|
+
checkKeys(fe, 'report.failure_evidence', [
|
|
352
|
+
'composition_id',
|
|
353
|
+
'degraded_capabilities',
|
|
354
|
+
]);
|
|
275
355
|
asString(fe.composition_id, 'report.failure_evidence.composition_id');
|
|
276
356
|
asStringArray(fe.degraded_capabilities, 'report.failure_evidence.degraded_capabilities');
|
|
277
357
|
const trust = asObject(o.trust, 'report.trust');
|
|
@@ -292,7 +372,13 @@ export function parseReport(value) {
|
|
|
292
372
|
}
|
|
293
373
|
function validateFinding(v, path) {
|
|
294
374
|
const o = asObject(v, path);
|
|
295
|
-
checkKeys(o, path, [
|
|
375
|
+
checkKeys(o, path, [
|
|
376
|
+
'evidence_digest',
|
|
377
|
+
'structural_fingerprint',
|
|
378
|
+
'evidence',
|
|
379
|
+
'context_digest',
|
|
380
|
+
'annex',
|
|
381
|
+
]);
|
|
296
382
|
asString(o.evidence_digest, `${path}.evidence_digest`);
|
|
297
383
|
asString(o.structural_fingerprint, `${path}.structural_fingerprint`);
|
|
298
384
|
const ev = asObject(o.evidence, `${path}.evidence`);
|
|
@@ -306,7 +392,9 @@ function validateFinding(v, path) {
|
|
|
306
392
|
asString(eo.message, `${path}.evidence.errors[${i}].message`);
|
|
307
393
|
if (!Array.isArray(eo.rel_offsets))
|
|
308
394
|
fail(`${path}.evidence.errors[${i}].rel_offsets`, 'expected array');
|
|
309
|
-
eo.rel_offsets.forEach((n, j) =>
|
|
395
|
+
eo.rel_offsets.forEach((n, j) => {
|
|
396
|
+
asInteger(n, `${path}.evidence.errors[${i}].rel_offsets[${j}]`);
|
|
397
|
+
});
|
|
310
398
|
});
|
|
311
399
|
asString(o.context_digest, `${path}.context_digest`);
|
|
312
400
|
const annex = asObject(o.annex, `${path}.annex`);
|
|
@@ -339,16 +427,36 @@ export function parseRunRecord(value) {
|
|
|
339
427
|
asStringArray(invocation.command, 'record.invocation.command');
|
|
340
428
|
asStringArray(invocation.selector, 'record.invocation.selector');
|
|
341
429
|
const instrument = asObject(o.instrument, 'record.instrument');
|
|
342
|
-
checkKeys(instrument, 'record.instrument', [
|
|
430
|
+
checkKeys(instrument, 'record.instrument', [
|
|
431
|
+
'adapter',
|
|
432
|
+
'adapter_version',
|
|
433
|
+
'composition_id',
|
|
434
|
+
'config_digest',
|
|
435
|
+
]);
|
|
343
436
|
const environment = asObject(o.environment, 'record.environment');
|
|
344
|
-
checkKeys(environment, 'record.environment', [
|
|
437
|
+
checkKeys(environment, 'record.environment', [
|
|
438
|
+
'runner',
|
|
439
|
+
'runner_version',
|
|
440
|
+
'runtime',
|
|
441
|
+
'os',
|
|
442
|
+
'env_fingerprint',
|
|
443
|
+
]);
|
|
345
444
|
const provenance = asObject(o.provenance, 'record.provenance');
|
|
346
|
-
checkKeys(provenance, 'record.provenance', [
|
|
445
|
+
checkKeys(provenance, 'record.provenance', [
|
|
446
|
+
'head',
|
|
447
|
+
'dirty_diff_digest',
|
|
448
|
+
'tree_digest',
|
|
449
|
+
]);
|
|
347
450
|
if (provenance.head !== null)
|
|
348
451
|
asString(provenance.head, 'record.provenance.head');
|
|
349
452
|
asString(provenance.tree_digest, 'record.provenance.tree_digest');
|
|
350
453
|
const surface = asObject(o.surface, 'record.surface');
|
|
351
|
-
checkKeys(surface, 'record.surface', [
|
|
454
|
+
checkKeys(surface, 'record.surface', [
|
|
455
|
+
'inventory_digest',
|
|
456
|
+
'test_sources',
|
|
457
|
+
'config_sources',
|
|
458
|
+
'suppressed',
|
|
459
|
+
]);
|
|
352
460
|
validateStringMap(surface.test_sources, 'record.surface.test_sources');
|
|
353
461
|
validateStringMap(surface.config_sources, 'record.surface.config_sources');
|
|
354
462
|
asStringArray(surface.suppressed, 'record.surface.suppressed');
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/store.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Content-addressed run store (spec §4): immutable records, atomic writes,
|
|
3
|
+
* fail-open advisory lock, enforced gitignore. Recency is store insertion
|
|
4
|
+
* order (the append-only index), never timestamps (§7.8).
|
|
5
|
+
*/
|
|
1
6
|
import { type RunRecord } from './schema.js';
|
|
2
7
|
export declare class StoreCorruptError extends Error {
|
|
3
8
|
constructor(message: string);
|
package/dist/store.js
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
* fail-open advisory lock, enforced gitignore. Recency is store insertion
|
|
4
4
|
* order (the append-only index), never timestamps (§7.8).
|
|
5
5
|
*/
|
|
6
|
-
import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, rmdirSync, writeFileSync, } from 'node:fs';
|
|
7
|
-
import { join } from 'node:path';
|
|
8
6
|
import { randomUUID } from 'node:crypto';
|
|
7
|
+
import { appendFileSync, existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmdirSync, writeFileSync, } from 'node:fs';
|
|
8
|
+
import { join } from 'node:path';
|
|
9
9
|
import { canonicalJson } from './canonical.js';
|
|
10
10
|
import { sha256Hex } from './digest.js';
|
|
11
11
|
import { parseRunRecord } from './schema.js';
|
|
@@ -123,7 +123,9 @@ export class RunStore {
|
|
|
123
123
|
/** Resolve a possibly-prefixed run id to a stored full id (§3.5 MAY). */
|
|
124
124
|
resolveRunId(idOrPrefix) {
|
|
125
125
|
if (RUN_ID_RE.test(idOrPrefix)) {
|
|
126
|
-
return existsSync(join(this.runsDir, `${idOrPrefix}.json`))
|
|
126
|
+
return existsSync(join(this.runsDir, `${idOrPrefix}.json`))
|
|
127
|
+
? idOrPrefix
|
|
128
|
+
: null;
|
|
127
129
|
}
|
|
128
130
|
if (!existsSync(this.runsDir))
|
|
129
131
|
return null;
|
package/dist/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EACL,cAAc,EACd,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,aAAa,GACd,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,cAAc,EAAkB,MAAM,aAAa,CAAA;AAE5D,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAA;IACjC,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC;QACE,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AAED,MAAM,SAAS,GAAG,oBAAoB,CAAA;AAEtC,mFAAmF;AACnF,MAAM,UAAU,YAAY,CAAC,MAAiB;IAC5C,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,GAAG,MAAM,CAAA;IACtD,OAAO,OAAO,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,CAAA;AACrD,CAAC;AAED,MAAM,OAAO,QAAQ;IACV,GAAG,CAAQ;IAEpB,YAAY,YAAoB;QAC9B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;IAC7C,CAAC;IAED,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC/B,CAAC;IAED,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAChC,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC/B,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM;QACJ,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5C,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;QACvC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAAE,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IAC/C,CAAC;IAED,wGAAwG;IACxG,WAAW;QACT,IAAI,CAAC;YACH,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,aAAa,EAAE,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC;YACH,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,2EAA2E;QAC7E,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,MAAiB;QACxB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,CAAA;QAChD,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,UAAU,EAAE,EAAE,CAAC,CAAA;YACtD,aAAa,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;YAC1D,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACrB,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK,IAAI,CAAC,CAAA;QAC9C,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,UAAU,EAAE,EAAE,CAAC,CAAA;QAC3D,aAAa,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC,CAAA;QACpC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAClC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAED,2EAA2E;IAC3E,UAAU;QACR,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO,EAAE,CAAA;QAC1C,IAAI,GAAW,CAAA;QACf,IAAI,CAAC;YACH,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;QACjD,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;QAC9B,MAAM,GAAG,GAAa,EAAE,CAAA;QACxB,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YACtB,IAAI,EAAE,KAAK,EAAE;gBAAE,SAAQ;YACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,iBAAiB,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;YAC5D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACZ,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACd,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,SAAS;QACP,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAA;QAC3C,MAAM,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAA;QACrD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,iBAAiB,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAA;QAC9D,OAAO,EAAE,CAAA;IACX,CAAC;IAED,yEAAyE;IACzE,YAAY,CAAC,UAAkB;QAC7B,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;gBACzD,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,IAAI,CAAA;QACV,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;QAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;aAC9D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;aACvC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACnC,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC3D,CAAC;IAED,kFAAkF;IAClF,OAAO,CAAC,KAAa;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,CAAA;QAChD,IAAI,GAAW,CAAA;QACf,IAAI,CAAC;YACH,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,iBAAiB,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,MAAe,CAAA;QACnB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,iBAAiB,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAA;QACjE,CAAC;QACD,OAAO,cAAc,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;IAED,4EAA4E;IAC5E,eAAe,CAAC,KAAa;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAClC,OAAO,YAAY,CAAC,MAAM,CAAC,KAAK,KAAK,CAAA;IACvC,CAAC;CACF"}
|
package/dist/tree-digest.js
CHANGED
|
@@ -5,19 +5,31 @@
|
|
|
5
5
|
* excluding committed-gitignore'd paths, computed against a dedicated
|
|
6
6
|
* throwaway index seeded from HEAD, with host-dependent git settings pinned.
|
|
7
7
|
* Rendered as a bare 40-hex OID (documented deviation from sha256:).
|
|
8
|
+
*
|
|
9
|
+
* treeDigest() is read-only with respect to the observed repo: all git
|
|
10
|
+
* object writes (blobs from `add -A`, the tree from `write-tree`) are
|
|
11
|
+
* redirected to a throwaway GIT_OBJECT_DIRECTORY under tmpdir(), while the
|
|
12
|
+
* repo's real objects (resolved via `--git-path objects`, which also
|
|
13
|
+
* handles linked worktrees whose objects live in the common dir) are made
|
|
14
|
+
* available for reads through GIT_ALTERNATE_OBJECT_DIRECTORIES. The
|
|
15
|
+
* throwaway directory is removed again once the digest has been computed.
|
|
8
16
|
*/
|
|
9
17
|
import { execFile } from 'node:child_process';
|
|
10
|
-
import { promisify } from 'node:util';
|
|
11
18
|
import { randomUUID } from 'node:crypto';
|
|
12
|
-
import { rm } from 'node:fs/promises';
|
|
19
|
+
import { mkdir, rm } from 'node:fs/promises';
|
|
13
20
|
import { tmpdir } from 'node:os';
|
|
14
|
-
import { join } from 'node:path';
|
|
21
|
+
import { delimiter, join } from 'node:path';
|
|
22
|
+
import { promisify } from 'node:util';
|
|
15
23
|
const execFileP = promisify(execFile);
|
|
16
24
|
const PIN = [
|
|
17
|
-
'-c',
|
|
18
|
-
'
|
|
19
|
-
'-c',
|
|
20
|
-
'
|
|
25
|
+
'-c',
|
|
26
|
+
'core.autocrlf=false',
|
|
27
|
+
'-c',
|
|
28
|
+
'core.eol=lf',
|
|
29
|
+
'-c',
|
|
30
|
+
'core.excludesFile=/dev/null',
|
|
31
|
+
'-c',
|
|
32
|
+
'advice.addEmbeddedRepo=false',
|
|
21
33
|
];
|
|
22
34
|
async function git(worktree, args, env) {
|
|
23
35
|
const { stdout } = await execFileP('git', [...PIN, '-C', worktree, ...args], {
|
|
@@ -28,8 +40,24 @@ async function git(worktree, args, env) {
|
|
|
28
40
|
}
|
|
29
41
|
export async function treeDigest(worktree) {
|
|
30
42
|
const idx = join(tmpdir(), `vd-idx-${randomUUID()}`);
|
|
31
|
-
const
|
|
43
|
+
const objDir = join(tmpdir(), `vd-obj-${randomUUID()}`);
|
|
32
44
|
try {
|
|
45
|
+
await mkdir(objDir, { recursive: true });
|
|
46
|
+
const realObjects = await git(worktree, [
|
|
47
|
+
'rev-parse',
|
|
48
|
+
'--path-format=absolute',
|
|
49
|
+
'--git-path',
|
|
50
|
+
'objects',
|
|
51
|
+
]);
|
|
52
|
+
const existingAlternates = process.env.GIT_ALTERNATE_OBJECT_DIRECTORIES;
|
|
53
|
+
const alternates = existingAlternates
|
|
54
|
+
? `${realObjects}${delimiter}${existingAlternates}`
|
|
55
|
+
: realObjects;
|
|
56
|
+
const env = {
|
|
57
|
+
GIT_INDEX_FILE: idx,
|
|
58
|
+
GIT_OBJECT_DIRECTORY: objDir,
|
|
59
|
+
GIT_ALTERNATE_OBJECT_DIRECTORIES: alternates,
|
|
60
|
+
};
|
|
33
61
|
let hasHead = true;
|
|
34
62
|
try {
|
|
35
63
|
await git(worktree, ['rev-parse', '--verify', '-q', 'HEAD']);
|
|
@@ -38,16 +66,17 @@ export async function treeDigest(worktree) {
|
|
|
38
66
|
hasHead = false;
|
|
39
67
|
}
|
|
40
68
|
if (hasHead) {
|
|
41
|
-
await git(worktree, ['read-tree', 'HEAD'],
|
|
69
|
+
await git(worktree, ['read-tree', 'HEAD'], env);
|
|
42
70
|
}
|
|
43
71
|
else {
|
|
44
|
-
await git(worktree, ['read-tree', '--empty'],
|
|
72
|
+
await git(worktree, ['read-tree', '--empty'], env);
|
|
45
73
|
}
|
|
46
|
-
await git(worktree, ['add', '-A'],
|
|
47
|
-
return await git(worktree, ['write-tree'],
|
|
74
|
+
await git(worktree, ['add', '-A'], env);
|
|
75
|
+
return await git(worktree, ['write-tree'], env);
|
|
48
76
|
}
|
|
49
77
|
finally {
|
|
50
78
|
await rm(idx, { force: true });
|
|
79
|
+
await rm(objDir, { recursive: true, force: true });
|
|
51
80
|
}
|
|
52
81
|
}
|
|
53
82
|
export async function gitHead(worktree) {
|
|
@@ -78,7 +107,11 @@ export async function gitRepoRoot(dir) {
|
|
|
78
107
|
/** Resolve a ref to {commitSha, treeOid}; null when unresolvable. */
|
|
79
108
|
export async function resolveRef(worktree, ref) {
|
|
80
109
|
try {
|
|
81
|
-
const commit = await git(worktree, [
|
|
110
|
+
const commit = await git(worktree, [
|
|
111
|
+
'rev-parse',
|
|
112
|
+
'--verify',
|
|
113
|
+
`${ref}^{commit}`,
|
|
114
|
+
]);
|
|
82
115
|
const tree = await git(worktree, ['rev-parse', '--verify', `${ref}^{tree}`]);
|
|
83
116
|
return { commit, tree };
|
|
84
117
|
}
|
|
@@ -89,7 +122,11 @@ export async function resolveRef(worktree, ref) {
|
|
|
89
122
|
/** Deterministic digest material for the dirty state (status + diff vs HEAD). */
|
|
90
123
|
export async function dirtyDiffMaterial(worktree) {
|
|
91
124
|
try {
|
|
92
|
-
const status = await git(worktree, [
|
|
125
|
+
const status = await git(worktree, [
|
|
126
|
+
'status',
|
|
127
|
+
'--porcelain=v1',
|
|
128
|
+
'--untracked-files=all',
|
|
129
|
+
]);
|
|
93
130
|
let diff = '';
|
|
94
131
|
if ((await gitHead(worktree)) !== null) {
|
|
95
132
|
diff = await git(worktree, ['diff', 'HEAD', '--no-color']);
|
package/dist/tree-digest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-digest.js","sourceRoot":"","sources":["../src/tree-digest.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tree-digest.js","sourceRoot":"","sources":["../src/tree-digest.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vdelta",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Reference implementation of veridelta/1 — proof-carrying verification deltas for coding-agent development loops",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -39,13 +39,16 @@
|
|
|
39
39
|
},
|
|
40
40
|
"scripts": {
|
|
41
41
|
"build": "tsc -p tsconfig.build.json",
|
|
42
|
-
"
|
|
42
|
+
"lint": "biome check .",
|
|
43
|
+
"lint:fix": "biome check --write .",
|
|
44
|
+
"prepublishOnly": "npm run lint && npm run build && npm run test",
|
|
43
45
|
"test": "vitest run",
|
|
44
46
|
"test:unit": "vitest run --project unit",
|
|
45
47
|
"test:conformance": "vitest run --project conformance",
|
|
46
48
|
"typecheck": "tsc --noEmit"
|
|
47
49
|
},
|
|
48
50
|
"devDependencies": {
|
|
51
|
+
"@biomejs/biome": "^2.5.4",
|
|
49
52
|
"@types/node": "^24.0.0",
|
|
50
53
|
"typescript": "^5.9.0",
|
|
51
54
|
"vitest": "^4.0.0"
|
package/spec/veridelta-1.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|---|---|
|
|
5
5
|
| **Status** | Draft |
|
|
6
6
|
| **Schema identifier** | `veridelta/1` |
|
|
7
|
-
| **Spec revision** | 0.3.
|
|
7
|
+
| **Spec revision** | 0.3.1 — 2026-07-16 |
|
|
8
8
|
| **License** | MIT |
|
|
9
9
|
| **Reference implementation** | `vdelta` (this repository; in development) |
|
|
10
10
|
|
|
@@ -375,6 +375,37 @@ sufficient for the consumer to verify the choice (e.g.,
|
|
|
375
375
|
comparator MUST abstain with comparability `none` (§6.3), never fall back
|
|
376
376
|
silently to a weaker match.
|
|
377
377
|
|
|
378
|
+
### 5.4. Near-miss disclosure
|
|
379
|
+
|
|
380
|
+
When `previous-comparable` selection abstains with `baseline-missing` (§6.3)
|
|
381
|
+
and the store contains at least one complete run other than the current run,
|
|
382
|
+
the report MUST enrich `comparability_detail` with a `near_miss` disclosure
|
|
383
|
+
identifying the nearest stored complete run and the stream-key component(s)
|
|
384
|
+
(§5.1) on which it differs from the current run.
|
|
385
|
+
|
|
386
|
+
Selection rule (normative, deterministic): candidates are all stored complete
|
|
387
|
+
runs excluding the current run, in store insertion order; each candidate is
|
|
388
|
+
scored by the number of mismatching components among the nine stream-key
|
|
389
|
+
components in the canonical order `repo.identity, repo.worktree, repo.branch,
|
|
390
|
+
repo.cwd, invocation.command, invocation.selector, instrument.adapter,
|
|
391
|
+
instrument.adapter_version, instrument.config_digest`; the candidate with the
|
|
392
|
+
fewest mismatches is selected; ties break by recency, where recency is store
|
|
393
|
+
insertion order, never timestamps (§7.8).
|
|
394
|
+
|
|
395
|
+
`mismatches` lists each differing component in the canonical order above with
|
|
396
|
+
the candidate's recorded value and the current run's value; array-valued
|
|
397
|
+
components (`invocation.command`, `invocation.selector`) are rendered as their
|
|
398
|
+
elements joined by a single space. Values are drawn from stored run records,
|
|
399
|
+
which are redacted before persistence (§15), so the disclosure never widens
|
|
400
|
+
the exposure surface.
|
|
401
|
+
|
|
402
|
+
The disclosure is informative context only: it MUST NOT alter baseline
|
|
403
|
+
selection, the abstention reason, or comparability — the report still
|
|
404
|
+
abstains with `baseline-missing`/`determined`, and this section does not
|
|
405
|
+
weaken the stream key. Other baseline modes (`git-ref`, `explicit-run-id`,
|
|
406
|
+
`previous-superset`) MUST NOT emit `near_miss`. The component-name vocabulary
|
|
407
|
+
is a closed enum (§14).
|
|
408
|
+
|
|
378
409
|
## 6. Comparability
|
|
379
410
|
|
|
380
411
|
### 6.1. Levels and permitted claims
|
|
@@ -412,6 +443,9 @@ is REQUIRED whenever `comparability` is `none`:
|
|
|
412
443
|
{ "reason": "baseline-missing", "kind": "determined" }
|
|
413
444
|
```
|
|
414
445
|
|
|
446
|
+
For `previous-comparable` `baseline-missing`, `comparability_detail`
|
|
447
|
+
additionally carries the `near_miss` disclosure when §5.4 requires it.
|
|
448
|
+
|
|
415
449
|
| `reason` | `kind` |
|
|
416
450
|
|---|---|
|
|
417
451
|
| `baseline-missing` | `determined` |
|
|
@@ -656,6 +690,10 @@ rendering of this schema with no independent logic.
|
|
|
656
690
|
Additional REQUIRED-when-applicable fields:
|
|
657
691
|
|
|
658
692
|
- `comparability_detail` when `comparability` is `none` (§6.3).
|
|
693
|
+
- `comparability_detail.near_miss` when §5.4 applies — an object
|
|
694
|
+
`{"run_id": ..., "mismatches": [{"field": ..., "recorded": ..., "current": ...}]}`
|
|
695
|
+
where `field` is one of the nine stream-key component names (closed enum)
|
|
696
|
+
and `mismatches` is non-empty.
|
|
659
697
|
- `budget_exceeded_for_safety: true` when §8's budget rule fires.
|
|
660
698
|
- `masking_applied` with count and example when §7.6 dedup fired.
|
|
661
699
|
- `trust.record_integrity`: `advisory | tamper-evident | trusted-environment`
|
|
@@ -920,9 +958,17 @@ Adapter roadmap for the reference implementation (informative): `vitest`
|
|
|
920
958
|
native reporter first — agent-authored code skews heavily toward TS/JS, the
|
|
921
959
|
maintainer's own repositories (the cheapest dogfood subjects) are TypeScript,
|
|
922
960
|
and empirical probing confirmed the channel satisfies §3.6 with no
|
|
923
|
-
stale-cache path in run mode.
|
|
924
|
-
|
|
925
|
-
|
|
961
|
+
stale-cache path in run mode. Playwright native reporter second, by the same
|
|
962
|
+
dogfood-first criterion: maintained end-to-end suites are available as
|
|
963
|
+
dogfood subjects, e2e suites are where flakiness attribution and fail-closed
|
|
964
|
+
delta gating pay most, and first-class retries, per-project repetition of
|
|
965
|
+
the same title, and worker parallelism exercise adapter-interface edges
|
|
966
|
+
vitest does not. Commitment is contingent on an empirical probe confirming
|
|
967
|
+
the structured reporter channel satisfies §3.6. `pytest` native is
|
|
968
|
+
demand-driven rather than scheduled — its structured channel is already
|
|
969
|
+
probed and its composition pre-designed, so the banked design does not decay
|
|
970
|
+
while parked. JUnit XML is likewise demand-driven, for CI breadth, under the
|
|
971
|
+
constraints above.
|
|
926
972
|
|
|
927
973
|
## 13. Conformance
|
|
928
974
|
|
|
@@ -1071,6 +1117,14 @@ None violates an invariant; each is disclosed rather than papered over.
|
|
|
1071
1117
|
|
|
1072
1118
|
## Revision history
|
|
1073
1119
|
|
|
1120
|
+
- **0.3.1 (2026-07-16)** — Adapter roadmap reordered (§12, informative):
|
|
1121
|
+
Playwright second, by the same dogfood-first criterion that flipped the
|
|
1122
|
+
first target to vitest in 0.3.0 — maintained e2e suites are available as
|
|
1123
|
+
dogfood subjects, flakiness attribution and fail-closed gating pay most in
|
|
1124
|
+
e2e, and retries/projects/worker parallelism exercise adapter-interface
|
|
1125
|
+
edges vitest lacks — contingent on a §3.6 probe of its structured reporter
|
|
1126
|
+
channel. `pytest` and JUnit XML moved to demand-driven; pytest's probe
|
|
1127
|
+
results and pre-designed composition remain banked. No normative changes.
|
|
1074
1128
|
- **0.3.0 (2026-07-16)** — First adapter target flipped to vitest after an
|
|
1075
1129
|
empirical probe confirmed §3.6 satisfiability (core digest stable across
|
|
1076
1130
|
rerun/line-shift/unrelated-edit, sensitive only to genuine signal; no
|