mailwoman 6.2.1 → 6.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/api-engine.d.ts.map +1 -1
- package/out/api-engine.js +21 -21
- package/out/api-engine.js.map +1 -1
- package/out/commands/corpus/shard/index.d.ts.map +1 -1
- package/out/commands/corpus/shard/index.js +5 -0
- package/out/commands/corpus/shard/index.js.map +1 -1
- package/out/commands/eval/error-analysis.d.ts.map +1 -1
- package/out/commands/eval/error-analysis.js +4 -0
- package/out/commands/eval/error-analysis.js.map +1 -1
- package/out/commands/eval/fragment-board.d.ts.map +1 -0
- package/out/commands/eval/fragment-board.js +42 -0
- package/out/commands/eval/fragment-board.js.map +1 -0
- package/out/commands/eval/gate.d.ts.map +1 -1
- package/out/commands/eval/gate.js +4 -0
- package/out/commands/eval/gate.js.map +1 -1
- package/out/commands/eval/oracle-k.d.ts.map +1 -0
- package/out/commands/eval/oracle-k.js +50 -0
- package/out/commands/eval/oracle-k.js.map +1 -0
- package/out/commands/eval/parity.d.ts.map +1 -1
- package/out/commands/eval/parity.js +6 -0
- package/out/commands/eval/parity.js.map +1 -1
- package/out/eval-harness/baseline-assert.d.ts.map +1 -0
- package/out/eval-harness/baseline-assert.js +189 -0
- package/out/eval-harness/baseline-assert.js.map +1 -0
- package/out/eval-harness/digit-board.d.ts.map +1 -0
- package/out/eval-harness/digit-board.js +131 -0
- package/out/eval-harness/digit-board.js.map +1 -0
- package/out/eval-harness/error-analysis.d.ts.map +1 -1
- package/out/eval-harness/error-analysis.js +6 -3
- package/out/eval-harness/error-analysis.js.map +1 -1
- package/out/eval-harness/fragment-board.d.ts.map +1 -0
- package/out/eval-harness/fragment-board.js +130 -0
- package/out/eval-harness/fragment-board.js.map +1 -0
- package/out/eval-harness/gauntlet/cases/regression.d.ts.map +1 -1
- package/out/eval-harness/gauntlet/cases/regression.js +68 -0
- package/out/eval-harness/gauntlet/cases/regression.js.map +1 -1
- package/out/eval-harness/oracle-k.d.ts.map +1 -0
- package/out/eval-harness/oracle-k.js +305 -0
- package/out/eval-harness/oracle-k.js.map +1 -0
- package/out/eval-harness/parity-corpus.d.ts.map +1 -1
- package/out/eval-harness/parity-corpus.js +58 -1
- package/out/eval-harness/parity-corpus.js.map +1 -1
- package/out/eval-harness/promotion-gate-verdict.d.ts.map +1 -1
- package/out/eval-harness/promotion-gate-verdict.js +1 -1
- package/out/eval-harness/promotion-gate-verdict.js.map +1 -1
- package/out/eval-harness/promotion-gate.d.ts.map +1 -1
- package/out/eval-harness/promotion-gate.js +118 -58
- package/out/eval-harness/promotion-gate.js.map +1 -1
- package/out/geocode-core.d.ts.map +1 -1
- package/out/geocode-core.js +3 -1
- package/out/geocode-core.js.map +1 -1
- package/package.json +23 -23
package/out/api-engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-engine.d.ts","sourceRoot":"","sources":["../api-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAMH,OAAO,KAAK,EAIX,kBAAkB,EAGlB,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"api-engine.d.ts","sourceRoot":"","sources":["../api-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAMH,OAAO,KAAK,EAIX,kBAAkB,EAGlB,MAAM,gBAAgB,CAAA;AA6KvB,gDAAgD;AAChD,MAAM,WAAW,WAAW;IAC3B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,SAAS,EAAE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CACxD;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CAwI9D"}
|
package/out/api-engine.js
CHANGED
|
@@ -34,8 +34,6 @@ import { createDiagnosticReport } from "./utils/DebugOutputBuilder.js";
|
|
|
34
34
|
import { createAddressParser } from "./utils/parser.js";
|
|
35
35
|
/** Default per-state shard root + interp calibration — mirrors the express server's defaults (`GeocodeRouter.ts`). */
|
|
36
36
|
const DATA_ROOT = mailwomanDataRoot();
|
|
37
|
-
/** Bounded concurrency for `batch()`. Override with `MAILWOMAN_BATCH_CONCURRENCY`. */
|
|
38
|
-
const BATCH_CONCURRENCY = Math.max(1, $public.MAILWOMAN_BATCH_CONCURRENCY);
|
|
39
37
|
/** Same WOF-path resolution as the express `GeocodeRouter`/`HealthRouter` (env override, else the conventional shards). */
|
|
40
38
|
function wofPaths() {
|
|
41
39
|
const env = $public.MAILWOMAN_WOF_DB;
|
|
@@ -212,29 +210,31 @@ export async function createServeEngine() {
|
|
|
212
210
|
// here. Ported from `GeocodeRouter`'s `singleHandler`. The cast mirrors `@mailwoman/api/routes.ts`'s established
|
|
213
211
|
// "documented wire shape looser than the domain type" idiom — `GeocodeOutcome` is a deliberately loose passthrough.
|
|
214
212
|
const geocode = async (address) => (await oneGeocode(deps, address));
|
|
215
|
-
//
|
|
216
|
-
//
|
|
217
|
-
//
|
|
213
|
+
// Sequential loop — results land in input order; a thrown row is isolated to its own
|
|
214
|
+
// `{ input, error }` slot. Rows are trimmed here (the route passes the raw validated array through).
|
|
215
|
+
//
|
|
216
|
+
// This was a bounded-concurrency worker pool (`MAILWOMAN_BATCH_CONCURRENCY`, default 8) until
|
|
217
|
+
// 2026-07-16. The pool was measured at 1.00x — a geocode cannot overlap another in-process, because
|
|
218
|
+
// `onnxruntime-node`'s `session.run()` blocks the JS thread rather than releasing to the libuv pool,
|
|
219
|
+
// and `node:sqlite` reads are synchronous. The pool bought nothing but the appearance of tuning, so
|
|
220
|
+
// it's a plain loop now. To actually parallelize, cross a thread boundary — see
|
|
221
|
+
// `mailwoman/geocode-stream.ts`. Receipts: `docs/articles/plan/reference/performance.mdx`.
|
|
218
222
|
const batch = async (addresses) => {
|
|
219
223
|
const inputs = addresses.map((a) => a.trim());
|
|
220
224
|
const results = new Array(inputs.length);
|
|
221
|
-
let
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
const
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
recordTimed(performance.now() - t0, result.resolution_tier);
|
|
229
|
-
results[i] = result;
|
|
230
|
-
}
|
|
231
|
-
catch (err) {
|
|
232
|
-
recordTimed(performance.now() - t0, "error");
|
|
233
|
-
results[i] = { input, error: err instanceof Error ? err.message : String(err) };
|
|
234
|
-
}
|
|
225
|
+
for (let i = 0; i < inputs.length; i++) {
|
|
226
|
+
const input = inputs[i];
|
|
227
|
+
const t0 = performance.now();
|
|
228
|
+
try {
|
|
229
|
+
const result = await oneGeocode(deps, input);
|
|
230
|
+
recordTimed(performance.now() - t0, result.resolution_tier);
|
|
231
|
+
results[i] = result;
|
|
235
232
|
}
|
|
236
|
-
|
|
237
|
-
|
|
233
|
+
catch (err) {
|
|
234
|
+
recordTimed(performance.now() - t0, "error");
|
|
235
|
+
results[i] = { input, error: err instanceof Error ? err.message : String(err) };
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
238
|
return { results };
|
|
239
239
|
};
|
|
240
240
|
// Metrics are the engine's own responsibility here — unlike `/v1/geocode`, the route wraps no try/catch around
|
package/out/api-engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-engine.js","sourceRoot":"","sources":["../api-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAUhC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAmC,MAAM,qBAAqB,CAAA;AAExF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EACN,cAAc,EAGd,kBAAkB,EAClB,aAAa,GACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACvH,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAEvD,sHAAsH;AACtH,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"api-engine.js","sourceRoot":"","sources":["../api-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../commands/corpus/shard/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAgC,MAAM,2BAA2B,CAAA;AAE/F,iGAAiG;AACjG,eAAO,MAAM,SAAS,OAAO,CAAA;AAE7B,QAAA,MAAM,eAAe,6CAER,CAAA;AAEb,QAAA,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../commands/corpus/shard/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAgC,MAAM,2BAA2B,CAAA;AAE/F,iGAAiG;AACjG,eAAO,MAAM,SAAS,OAAO,CAAA;AAE7B,QAAA,MAAM,eAAe,6CAER,CAAA;AAEb,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;qBAyBjB,CAAA;AAEF,OAAO,EAAE,eAAe,IAAI,IAAI,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAI5D,QAAA,MAAM,WAAW,EAAE,gBAAgB,CAAC,OAAO,aAAa,EAAE,OAAO,eAAe,CA2E/E,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -41,6 +41,10 @@ const OptionsSchema = zod.object({
|
|
|
41
41
|
bareProb: zod.string().optional().describe("street-bare: P(bare street)"),
|
|
42
42
|
hnProb: zod.string().optional().describe("street-bare: P(house number)"),
|
|
43
43
|
communes: zod.string().optional().describe("fr-admin-split: communes source"),
|
|
44
|
+
excludeSurfaces: zod
|
|
45
|
+
.string()
|
|
46
|
+
.optional()
|
|
47
|
+
.describe("fr-fragment: REQUIRED — reserved street-surface list to exclude (the fragment board's eval set)"),
|
|
44
48
|
multilocaleCount: zod.string().optional().describe("street-affix: multilocale row count"),
|
|
45
49
|
});
|
|
46
50
|
export { ArgumentsSchema as args, OptionsSchema as options };
|
|
@@ -85,6 +89,7 @@ const CorpusShard = ({ options, args }) => {
|
|
|
85
89
|
bareProb: num(options.bareProb),
|
|
86
90
|
hnProb: num(options.hnProb),
|
|
87
91
|
communes: options.communes,
|
|
92
|
+
excludeSurfaces: options.excludeSurfaces,
|
|
88
93
|
multilocaleCount: num(options.multilocaleCount),
|
|
89
94
|
};
|
|
90
95
|
console.error(`▸ shard recipe "${name}" [${recipe.mode}] seed=${seed} → ${options.output}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../commands/corpus/shard/index.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../commands/corpus/shard/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-analysis.d.ts","sourceRoot":"","sources":["../../../commands/eval/error-analysis.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,6EAA6E,CAAA;AAErG,QAAA,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"error-analysis.d.ts","sourceRoot":"","sources":["../../../commands/eval/error-analysis.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,6EAA6E,CAAA;AAErG,QAAA,MAAM,aAAa;;;;;;;;qBAcjB,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,QAAA,MAAM,iBAAiB,EAAE,gBAAgB,CAAC,OAAO,aAAa,CAU7D,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
@@ -20,6 +20,10 @@ const OptionsSchema = zod.object({
|
|
|
20
20
|
tokenizer: zod.string().optional().describe("Candidate tokenizer"),
|
|
21
21
|
modelCard: zod.string().optional().describe("Candidate model-card"),
|
|
22
22
|
postcodeRepair: zod.boolean().default(false).describe("Parse with postcode repair enabled"),
|
|
23
|
+
wordConsistency: zod
|
|
24
|
+
.boolean()
|
|
25
|
+
.default(false)
|
|
26
|
+
.describe("Parse with the production word-consistency heal (ship default since 2026-07-15)"),
|
|
23
27
|
strict: zod
|
|
24
28
|
.boolean()
|
|
25
29
|
.default(true)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-analysis.js","sourceRoot":"","sources":["../../../commands/eval/error-analysis.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAExE,MAAM,CAAC,MAAM,WAAW,GAAG,0EAA0E,CAAA;AAErG,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACxG,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC/F,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAClE,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACnE,cAAc,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC3F,MAAM,EAAE,GAAG;SACT,OAAO,EAAE;SACT,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,gFAAgF,CAAC;CAC5F,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,iBAAiB,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACjF,MAAM,KAAK,GAAG,cAAc,CAC3B,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAChC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,yDAAyD;IACzD,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
1
|
+
{"version":3,"file":"error-analysis.js","sourceRoot":"","sources":["../../../commands/eval/error-analysis.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAExE,MAAM,CAAC,MAAM,WAAW,GAAG,0EAA0E,CAAA;AAErG,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACxG,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC/F,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAClE,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACnE,cAAc,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC3F,eAAe,EAAE,GAAG;SAClB,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,iFAAiF,CAAC;IAC7F,MAAM,EAAE,GAAG;SACT,OAAO,EAAE;SACT,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,gFAAgF,CAAC;CAC5F,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,iBAAiB,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACjF,MAAM,KAAK,GAAG,cAAc,CAC3B,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAChC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,yDAAyD;IACzD,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fragment-board.d.ts","sourceRoot":"","sources":["../../../commands/eval/fragment-board.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,kGAA6F,CAAA;AAErH,QAAA,MAAM,aAAa;;;;;qBAQjB,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,QAAA,MAAM,iBAAiB,EAAE,gBAAgB,CAAC,OAAO,aAAa,CAkB7D,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @copyright Sister Software
|
|
4
|
+
* @license AGPL-3.0
|
|
5
|
+
* @author Teffen Ellis, et al.
|
|
6
|
+
*
|
|
7
|
+
* `mailwoman eval fragment-board` — the locale fragment board (#727 stage-2, Tier 1c). Targeted
|
|
8
|
+
* failure classes with confidence intervals, sampled from BAN (Tier A). The second of the two
|
|
9
|
+
* standing boards; `eval parity` is the first (the global "do no harm" floor).
|
|
10
|
+
*
|
|
11
|
+
* A change ships when parity HOLDS and this board MOVES. Neither is a verdict alone.
|
|
12
|
+
* Informational (always exits 0) — the standing floors stay on `eval parity`.
|
|
13
|
+
*/
|
|
14
|
+
import { Text } from "ink";
|
|
15
|
+
import zod from "zod";
|
|
16
|
+
import { useCommandTask } from "../../cli-kit/index.js";
|
|
17
|
+
import { runFragmentBoard } from "../../eval-harness/fragment-board.js";
|
|
18
|
+
export const description = "FR fragment board — bare-street / particle / homonym / date-name classes with CIs (#727)";
|
|
19
|
+
const OptionsSchema = zod.object({
|
|
20
|
+
locale: zod.string().optional().default("en-US").describe("Weights package locale (default en-US)"),
|
|
21
|
+
weightsCache: zod
|
|
22
|
+
.string()
|
|
23
|
+
.optional()
|
|
24
|
+
.describe("Package-shaped candidate weights dir (mirrors eval parity --weights-cache)"),
|
|
25
|
+
fixtures: zod.string().optional().describe("Fixture JSONL override (default: the BAN FR fragment board)"),
|
|
26
|
+
klass: zod.string().optional().describe("Score only one class (e.g. bare-street) for a fast loop"),
|
|
27
|
+
});
|
|
28
|
+
export { OptionsSchema as options };
|
|
29
|
+
const EvalFragmentBoard = ({ options }) => {
|
|
30
|
+
const state = useCommandTask(async () => (await runFragmentBoard({
|
|
31
|
+
locale: options.locale,
|
|
32
|
+
weightsCacheRoot: options.weightsCache,
|
|
33
|
+
fixturesPath: options.fixtures,
|
|
34
|
+
klass: options.klass,
|
|
35
|
+
})).exitCode, (exitCode) => exitCode);
|
|
36
|
+
if (state.status === "error")
|
|
37
|
+
return _jsxs(Text, { color: "red", children: ["\u2717 ", state.message] });
|
|
38
|
+
// The runner narrates its table on stdout.
|
|
39
|
+
return null;
|
|
40
|
+
};
|
|
41
|
+
export default EvalFragmentBoard;
|
|
42
|
+
//# sourceMappingURL=fragment-board.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fragment-board.js","sourceRoot":"","sources":["../../../commands/eval/fragment-board.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,0FAA0F,CAAA;AAErH,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACnG,YAAY,EAAE,GAAG;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4EAA4E,CAAC;IACxF,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;IACzG,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;CAClG,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,iBAAiB,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACjF,MAAM,KAAK,GAAG,cAAc,CAC3B,KAAK,IAAI,EAAE,CACV,CACC,MAAM,gBAAgB,CAAC;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,gBAAgB,EAAE,OAAO,CAAC,YAAY;QACtC,YAAY,EAAE,OAAO,CAAC,QAAQ;QAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;KACpB,CAAC,CACF,CAAC,QAAQ,EACX,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,2CAA2C;IAC3C,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate.d.ts","sourceRoot":"","sources":["../../../commands/eval/gate.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,qFAA2E,CAAA;AAEnG,QAAA,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"gate.d.ts","sourceRoot":"","sources":["../../../commands/eval/gate.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,qFAA2E,CAAA;AAEnG,QAAA,MAAM,aAAa;;;;;;;;;qBAoBjB,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,QAAA,MAAM,QAAQ,EAAE,gBAAgB,CAAC,OAAO,aAAa,CAUpD,CAAA;AAED,eAAe,QAAQ,CAAA"}
|
|
@@ -30,6 +30,10 @@ const OptionsSchema = zod.object({
|
|
|
30
30
|
.string()
|
|
31
31
|
.optional()
|
|
32
32
|
.describe("Gazetteer lexicon JSON (default data/gazetteer/anchor-lexicon-v1.json)"),
|
|
33
|
+
weightsCache: zod
|
|
34
|
+
.string()
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("Package-shaped candidate weights dir (<root>/node_modules/@mailwoman/neural-weights-en-us) — #718-safe, feeds anchor+gazetteer+country via loadFromWeights; the only correct grade for a country-channel model (v6.2.0+). Alternative to --model."),
|
|
33
37
|
outDir: zod.string().optional().describe("Battery output dir (default /tmp/gate-<label>-<hhmm>)"),
|
|
34
38
|
});
|
|
35
39
|
export { OptionsSchema as options };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate.js","sourceRoot":"","sources":["../../../commands/eval/gate.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,wEAAwE,CAAA;AAEnG,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACzE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IACpG,IAAI,EAAE,GAAG;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wFAAwF,CAAC;IACpG,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IACpH,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;IACxG,gBAAgB,EAAE,GAAG;SACnB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wEAAwE,CAAC;IACpF,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;CACjG,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,QAAQ,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACxE,MAAM,KAAK,GAAG,cAAc,CAC3B,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAC/B,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,uGAAuG;IACvG,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA"}
|
|
1
|
+
{"version":3,"file":"gate.js","sourceRoot":"","sources":["../../../commands/eval/gate.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,wEAAwE,CAAA;AAEnG,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACzE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IACpG,IAAI,EAAE,GAAG;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wFAAwF,CAAC;IACpG,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IACpH,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;IACxG,gBAAgB,EAAE,GAAG;SACnB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wEAAwE,CAAC;IACpF,YAAY,EAAE,GAAG;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,mPAAmP,CACnP;IACF,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;CACjG,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,QAAQ,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACxE,MAAM,KAAK,GAAG,cAAc,CAC3B,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAC/B,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,uGAAuG;IACvG,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oracle-k.d.ts","sourceRoot":"","sources":["../../../commands/eval/oracle-k.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,gGAA2F,CAAA;AAEnH,QAAA,MAAM,aAAa;;;;;;;qBAgBjB,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,QAAA,MAAM,WAAW,EAAE,gBAAgB,CAAC,OAAO,aAAa,CAoBvD,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @copyright Sister Software
|
|
4
|
+
* @license AGPL-3.0
|
|
5
|
+
* @author Teffen Ellis, et al.
|
|
6
|
+
*
|
|
7
|
+
* `mailwoman eval oracle-k` — oracle-recall@k over segment-level k-best decodes (#727 stage-2
|
|
8
|
+
* instrumentation). Measures the k-best rerank headroom the top-1 gates can't see: how often the
|
|
9
|
+
* gold value appears ANYWHERE in the top-k whole-segmentation hypotheses decoded from the current
|
|
10
|
+
* model's emissions. Informational (always exits 0) — the standing floors stay on `eval parity`.
|
|
11
|
+
*/
|
|
12
|
+
import { Text } from "ink";
|
|
13
|
+
import zod from "zod";
|
|
14
|
+
import { useCommandTask } from "../../cli-kit/index.js";
|
|
15
|
+
import { runOracleK } from "../../eval-harness/oracle-k.js";
|
|
16
|
+
export const description = "Oracle-recall@k — k-best segment-decode headroom over the parity corpus (#727 stage-2)";
|
|
17
|
+
const OptionsSchema = zod.object({
|
|
18
|
+
locale: zod.string().optional().default("en-US").describe("Weights package locale (default en-US)"),
|
|
19
|
+
weightsCache: zod
|
|
20
|
+
.string()
|
|
21
|
+
.optional()
|
|
22
|
+
.describe("Package-shaped candidate weights dir (mirrors eval parity --weights-cache)"),
|
|
23
|
+
fixtures: zod.string().optional().describe("Fixture JSONL override (default: the ratified triaged parity corpus)"),
|
|
24
|
+
goldenDir: zod
|
|
25
|
+
.string()
|
|
26
|
+
.optional()
|
|
27
|
+
.describe("Golden dev dir for the transition-bigram estimate (default data/eval/golden/v0.1.2/dev)"),
|
|
28
|
+
k: zod.coerce.number().int().min(1).max(50).optional().default(10).describe("Hypotheses kept per input"),
|
|
29
|
+
assertBaseline: zod
|
|
30
|
+
.string()
|
|
31
|
+
.optional()
|
|
32
|
+
.describe("Registered baseline profile (v264, v301) — refuse to report if the instruments read wrong"),
|
|
33
|
+
});
|
|
34
|
+
export { OptionsSchema as options };
|
|
35
|
+
const EvalOracleK = ({ options }) => {
|
|
36
|
+
const state = useCommandTask(async () => (await runOracleK({
|
|
37
|
+
locale: options.locale,
|
|
38
|
+
weightsCacheRoot: options.weightsCache,
|
|
39
|
+
fixturesPath: options.fixtures,
|
|
40
|
+
goldenDir: options.goldenDir,
|
|
41
|
+
k: options.k,
|
|
42
|
+
assertBaseline: options.assertBaseline,
|
|
43
|
+
})).exitCode, (exitCode) => exitCode);
|
|
44
|
+
if (state.status === "error")
|
|
45
|
+
return _jsxs(Text, { color: "red", children: ["\u2717 ", state.message] });
|
|
46
|
+
// The runner narrates its table on stdout.
|
|
47
|
+
return null;
|
|
48
|
+
};
|
|
49
|
+
export default EvalOracleK;
|
|
50
|
+
//# sourceMappingURL=oracle-k.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oracle-k.js","sourceRoot":"","sources":["../../../commands/eval/oracle-k.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAE3D,MAAM,CAAC,MAAM,WAAW,GAAG,wFAAwF,CAAA;AAEnH,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACnG,YAAY,EAAE,GAAG;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4EAA4E,CAAC;IACxF,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;IAClH,SAAS,EAAE,GAAG;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,yFAAyF,CAAC;IACrG,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACxG,cAAc,EAAE,GAAG;SACjB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2FAA2F,CAAC;CACvG,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,WAAW,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC3E,MAAM,KAAK,GAAG,cAAc,CAC3B,KAAK,IAAI,EAAE,CACV,CACC,MAAM,UAAU,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,gBAAgB,EAAE,OAAO,CAAC,YAAY;QACtC,YAAY,EAAE,OAAO,CAAC,QAAQ;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,CAAC,EAAE,OAAO,CAAC,CAAC;QACZ,cAAc,EAAE,OAAO,CAAC,cAAc;KACtC,CAAC,CACF,CAAC,QAAQ,EACX,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,2CAA2C;IAC3C,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parity.d.ts","sourceRoot":"","sources":["../../../commands/eval/parity.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,mFAA8E,CAAA;AAEtG,QAAA,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"parity.d.ts","sourceRoot":"","sources":["../../../commands/eval/parity.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAA;AAG9E,eAAO,MAAM,WAAW,mFAA8E,CAAA;AAEtG,QAAA,MAAM,aAAa;;;;;;;;;;qBAuCjB,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,QAAA,MAAM,UAAU,EAAE,gBAAgB,CAAC,OAAO,aAAa,CAuBtD,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -35,6 +35,11 @@ const OptionsSchema = zod.object({
|
|
|
35
35
|
.optional()
|
|
36
36
|
.default(false)
|
|
37
37
|
.describe("Probe 0: decode-time street-morphology emission bias (libpostal street_types, all locales)"),
|
|
38
|
+
wordConsistency: zod
|
|
39
|
+
.boolean()
|
|
40
|
+
.optional()
|
|
41
|
+
.default(true)
|
|
42
|
+
.describe("Ship-config word-consistency heal (default ON per the 2026-07-15 gate revision; --no-word-consistency for pre-heal baselines)"),
|
|
38
43
|
failing: zod.coerce
|
|
39
44
|
.number()
|
|
40
45
|
.int()
|
|
@@ -54,6 +59,7 @@ const EvalParity = ({ options }) => {
|
|
|
54
59
|
fixturesPath: options.fixtures,
|
|
55
60
|
weightsCacheRoot: options.weightsCache,
|
|
56
61
|
streetMorphology: options.streetMorphology,
|
|
62
|
+
wordConsistency: options.wordConsistency,
|
|
57
63
|
failing: options.failing,
|
|
58
64
|
})).exitCode, (exitCode) => exitCode);
|
|
59
65
|
if (state.status === "error")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parity.js","sourceRoot":"","sources":["../../../commands/eval/parity.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AAEnE,MAAM,CAAC,MAAM,WAAW,GAAG,2EAA2E,CAAA;AAEtG,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACnG,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IAC9F,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACxE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IAC7F,QAAQ,EAAE,GAAG;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,2HAA2H,CAC3H;IACF,YAAY,EAAE,GAAG;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,wGAAwG;QACvG,uGAAuG;QACvG,wCAAwC,CACzC;IACF,gBAAgB,EAAE,GAAG;SACnB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,4FAA4F,CAAC;IACxG,OAAO,EAAE,GAAG,CAAC,MAAM;SACjB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;SACV,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,qDAAqD,CAAC;CACjE,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,UAAU,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1E,MAAM,KAAK,GAAG,cAAc,CAC3B,KAAK,IAAI,EAAE,CACV,CACC,MAAM,aAAa,CAAC;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,KAAK;QACxB,aAAa,EAAE,OAAO,CAAC,SAAS;QAChC,aAAa,EAAE,OAAO,CAAC,IAAI;QAC3B,YAAY,EAAE,OAAO,CAAC,QAAQ;QAC9B,gBAAgB,EAAE,OAAO,CAAC,YAAY;QACtC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,OAAO,EAAE,OAAO,CAAC,OAAO;KACxB,CAAC,CACF,CAAC,QAAQ,EACX,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,sDAAsD;IACtD,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"parity.js","sourceRoot":"","sources":["../../../commands/eval/parity.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EAAyB,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AAEnE,MAAM,CAAC,MAAM,WAAW,GAAG,2EAA2E,CAAA;AAEtG,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACnG,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IAC9F,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACxE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IAC7F,QAAQ,EAAE,GAAG;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,2HAA2H,CAC3H;IACF,YAAY,EAAE,GAAG;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,wGAAwG;QACvG,uGAAuG;QACvG,wCAAwC,CACzC;IACF,gBAAgB,EAAE,GAAG;SACnB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,4FAA4F,CAAC;IACxG,eAAe,EAAE,GAAG;SAClB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACR,+HAA+H,CAC/H;IACF,OAAO,EAAE,GAAG,CAAC,MAAM;SACjB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;SACV,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,qDAAqD,CAAC;CACjE,CAAC,CAAA;AAEF,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC,MAAM,UAAU,GAA2C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1E,MAAM,KAAK,GAAG,cAAc,CAC3B,KAAK,IAAI,EAAE,CACV,CACC,MAAM,aAAa,CAAC;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,KAAK;QACxB,aAAa,EAAE,OAAO,CAAC,SAAS;QAChC,aAAa,EAAE,OAAO,CAAC,IAAI;QAC3B,YAAY,EAAE,OAAO,CAAC,QAAQ;QAC9B,gBAAgB,EAAE,OAAO,CAAC,YAAY;QACtC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,OAAO,EAAE,OAAO,CAAC,OAAO;KACxB,CAAC,CACF,CAAC,QAAQ,EACX,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CACtB,CAAA;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,KAAK,CAAC,OAAO,IAAQ,CAAA;IAE/E,sDAAsD;IACtD,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseline-assert.d.ts","sourceRoot":"","sources":["../../eval-harness/baseline-assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAKH,gEAAgE;AAChE,MAAM,WAAW,kBAAkB;IAClC,4EAA4E;IAC5E,EAAE,EAAE,MAAM,CAAA;IACV,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAA;IACf,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAA;IACb,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAA;IACrB,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAA;IACd,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAA;CACZ;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAQD,yDAAyD;AACzD,MAAM,WAAW,mBAAmB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,uCAAuC;AACvC,MAAM,WAAW,iBAAiB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,gFAAgF;IAChF,IAAI,EAAE,WAAW,GAAG,cAAc,CAAA;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,kBAAkB,CAAA;CAC7B;AAED,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,OAAO,CAAA;IACX,UAAU,EAAE,iBAAiB,EAAE,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAA;CACf;AAyBD,+EAA+E;AAC/E,wBAAgB,aAAa,IAAI,kBAAkB,EAAE,CAEpD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEvE;AAED,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAW5D;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,eAAe,CAY7F;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,mBAAmB,EAAE,GAAG,eAAe,CAoDpF;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAChD,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;gBAErB,OAAO,EAAE,eAAe;CAKpC;AAED,mGAAmG;AACnG,wBAAgB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CA6C9D;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,YAAY,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAIrE"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* Harness baseline assertion — an eval refuses to produce a report when its instruments read
|
|
7
|
+
* wrong (#727 stage-2, Tier 0).
|
|
8
|
+
*
|
|
9
|
+
* This is NOT a promotion gate. `promotion-gate.ts` asks "is this model good enough to ship";
|
|
10
|
+
* this asks "is this harness measuring what it thinks it is". A gate spec's floors are one-sided
|
|
11
|
+
* (higher is better, fail below); a baseline is TWO-SIDED — a metric 40% ABOVE its registered
|
|
12
|
+
* value is as loud a signal as 40% below, because the usual cause is that the number changed
|
|
13
|
+
* meaning, not that the model got better. That two-sidedness is the whole point; a one-sided
|
|
14
|
+
* check would have passed both incidents below.
|
|
15
|
+
*
|
|
16
|
+
* Why it exists — two verdicts nearly went out wrong in a single arc, both from a harness
|
|
17
|
+
* reporting confidently on a broken instrument:
|
|
18
|
+
*
|
|
19
|
+
* - Phase 1 read street token@1 = 0.348 against a v264 known-good of 0.573 (-39%). Two bugs:
|
|
20
|
+
* a missing `map_location` in `from_pretrained()` and piece-concatenation welding words
|
|
21
|
+
* ("5thAve"). The number was reported before the cause was found.
|
|
22
|
+
* - Phase 4a measured a resolver rerank while the resolver reached street tier 0/267 times —
|
|
23
|
+
* no street shards were wired. The instrument was dark and the report read as a finding.
|
|
24
|
+
* The verdict was VOID; see `2026-07-16-phase4a-rerank-invalid-measurement.md`.
|
|
25
|
+
*
|
|
26
|
+
* A registered baseline covers BOTH shapes, because instrument-health preconditions register the
|
|
27
|
+
* same way headline metrics do — `paris.resolver.street_evidence_rate@ban-street-centroids` is a
|
|
28
|
+
* row like any other, and a dark resolver reading 0.000 deviates from it past its band.
|
|
29
|
+
*
|
|
30
|
+
* Usage — declare what the harness depends on, pass observations, let it refuse:
|
|
31
|
+
*
|
|
32
|
+
* ```ts
|
|
33
|
+
* const verdict = assertBaselines([
|
|
34
|
+
* { id: "parity.street.token_at_1@v264", observed: streetTokenAt1 },
|
|
35
|
+
* { id: "paris.resolver.street_evidence_rate@ban-street-centroids", observed: withStreet / total },
|
|
36
|
+
* ])
|
|
37
|
+
* if (!verdict.ok) throw new BaselineDeviationError(verdict)
|
|
38
|
+
* // …or simply: guardReport([...]) — which throws on your behalf.
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* A harness with several readings should use a PROFILE instead (`assertProfile("v264", {…})`),
|
|
42
|
+
* which maps its own metric keys to ids in one declared place — see `baselines.json`.
|
|
43
|
+
*
|
|
44
|
+
* Registering a baseline is a deliberate act: `baselines.json` demands a commit, a command, and
|
|
45
|
+
* a note saying what the number means. A baseline you can't reproduce from its own row isn't a
|
|
46
|
+
* baseline, it's a rumor. When a number legitimately moves (new fixture, new tokenizer, a real
|
|
47
|
+
* model change), RE-REGISTER it with a fresh row and a reason — never widen the tolerance to make
|
|
48
|
+
* a deviation quiet. That's the silent-gate-drift failure wearing a different hat.
|
|
49
|
+
*/
|
|
50
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
51
|
+
import { fileURLToPath } from "node:url";
|
|
52
|
+
let cachedFile;
|
|
53
|
+
/**
|
|
54
|
+
* `new URL`-relative for the source tree, with a compiled-tree fallback — tsc does not emit readFileSync'd JSON into
|
|
55
|
+
* `out/`, so `mailwoman/out/eval-harness/` reads the source-tree copy at `mailwoman/eval-harness/baselines.json`. Same
|
|
56
|
+
* bridge as `resolveGateSpecPath`.
|
|
57
|
+
*/
|
|
58
|
+
function resolveBaselineFilePath() {
|
|
59
|
+
const sibling = new URL("./baselines.json", import.meta.url);
|
|
60
|
+
if (existsSync(sibling))
|
|
61
|
+
return fileURLToPath(sibling);
|
|
62
|
+
return fileURLToPath(new URL("../../eval-harness/baselines.json", import.meta.url));
|
|
63
|
+
}
|
|
64
|
+
function loadBaselineFile() {
|
|
65
|
+
if (!cachedFile) {
|
|
66
|
+
cachedFile = JSON.parse(readFileSync(resolveBaselineFilePath(), "utf8"));
|
|
67
|
+
}
|
|
68
|
+
return cachedFile;
|
|
69
|
+
}
|
|
70
|
+
/** Every registered baseline, for tooling that wants to list or audit them. */
|
|
71
|
+
export function listBaselines() {
|
|
72
|
+
return loadBaselineFile().baselines;
|
|
73
|
+
}
|
|
74
|
+
export function findBaseline(id) {
|
|
75
|
+
return loadBaselineFile().baselines.find((b) => b.id === id);
|
|
76
|
+
}
|
|
77
|
+
export function listProfiles() {
|
|
78
|
+
return Object.keys(loadBaselineFile().profiles);
|
|
79
|
+
}
|
|
80
|
+
/** Look up a profile, refusing loudly on a typo rather than silently checking nothing. */
|
|
81
|
+
export function resolveProfile(name) {
|
|
82
|
+
const profile = loadBaselineFile().profiles[name];
|
|
83
|
+
if (!profile) {
|
|
84
|
+
throw new Error(`Unknown baseline profile "${name}". Registered: ${listProfiles().join(", ") || "(none)"}. ` +
|
|
85
|
+
`Add one to mailwoman/eval-harness/baselines.json, or omit the flag for an unregistered candidate.`);
|
|
86
|
+
}
|
|
87
|
+
return profile;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Check a harness's readings against a profile. Metric keys the profile doesn't map are ignored — a profile declares
|
|
91
|
+
* what it can vouch for, not everything a harness happens to compute.
|
|
92
|
+
*/
|
|
93
|
+
export function assertProfile(name, readings) {
|
|
94
|
+
const profile = resolveProfile(name);
|
|
95
|
+
const observations = [];
|
|
96
|
+
for (const [metricKey, id] of Object.entries(profile.observe)) {
|
|
97
|
+
const observed = readings[metricKey];
|
|
98
|
+
if (observed === undefined)
|
|
99
|
+
continue;
|
|
100
|
+
observations.push({ id, observed });
|
|
101
|
+
}
|
|
102
|
+
return assertBaselines(observations);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Check observations against the registry. An unregistered id is a violation, not a pass — an unverifiable reading is
|
|
106
|
+
* exactly the state both incidents were in.
|
|
107
|
+
*/
|
|
108
|
+
export function assertBaselines(observations) {
|
|
109
|
+
const file = loadBaselineFile();
|
|
110
|
+
const violations = [];
|
|
111
|
+
for (const observation of observations) {
|
|
112
|
+
const baseline = findBaseline(observation.id);
|
|
113
|
+
if (!baseline) {
|
|
114
|
+
violations.push({ id: observation.id, kind: "unregistered", observed: observation.observed });
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
const tolerance = baseline.tolerance_rel ?? file.default_tolerance_rel;
|
|
118
|
+
// An absolute tolerance wins when declared. Small-count metrics (a street-evidence rate of
|
|
119
|
+
// 1/63) have a meaningless relative band — one fixture moves it 100% — so those rows opt out
|
|
120
|
+
// of relative checking entirely. A zero-valued row MUST declare one; relative is undefined.
|
|
121
|
+
if (baseline.tolerance_abs !== undefined || baseline.value === 0) {
|
|
122
|
+
const toleranceAbs = baseline.tolerance_abs ?? 0;
|
|
123
|
+
const drift = Math.abs(observation.observed - baseline.value);
|
|
124
|
+
if (drift > toleranceAbs) {
|
|
125
|
+
violations.push({
|
|
126
|
+
id: observation.id,
|
|
127
|
+
kind: "deviation",
|
|
128
|
+
observed: observation.observed,
|
|
129
|
+
expected: baseline.value,
|
|
130
|
+
tolerance: toleranceAbs,
|
|
131
|
+
baseline,
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
continue;
|
|
135
|
+
}
|
|
136
|
+
const deviationRel = (observation.observed - baseline.value) / Math.abs(baseline.value);
|
|
137
|
+
// Two-sided on purpose: a metric that jumps is a metric that probably changed meaning.
|
|
138
|
+
if (Math.abs(deviationRel) > tolerance) {
|
|
139
|
+
violations.push({
|
|
140
|
+
id: observation.id,
|
|
141
|
+
kind: "deviation",
|
|
142
|
+
observed: observation.observed,
|
|
143
|
+
expected: baseline.value,
|
|
144
|
+
deviationRel,
|
|
145
|
+
tolerance,
|
|
146
|
+
baseline,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return { ok: violations.length === 0, violations, checked: observations.length };
|
|
151
|
+
}
|
|
152
|
+
export class BaselineDeviationError extends Error {
|
|
153
|
+
verdict;
|
|
154
|
+
constructor(verdict) {
|
|
155
|
+
super(formatVerdict(verdict));
|
|
156
|
+
this.name = "BaselineDeviationError";
|
|
157
|
+
this.verdict = verdict;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/** Render a verdict for a terminal — the message a refusing harness prints instead of a report. */
|
|
161
|
+
export function formatVerdict(verdict) {
|
|
162
|
+
if (verdict.ok)
|
|
163
|
+
return `baseline check: ${verdict.checked} observation(s) within tolerance`;
|
|
164
|
+
const lines = [
|
|
165
|
+
`REFUSING TO REPORT — ${verdict.violations.length} of ${verdict.checked} baseline check(s) failed.`,
|
|
166
|
+
"",
|
|
167
|
+
"A harness reading this far from its registered baseline is measuring something other than",
|
|
168
|
+
"what it claims. Find the instrument bug before trusting any number in this run.",
|
|
169
|
+
"",
|
|
170
|
+
];
|
|
171
|
+
for (const violation of verdict.violations) {
|
|
172
|
+
if (violation.kind === "unregistered") {
|
|
173
|
+
lines.push(` ✗ ${violation.id}`, ` observed ${violation.observed}`, ` NO REGISTERED BASELINE — this reading cannot be verified. Register it in`, ` mailwoman/eval-harness/baselines.json (commit + command + note required).`, "");
|
|
174
|
+
continue;
|
|
175
|
+
}
|
|
176
|
+
const percent = violation.deviationRel === undefined ? "n/a" : `${(violation.deviationRel * 100).toFixed(1)}%`;
|
|
177
|
+
const direction = (violation.deviationRel ?? 0) < 0 ? "LOW" : "HIGH";
|
|
178
|
+
lines.push(` ✗ ${violation.id} reads ${direction}`, ` observed ${violation.observed}`, ` expected ${violation.expected} (±${((violation.tolerance ?? 0) * 100).toFixed(0)}%)`, ` deviation ${percent}`, ` baseline registered ${violation.baseline?.registered_at} @ ${violation.baseline?.commit}`, ` meaning ${violation.baseline?.note}`, ` reproduce ${violation.baseline?.command}`, "");
|
|
179
|
+
}
|
|
180
|
+
lines.push("If the number legitimately moved (new fixture, new tokenizer, a real model change),", "RE-REGISTER the baseline with a new row and a reason. Do not widen tolerance_rel to make", "this quiet — that is silent gate drift.");
|
|
181
|
+
return lines.join("\n");
|
|
182
|
+
}
|
|
183
|
+
/** Assert, or throw. The one-liner a harness puts before it prints anything. */
|
|
184
|
+
export function guardReport(observations) {
|
|
185
|
+
const verdict = assertBaselines(observations);
|
|
186
|
+
if (!verdict.ok)
|
|
187
|
+
throw new BaselineDeviationError(verdict);
|
|
188
|
+
}
|
|
189
|
+
//# sourceMappingURL=baseline-assert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseline-assert.js","sourceRoot":"","sources":["../../eval-harness/baseline-assert.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"digit-board.d.ts","sourceRoot":"","sources":["../../eval-harness/digit-board.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAUH,eAAO,MAAM,oBAAoB,oDAAoD,CAAA;AAErF,MAAM,WAAW,YAAY;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAChC,6GAA6G;IAC7G,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IACjC,QAAQ,EAAE,MAAM,CAAA;CAChB;AA6BD,wBAAsB,aAAa,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAmF/F"}
|