@dzhechkov/harness-core 0.8.36 → 0.8.38
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/.dz-manifest.json +216 -76
- package/README.md +349 -8
- package/dist/agentdb-index.d.ts +87 -7
- package/dist/agentdb-index.d.ts.map +1 -1
- package/dist/agentdb-index.js +416 -57
- package/dist/agentdb-index.js.map +1 -1
- package/dist/apply-leg.d.ts +19 -1
- package/dist/apply-leg.d.ts.map +1 -1
- package/dist/apply-leg.js +187 -36
- package/dist/apply-leg.js.map +1 -1
- package/dist/codex-rollouts.d.ts +118 -0
- package/dist/codex-rollouts.d.ts.map +1 -0
- package/dist/codex-rollouts.js +297 -0
- package/dist/codex-rollouts.js.map +1 -0
- package/dist/cost-ledger.d.ts +56 -4
- package/dist/cost-ledger.d.ts.map +1 -1
- package/dist/cost-ledger.js +176 -20
- package/dist/cost-ledger.js.map +1 -1
- package/dist/cross-family-control.d.ts +380 -0
- package/dist/cross-family-control.d.ts.map +1 -0
- package/dist/cross-family-control.js +848 -0
- package/dist/cross-family-control.js.map +1 -0
- package/dist/debt-ratchet.d.ts +53 -0
- package/dist/debt-ratchet.d.ts.map +1 -0
- package/dist/debt-ratchet.js +107 -0
- package/dist/debt-ratchet.js.map +1 -0
- package/dist/embedding-config.d.ts +42 -0
- package/dist/embedding-config.d.ts.map +1 -1
- package/dist/embedding-config.js +106 -10
- package/dist/embedding-config.js.map +1 -1
- package/dist/feature-adr-checkpoints.d.ts +6 -0
- package/dist/feature-adr-checkpoints.d.ts.map +1 -1
- package/dist/feature-adr-checkpoints.js +29 -0
- package/dist/feature-adr-checkpoints.js.map +1 -1
- package/dist/feature-adr-decision-recall.d.ts +2 -2
- package/dist/feature-adr-decision-recall.d.ts.map +1 -1
- package/dist/feature-adr-decision-recall.js +5 -3
- package/dist/feature-adr-decision-recall.js.map +1 -1
- package/dist/feature-adr-envelope.d.ts +96 -0
- package/dist/feature-adr-envelope.d.ts.map +1 -0
- package/dist/feature-adr-envelope.js +183 -0
- package/dist/feature-adr-envelope.js.map +1 -0
- package/dist/feature-adr-routing.d.ts +64 -0
- package/dist/feature-adr-routing.d.ts.map +1 -1
- package/dist/feature-adr-routing.js +133 -3
- package/dist/feature-adr-routing.js.map +1 -1
- package/dist/feature-adr-stage-canon.d.ts +79 -0
- package/dist/feature-adr-stage-canon.d.ts.map +1 -0
- package/dist/feature-adr-stage-canon.js +117 -0
- package/dist/feature-adr-stage-canon.js.map +1 -0
- package/dist/index.d.ts +21 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -5
- package/dist/index.js.map +1 -1
- package/dist/loop-blobs.generated.js +4 -4
- package/dist/loop-blobs.generated.js.map +1 -1
- package/dist/mutation-gate.d.ts +51 -0
- package/dist/mutation-gate.d.ts.map +1 -1
- package/dist/mutation-gate.js +295 -0
- package/dist/mutation-gate.js.map +1 -1
- package/dist/qe-bridge.d.ts +8 -0
- package/dist/qe-bridge.d.ts.map +1 -1
- package/dist/qe-bridge.js +4 -2
- package/dist/qe-bridge.js.map +1 -1
- package/dist/qe-findings.d.ts +107 -0
- package/dist/qe-findings.d.ts.map +1 -0
- package/dist/qe-findings.js +417 -0
- package/dist/qe-findings.js.map +1 -0
- package/dist/recap.d.ts +1 -1
- package/dist/recap.d.ts.map +1 -1
- package/dist/recap.js +4 -2
- package/dist/recap.js.map +1 -1
- package/dist/review-cost.d.ts +51 -0
- package/dist/review-cost.d.ts.map +1 -0
- package/dist/review-cost.js +110 -0
- package/dist/review-cost.js.map +1 -0
- package/dist/round.d.ts +207 -1
- package/dist/round.d.ts.map +1 -1
- package/dist/round.js +321 -4
- package/dist/round.js.map +1 -1
- package/dist/run-records.d.ts +97 -0
- package/dist/run-records.d.ts.map +1 -1
- package/dist/run-records.js +336 -2
- package/dist/run-records.js.map +1 -1
- package/dist/score.d.ts +44 -1
- package/dist/score.d.ts.map +1 -1
- package/dist/score.js +78 -5
- package/dist/score.js.map +1 -1
- package/package.json +1 -1
- package/sbom.json +425 -75
- package/src/agentdb-index.ts +423 -60
- package/src/apply-leg.ts +187 -36
- package/src/codex-rollouts.ts +374 -0
- package/src/cost-ledger.ts +232 -24
- package/src/cross-family-control.ts +1038 -0
- package/src/debt-ratchet.ts +143 -0
- package/src/embedding-config.ts +131 -10
- package/src/feature-adr-checkpoints.ts +29 -0
- package/src/feature-adr-decision-recall.ts +6 -4
- package/src/feature-adr-envelope.ts +242 -0
- package/src/feature-adr-routing.ts +150 -3
- package/src/feature-adr-stage-canon.ts +141 -0
- package/src/index.ts +65 -6
- package/src/loop-blobs.generated.ts +4 -4
- package/src/mutation-gate.ts +316 -0
- package/src/qe-bridge.ts +12 -2
- package/src/qe-findings.ts +463 -0
- package/src/recap.ts +10 -3
- package/src/review-cost.ts +139 -0
- package/src/round.ts +481 -6
- package/src/run-records.ts +388 -2
- package/src/score.ts +115 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-family-control.js","sourceRoot":"","sources":["../src/cross-family-control.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared debt-ratchet verdict — one place, called by every "N exceeds ceiling C" gate.
|
|
3
|
+
*
|
|
4
|
+
* WHY (backlog `19e671ebfea26fc9`, feature debt-ceiling-diff): a count-only ceiling knows how MANY
|
|
5
|
+
* debt items exist but not WHICH ones. Once the set crosses the ceiling, printing "every current
|
|
6
|
+
* finding" drowns the one new offender in a legacy list of 100+ — the check technically fires, but
|
|
7
|
+
* a human (or an agent) reading the failure cannot see what actually changed. Pinning the set
|
|
8
|
+
* alongside the count lets the verdict print a DIFFERENCE: `added` (new, not in the pinned set) and
|
|
9
|
+
* `resolved` (pinned, no longer present) — the legacy tail stops being printed at all.
|
|
10
|
+
*
|
|
11
|
+
* The three-way verdict:
|
|
12
|
+
* - current.length > ceiling → ok:false, names only the newly added ids/findings.
|
|
13
|
+
* If `added` is empty despite being over ceiling, the pinned set and the ceiling number have
|
|
14
|
+
* drifted apart (caller error, not a real debt increase) — the message says so explicitly
|
|
15
|
+
* rather than silently printing an empty new: list.
|
|
16
|
+
* - current.length < ceiling → ok:true, suggests lowering the ceiling, names what resolved.
|
|
17
|
+
* - current.length === ceiling → ok:true UNLESS the membership itself changed (one debt swapped
|
|
18
|
+
* for another at the same count) — that specific case is ok:false with a `swapped:` message,
|
|
19
|
+
* because a same-count substitution is exactly the failure mode a raw-number ratchet cannot see:
|
|
20
|
+
* a new debt item can hide behind a legacy one that happened to be fixed in the same window.
|
|
21
|
+
*/
|
|
22
|
+
export interface DebtRatchetArgs {
|
|
23
|
+
readonly label: string;
|
|
24
|
+
readonly current: readonly string[];
|
|
25
|
+
readonly pinned: readonly string[];
|
|
26
|
+
readonly ceiling: number;
|
|
27
|
+
}
|
|
28
|
+
export interface DebtRatchetVerdict {
|
|
29
|
+
readonly ok: boolean;
|
|
30
|
+
readonly message: string;
|
|
31
|
+
readonly added: string[];
|
|
32
|
+
readonly resolved: string[];
|
|
33
|
+
}
|
|
34
|
+
export declare function debtRatchetVerdict(args: DebtRatchetArgs): DebtRatchetVerdict;
|
|
35
|
+
export interface PinnedCeiling {
|
|
36
|
+
readonly count: number;
|
|
37
|
+
readonly pinned: string[];
|
|
38
|
+
readonly measuredAt: string;
|
|
39
|
+
readonly reproducer: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Reads a debt-ceiling json file and requires the pinned set to agree with the declared count —
|
|
43
|
+
* a ceiling whose set and number disagree is not trustworthy data, so this fails loud rather than
|
|
44
|
+
* trusting the number alone (the exact defect this feature exists to close).
|
|
45
|
+
*/
|
|
46
|
+
export declare function ceilingUnreadableMessage(file: string): string;
|
|
47
|
+
/**
|
|
48
|
+
* PURE: the caller reads the file (tests own their I/O — the core-boundary ratchet counts src files
|
|
49
|
+
* that touch node:fs, and a debt-ceiling parser has no business being one); `file` is only used to
|
|
50
|
+
* name the offending file in error messages.
|
|
51
|
+
*/
|
|
52
|
+
export declare function parsePinnedCeiling(source: string, file: string, countField: 'unobserved' | 'uncommented', setField: 'ids' | 'findings'): PinnedCeiling;
|
|
53
|
+
//# sourceMappingURL=debt-ratchet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debt-ratchet.d.ts","sourceRoot":"","sources":["../src/debt-ratchet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,kBAAkB,CA0D5E;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,YAAY,GAAG,aAAa,EACxC,QAAQ,EAAE,KAAK,GAAG,UAAU,GAC3B,aAAa,CAoBf"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared debt-ratchet verdict — one place, called by every "N exceeds ceiling C" gate.
|
|
3
|
+
*
|
|
4
|
+
* WHY (backlog `19e671ebfea26fc9`, feature debt-ceiling-diff): a count-only ceiling knows how MANY
|
|
5
|
+
* debt items exist but not WHICH ones. Once the set crosses the ceiling, printing "every current
|
|
6
|
+
* finding" drowns the one new offender in a legacy list of 100+ — the check technically fires, but
|
|
7
|
+
* a human (or an agent) reading the failure cannot see what actually changed. Pinning the set
|
|
8
|
+
* alongside the count lets the verdict print a DIFFERENCE: `added` (new, not in the pinned set) and
|
|
9
|
+
* `resolved` (pinned, no longer present) — the legacy tail stops being printed at all.
|
|
10
|
+
*
|
|
11
|
+
* The three-way verdict:
|
|
12
|
+
* - current.length > ceiling → ok:false, names only the newly added ids/findings.
|
|
13
|
+
* If `added` is empty despite being over ceiling, the pinned set and the ceiling number have
|
|
14
|
+
* drifted apart (caller error, not a real debt increase) — the message says so explicitly
|
|
15
|
+
* rather than silently printing an empty new: list.
|
|
16
|
+
* - current.length < ceiling → ok:true, suggests lowering the ceiling, names what resolved.
|
|
17
|
+
* - current.length === ceiling → ok:true UNLESS the membership itself changed (one debt swapped
|
|
18
|
+
* for another at the same count) — that specific case is ok:false with a `swapped:` message,
|
|
19
|
+
* because a same-count substitution is exactly the failure mode a raw-number ratchet cannot see:
|
|
20
|
+
* a new debt item can hide behind a legacy one that happened to be fixed in the same window.
|
|
21
|
+
*/
|
|
22
|
+
export function debtRatchetVerdict(args) {
|
|
23
|
+
const { label, current, pinned, ceiling } = args;
|
|
24
|
+
const pinnedSet = new Set(pinned);
|
|
25
|
+
const currentSet = new Set(current);
|
|
26
|
+
const added = current.filter((id) => !pinnedSet.has(id));
|
|
27
|
+
const resolved = pinned.filter((id) => !currentSet.has(id));
|
|
28
|
+
const n = current.length;
|
|
29
|
+
// Lead delta after Codex r1 (MEDIUM): a "set" with duplicates is not a set — the count, the +K and
|
|
30
|
+
// the suggested ceiling would all be wrong. Loud, never normalised silently.
|
|
31
|
+
if (currentSet.size !== n) {
|
|
32
|
+
const dupes = current.filter((id, i) => current.indexOf(id) !== i);
|
|
33
|
+
return { ok: false, message: `${label}: duplicate ids in the current set (${[...new Set(dupes)].join(', ')}) — the count ${n} is not a set size`, added, resolved };
|
|
34
|
+
}
|
|
35
|
+
// Lead delta after Codex r1 (HIGH): ANY new debt is a failure, whatever the count does — two legacy
|
|
36
|
+
// items resolved plus one new one is 2 < 3 by count and would otherwise pass silently, hiding the
|
|
37
|
+
// very thing this ratchet exists to name. The count-only ceiling never hid this any better; the
|
|
38
|
+
// pinned set finally makes it visible.
|
|
39
|
+
if (n <= ceiling && added.length > 0) {
|
|
40
|
+
return {
|
|
41
|
+
ok: false,
|
|
42
|
+
message: `${label} ${n}; ceiling ${ceiling}, but NEW debt appeared: new: ${added.join(', ')}; resolved: ${resolved.length > 0 ? resolved.join(', ') : '(none)'}`,
|
|
43
|
+
added,
|
|
44
|
+
resolved,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
if (n > ceiling) {
|
|
48
|
+
const newPart = added.length > 0 ? added.join(', ') : '(none — set/ceiling inconsistent)';
|
|
49
|
+
const resolvedPart = resolved.length > 0 ? resolved.join(', ') : '(none)';
|
|
50
|
+
return {
|
|
51
|
+
ok: false,
|
|
52
|
+
message: `${label} ${n} exceeds ceiling ${ceiling} (+${n - ceiling}): new: ${newPart}; resolved: ${resolvedPart}`,
|
|
53
|
+
added,
|
|
54
|
+
resolved,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
if (n < ceiling) {
|
|
58
|
+
const resolvedPart = resolved.length > 0 ? resolved.join(', ') : '(none)';
|
|
59
|
+
return {
|
|
60
|
+
ok: true,
|
|
61
|
+
message: `${label} ${n}; ceiling can be lowered to ${n}; resolved: ${resolvedPart}`,
|
|
62
|
+
added,
|
|
63
|
+
resolved,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
// n === ceiling with no new ids: a swap (one resolved, one added) is already caught above by the
|
|
67
|
+
// any-new-debt rule, so the only way to land here is an unchanged set — a clean pass.
|
|
68
|
+
return {
|
|
69
|
+
ok: true,
|
|
70
|
+
message: `${label} ${n}; ceiling ${ceiling}`,
|
|
71
|
+
added,
|
|
72
|
+
resolved,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Reads a debt-ceiling json file and requires the pinned set to agree with the declared count —
|
|
77
|
+
* a ceiling whose set and number disagree is not trustworthy data, so this fails loud rather than
|
|
78
|
+
* trusting the number alone (the exact defect this feature exists to close).
|
|
79
|
+
*/
|
|
80
|
+
export function ceilingUnreadableMessage(file) {
|
|
81
|
+
return `Cannot read ${file}; measure the debt and create this ceiling file by hand.`;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* PURE: the caller reads the file (tests own their I/O — the core-boundary ratchet counts src files
|
|
85
|
+
* that touch node:fs, and a debt-ceiling parser has no business being one); `file` is only used to
|
|
86
|
+
* name the offending file in error messages.
|
|
87
|
+
*/
|
|
88
|
+
export function parsePinnedCeiling(source, file, countField, setField) {
|
|
89
|
+
const parsed = JSON.parse(source);
|
|
90
|
+
const count = parsed[countField];
|
|
91
|
+
const set = parsed[setField];
|
|
92
|
+
const measuredAt = parsed.measuredAt;
|
|
93
|
+
const reproducer = parsed.reproducer;
|
|
94
|
+
if (!Number.isSafeInteger(count) || count < 0
|
|
95
|
+
|| typeof measuredAt !== 'string' || typeof reproducer !== 'string'
|
|
96
|
+
|| !Array.isArray(set) || !set.every((item) => typeof item === 'string')) {
|
|
97
|
+
throw new Error(`Invalid debt ceiling: ${file}`);
|
|
98
|
+
}
|
|
99
|
+
if (set.length !== count) {
|
|
100
|
+
throw new Error(`Invalid debt ceiling: ${file}: ${setField}.length ${set.length} ≠ ${countField} ${count}`);
|
|
101
|
+
}
|
|
102
|
+
if (new Set(set).size !== set.length) {
|
|
103
|
+
throw new Error(`Invalid debt ceiling: ${file}: ${setField} contains duplicates — a pinned set must be a set`);
|
|
104
|
+
}
|
|
105
|
+
return { count: count, pinned: set, measuredAt, reproducer };
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=debt-ratchet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debt-ratchet.js","sourceRoot":"","sources":["../src/debt-ratchet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,45 @@
|
|
|
1
1
|
export type EmbedModelSource = 'env' | 'config' | 'default';
|
|
2
|
+
/**
|
|
3
|
+
* `embed-daemon-memory` (ADR-001 D2): dtype is a property of the STORE, not a global runtime
|
|
4
|
+
* setting. `fp32` is the full-precision default (existing behaviour, unchanged); `q8` is the
|
|
5
|
+
* quantized variant (`{ dtype: 'q8' }` at `pipeline()` construction, `model_quantized.onnx`) —
|
|
6
|
+
* roughly half the RSS of fp32 at a measured cosine parity >= 0.990 (see the harness-core README's
|
|
7
|
+
* `memory.embed.dtype` section for the numbers). `memory.embed.dtype` in config selects the dtype
|
|
8
|
+
* for a NEW index/reindex; the STORE's manifest is what a query is actually embedded with
|
|
9
|
+
* ({@link guardEmbedSpace}) — the two are deliberately allowed to disagree only long enough for the
|
|
10
|
+
* guard to demand a reindex, never silently.
|
|
11
|
+
*/
|
|
12
|
+
export type EmbedDtype = 'fp32' | 'q8';
|
|
13
|
+
export declare const KNOWN_EMBED_DTYPES: readonly EmbedDtype[];
|
|
2
14
|
export interface EmbedModelConfig {
|
|
3
15
|
readonly model: string;
|
|
4
16
|
readonly dim: 384;
|
|
5
17
|
readonly source: EmbedModelSource;
|
|
18
|
+
readonly dtype: EmbedDtype;
|
|
6
19
|
}
|
|
7
20
|
export interface EmbedManifest {
|
|
8
21
|
readonly model: string;
|
|
9
22
|
readonly dim: 384;
|
|
10
23
|
readonly version: number;
|
|
11
24
|
readonly engine?: string;
|
|
25
|
+
/** Absent on a manifest written before this feature — reads as `'fp32'` everywhere it is compared
|
|
26
|
+
* ({@link guardEmbedSpace}), matching the pre-existing fp32-only behaviour exactly. */
|
|
27
|
+
readonly dtype?: EmbedDtype;
|
|
28
|
+
/**
|
|
29
|
+
* Fix round 1 (Codex #4): the RAW `dtype` string off disk when it is PRESENT but not one of
|
|
30
|
+
* {@link KNOWN_EMBED_DTYPES} — a corrupted manifest (`"Q8"`) or one written by a future version
|
|
31
|
+
* (`"int8"`). Distinct from an ABSENT field (legacy pre-feature manifest, safe to read as `'fp32'`):
|
|
32
|
+
* a present-but-unknown value must never be silently folded into the same "absent" bucket, because
|
|
33
|
+
* the underlying vectors may genuinely not be fp32 — {@link guardEmbedSpace} and
|
|
34
|
+
* {@link resolveStoreEmbedDtype} both refuse instead of guessing when this is set.
|
|
35
|
+
*/
|
|
36
|
+
readonly dtypeError?: string;
|
|
37
|
+
/** Lead delta after Codex r2 (HIGH): the manifest file EXISTS but could not be read/parsed
|
|
38
|
+
* (truncated by a concurrent writer, hand-edited into invalid JSON). It used to read as "absent"
|
|
39
|
+
* and fall through to legacy fp32 — the same silent cross-space risk as an unknown dtype. Only
|
|
40
|
+
* ENOENT means absent; a read/parse failure is carried here and guardEmbedSpace refuses. The
|
|
41
|
+
* remedy stays reachable: reindex stamps a NEW manifest before it re-indexes. */
|
|
42
|
+
readonly readError?: string;
|
|
12
43
|
}
|
|
13
44
|
export declare const DEFAULT_EMBED_MODEL = "Xenova/paraphrase-multilingual-MiniLM-L12-v2";
|
|
14
45
|
export declare const LEGACY_EMBED_MODEL = "Xenova/all-MiniLM-L6-v2";
|
|
@@ -37,6 +68,17 @@ export declare function readEmbedManifest(storePath: string): EmbedManifest | un
|
|
|
37
68
|
export declare function writeEmbedManifest(storePath: string, manifest: EmbedManifest): void;
|
|
38
69
|
export declare function legacyEmbedManifest(): EmbedManifest;
|
|
39
70
|
export declare function currentEmbedManifest(configured: EmbedModelConfig, version?: number, engine?: string): EmbedManifest;
|
|
71
|
+
/**
|
|
72
|
+
* D2 (`embed-daemon-memory`): the model/dim check is unchanged; a SEPARATE dtype check is added
|
|
73
|
+
* after it. Absent manifest dtype reads as `'fp32'` (matching every store written before this
|
|
74
|
+
* feature) before the comparison — so an existing fp32 store configured for fp32 never trips this,
|
|
75
|
+
* and only a genuine fp32<->q8 disagreement (or a q8 store re-configured to fp32) is refused.
|
|
76
|
+
*
|
|
77
|
+
* Fix round 1 (Codex #4): a manifest `dtype` that is PRESENT but unrecognized ({@link
|
|
78
|
+
* EmbedManifest.dtypeError}) is checked BEFORE the fp32-fallback comparison above — it must never
|
|
79
|
+
* be silently treated as the safe legacy-absent case, because the store's real vectors may not be
|
|
80
|
+
* fp32 at all.
|
|
81
|
+
*/
|
|
40
82
|
export declare function guardEmbedSpace(args: {
|
|
41
83
|
storePath: string;
|
|
42
84
|
configured: EmbedModelConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding-config.d.ts","sourceRoot":"","sources":["../src/embedding-config.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"embedding-config.d.ts","sourceRoot":"","sources":["../src/embedding-config.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE5D;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;AACvC,eAAO,MAAM,kBAAkB,EAAE,SAAS,UAAU,EAAmB,CAAC;AAGxE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;2FACuF;IACvF,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;qFAIiF;IACjF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,mBAAmB,iDAAiD,CAAC;AAClF,eAAO,MAAM,kBAAkB,4BAA4B,CAAC;AAC5D,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAW1D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAmB3F;AAmCD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAE9E;AA8CD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI,CAInF;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAEnD;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,SAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa,CAE9G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,aAAa,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,aAAa,CAAA;CAAE,CAiChG;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAGjF"}
|
package/dist/embedding-config.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync, copyFileSync } from 'node:fs';
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync, copyFileSync } from 'node:fs';
|
|
2
2
|
import { dirname, join } from 'node:path';
|
|
3
|
+
export const KNOWN_EMBED_DTYPES = ['fp32', 'q8'];
|
|
4
|
+
const DEFAULT_EMBED_DTYPE = 'fp32';
|
|
3
5
|
export const DEFAULT_EMBED_MODEL = 'Xenova/paraphrase-multilingual-MiniLM-L12-v2';
|
|
4
6
|
export const LEGACY_EMBED_MODEL = 'Xenova/all-MiniLM-L6-v2';
|
|
5
7
|
export const DEFAULT_EMBED_DIM = 384;
|
|
@@ -31,9 +33,12 @@ export const KNOWN_EMBED_DIMS = {
|
|
|
31
33
|
* (`codex`, `grade D`) that carry the signal, scoring 0.141 where the multilingual model scores 0.639.
|
|
32
34
|
*/
|
|
33
35
|
export function resolveEmbedModel(projectRoot) {
|
|
36
|
+
const dtypeResult = resolveEmbedDtype(projectRoot);
|
|
37
|
+
if ('error' in dtypeResult)
|
|
38
|
+
return dtypeResult;
|
|
34
39
|
const env = process.env['DZ_EMBED_MODEL'];
|
|
35
40
|
if (env !== undefined && env.trim() !== '')
|
|
36
|
-
return modelConfig(env.trim(), 'env');
|
|
41
|
+
return modelConfig(env.trim(), 'env', dtypeResult.dtype);
|
|
37
42
|
const cfgPath = join(projectRoot, '.dz', 'config.json');
|
|
38
43
|
if (existsSync(cfgPath)) {
|
|
39
44
|
try {
|
|
@@ -43,20 +48,48 @@ export function resolveEmbedModel(projectRoot) {
|
|
|
43
48
|
const embed = memory?.['embed'];
|
|
44
49
|
const configured = agentdb?.['embeddingModel'] ?? embed?.['model'];
|
|
45
50
|
if (typeof configured === 'string' && configured.trim() !== '')
|
|
46
|
-
return modelConfig(configured.trim(), 'config');
|
|
51
|
+
return modelConfig(configured.trim(), 'config', dtypeResult.dtype);
|
|
47
52
|
}
|
|
48
53
|
catch {
|
|
49
54
|
/* corrupt config falls back to the default, matching the existing config-read discipline */
|
|
50
55
|
}
|
|
51
56
|
}
|
|
52
|
-
return modelConfig(DEFAULT_EMBED_MODEL, 'default');
|
|
57
|
+
return modelConfig(DEFAULT_EMBED_MODEL, 'default', dtypeResult.dtype);
|
|
53
58
|
}
|
|
54
|
-
|
|
59
|
+
/**
|
|
60
|
+
* FR-3/AC-2 (`embed-daemon-memory`): `memory.embed.dtype` read INDEPENDENTLY of which model source
|
|
61
|
+
* won above — a dtype override must apply the same way whether the model itself came from env,
|
|
62
|
+
* config, or the default. An unset value (or a config file that predates this feature) is `'fp32'`,
|
|
63
|
+
* matching every store written before this feature existed. An unrecognized string is a hard
|
|
64
|
+
* `{error}` naming the allowed values, never a silent fp32 fallback — a typo in the dtype must not
|
|
65
|
+
* quietly build the wrong-shaped index.
|
|
66
|
+
*/
|
|
67
|
+
function resolveEmbedDtype(projectRoot) {
|
|
68
|
+
const cfgPath = join(projectRoot, '.dz', 'config.json');
|
|
69
|
+
if (!existsSync(cfgPath))
|
|
70
|
+
return { dtype: DEFAULT_EMBED_DTYPE };
|
|
71
|
+
try {
|
|
72
|
+
const cfg = JSON.parse(readFileSync(cfgPath, 'utf-8'));
|
|
73
|
+
const memory = cfg['memory'];
|
|
74
|
+
const embed = memory?.['embed'];
|
|
75
|
+
const raw = embed?.['dtype'];
|
|
76
|
+
if (raw === undefined)
|
|
77
|
+
return { dtype: DEFAULT_EMBED_DTYPE };
|
|
78
|
+
if (typeof raw === 'string' && KNOWN_EMBED_DTYPES.includes(raw))
|
|
79
|
+
return { dtype: raw };
|
|
80
|
+
return { error: `unsupported embedding dtype '${String(raw)}' (known: ${KNOWN_EMBED_DTYPES.join(', ')})` };
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
// corrupt config falls back to the default, matching resolveEmbedModel's own discipline
|
|
84
|
+
return { dtype: DEFAULT_EMBED_DTYPE };
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
function modelConfig(model, source, dtype) {
|
|
55
88
|
const dim = KNOWN_EMBED_DIMS[model];
|
|
56
89
|
if (dim === undefined) {
|
|
57
90
|
return { error: `unsupported embedding model '${model}' (known 384-dim models: ${Object.keys(KNOWN_EMBED_DIMS).join(', ')})` };
|
|
58
91
|
}
|
|
59
|
-
return { model, dim, source };
|
|
92
|
+
return { model, dim, source, dtype };
|
|
60
93
|
}
|
|
61
94
|
export function embedManifestPath(storePath) {
|
|
62
95
|
return `${storePath}.embed-manifest.json`;
|
|
@@ -67,16 +100,46 @@ export function readEmbedManifest(storePath) {
|
|
|
67
100
|
function readManifestFile(p) {
|
|
68
101
|
if (!existsSync(p))
|
|
69
102
|
return undefined;
|
|
103
|
+
// `readError` (below) is scoped to a REGULAR FILE whose bytes cannot be parsed — the concurrent-
|
|
104
|
+
// writer/hand-edit case Codex r2 named. A non-file at the sidecar path (a directory) is a different
|
|
105
|
+
// pathology and stays "absent": the store-generation AM-3 fixture plants exactly that directory so
|
|
106
|
+
// the manifest WRITE fails loudly after a real commit — refusing here would hide that contract.
|
|
107
|
+
let isFile = false;
|
|
108
|
+
try {
|
|
109
|
+
isFile = statSync(p).isFile();
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
isFile = false;
|
|
113
|
+
}
|
|
114
|
+
if (!isFile)
|
|
115
|
+
return undefined;
|
|
70
116
|
try {
|
|
71
117
|
const m = JSON.parse(readFileSync(p, 'utf-8'));
|
|
72
118
|
if (typeof m.model !== 'string' || m.model === '')
|
|
73
119
|
return undefined;
|
|
74
120
|
if (m.dim !== DEFAULT_EMBED_DIM)
|
|
75
121
|
return undefined;
|
|
76
|
-
|
|
122
|
+
// T1 + fix round 1 (Codex #4): only the two known dtype strings are trusted off disk as a real
|
|
123
|
+
// dtype. An ABSENT field reads as `undefined` (legacy pre-feature manifest — guardEmbedSpace
|
|
124
|
+
// treats it as fp32, the safe pre-existing default). A field that IS PRESENT but names neither
|
|
125
|
+
// known value is NEVER folded into that same "absent" bucket — it used to be (T1's original cut),
|
|
126
|
+
// which let a corrupted (`"Q8"`) or future-version (`"int8"`) dtype masquerade as legacy-fp32 and
|
|
127
|
+
// search would silently compare vectors from two different spaces. It is carried instead as
|
|
128
|
+
// `dtypeError` (the raw string), which guardEmbedSpace/resolveStoreEmbedDtype turn into a hard
|
|
129
|
+
// refusal rather than a guess.
|
|
130
|
+
const dtype = m.dtype === 'fp32' || m.dtype === 'q8' ? m.dtype : undefined;
|
|
131
|
+
const dtypeError = m.dtype !== undefined && dtype === undefined ? String(m.dtype) : undefined;
|
|
132
|
+
return {
|
|
133
|
+
model: m.model,
|
|
134
|
+
dim: DEFAULT_EMBED_DIM,
|
|
135
|
+
version: typeof m.version === 'number' ? m.version : 1,
|
|
136
|
+
...(typeof m.engine === 'string' ? { engine: m.engine } : {}),
|
|
137
|
+
...(dtype !== undefined ? { dtype } : {}),
|
|
138
|
+
...(dtypeError !== undefined ? { dtypeError } : {}),
|
|
139
|
+
};
|
|
77
140
|
}
|
|
78
|
-
catch {
|
|
79
|
-
return
|
|
141
|
+
catch (err) {
|
|
142
|
+
return { model: '', dim: DEFAULT_EMBED_DIM, version: 1, readError: err instanceof Error ? err.message : String(err) };
|
|
80
143
|
}
|
|
81
144
|
}
|
|
82
145
|
function readStoreManifest(storePath) {
|
|
@@ -91,11 +154,29 @@ export function legacyEmbedManifest() {
|
|
|
91
154
|
return { model: LEGACY_EMBED_MODEL, dim: DEFAULT_EMBED_DIM, version: 1 };
|
|
92
155
|
}
|
|
93
156
|
export function currentEmbedManifest(configured, version = 1, engine) {
|
|
94
|
-
return { model: configured.model, dim: configured.dim, version, ...(engine !== undefined ? { engine } : {}) };
|
|
157
|
+
return { model: configured.model, dim: configured.dim, version, dtype: configured.dtype, ...(engine !== undefined ? { engine } : {}) };
|
|
95
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* D2 (`embed-daemon-memory`): the model/dim check is unchanged; a SEPARATE dtype check is added
|
|
161
|
+
* after it. Absent manifest dtype reads as `'fp32'` (matching every store written before this
|
|
162
|
+
* feature) before the comparison — so an existing fp32 store configured for fp32 never trips this,
|
|
163
|
+
* and only a genuine fp32<->q8 disagreement (or a q8 store re-configured to fp32) is refused.
|
|
164
|
+
*
|
|
165
|
+
* Fix round 1 (Codex #4): a manifest `dtype` that is PRESENT but unrecognized ({@link
|
|
166
|
+
* EmbedManifest.dtypeError}) is checked BEFORE the fp32-fallback comparison above — it must never
|
|
167
|
+
* be silently treated as the safe legacy-absent case, because the store's real vectors may not be
|
|
168
|
+
* fp32 at all.
|
|
169
|
+
*/
|
|
96
170
|
export function guardEmbedSpace(args) {
|
|
97
171
|
const manifest = readStoreManifest(args.storePath)
|
|
98
172
|
?? (args.hasRows ? legacyEmbedManifest() : currentEmbedManifest(args.configured));
|
|
173
|
+
if (manifest.readError !== undefined) {
|
|
174
|
+
return {
|
|
175
|
+
ok: false,
|
|
176
|
+
manifest,
|
|
177
|
+
error: `embedding manifest unreadable (${manifest.readError}); run ${args.reindexHint}`,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
99
180
|
if (manifest.model !== args.configured.model || manifest.dim !== args.configured.dim) {
|
|
100
181
|
return {
|
|
101
182
|
ok: false,
|
|
@@ -103,6 +184,21 @@ export function guardEmbedSpace(args) {
|
|
|
103
184
|
error: `embedding model mismatch: index built with ${manifest.model}/${manifest.dim}, configured ${args.configured.model}/${args.configured.dim}; run ${args.reindexHint}`,
|
|
104
185
|
};
|
|
105
186
|
}
|
|
187
|
+
if (manifest.dtypeError !== undefined) {
|
|
188
|
+
return {
|
|
189
|
+
ok: false,
|
|
190
|
+
manifest,
|
|
191
|
+
error: `unknown embedding dtype "${manifest.dtypeError}" in manifest; run ${args.reindexHint}`,
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
const manifestDtype = manifest.dtype ?? DEFAULT_EMBED_DTYPE;
|
|
195
|
+
if (manifestDtype !== args.configured.dtype) {
|
|
196
|
+
return {
|
|
197
|
+
ok: false,
|
|
198
|
+
manifest,
|
|
199
|
+
error: `embedding dtype mismatch: index built with ${manifestDtype}, configured ${args.configured.dtype}; run ${args.reindexHint}`,
|
|
200
|
+
};
|
|
201
|
+
}
|
|
106
202
|
return { ok: true, manifest };
|
|
107
203
|
}
|
|
108
204
|
export function snapshotEmbedManifest(storePath, backupPath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding-config.js","sourceRoot":"","sources":["../src/embedding-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"embedding-config.js","sourceRoot":"","sources":["../src/embedding-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -293,6 +293,11 @@ export interface TrainingPair {
|
|
|
293
293
|
truncated: TrainingPairTruncation | null;
|
|
294
294
|
captureMode: 'capture' | 'backfill';
|
|
295
295
|
resumed: boolean;
|
|
296
|
+
/** experiment-envelope FR-3(б): the envelope built once after the Step-0 router, carried
|
|
297
|
+
* alongside `budgetMode` (not instead of it — `budgetMode` is a narrower legacy summary).
|
|
298
|
+
* Normalized via `validateExperimentEnvelope`: an invalid or absent value becomes `null`, never
|
|
299
|
+
* a malformed value smuggled into the dataset. */
|
|
300
|
+
envelope: unknown | null;
|
|
296
301
|
}
|
|
297
302
|
/** Per-stage JSONL path, relative to the repo root. ONE file per stage. */
|
|
298
303
|
export declare function trainingPairPath(slug: string, stage: string): string;
|
|
@@ -378,6 +383,7 @@ export declare function buildTrainingPair(opts: {
|
|
|
378
383
|
budgetMode?: unknown;
|
|
379
384
|
captureMode?: unknown;
|
|
380
385
|
resumed?: unknown;
|
|
386
|
+
envelope?: unknown;
|
|
381
387
|
}): TrainingPair;
|
|
382
388
|
/** Serialize one training pair to a JSONL line. The oversize guard already bounds the pair,
|
|
383
389
|
* so this only fails on the impossible (all fields are plain data) — null on that, never a throw. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-adr-checkpoints.d.ts","sourceRoot":"","sources":["../src/feature-adr-checkpoints.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"feature-adr-checkpoints.d.ts","sourceRoot":"","sources":["../src/feature-adr-checkpoints.ts"],"names":[],"mappings":"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"}
|