audit-tools 0.32.42 → 0.32.43

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.
Files changed (61) hide show
  1. package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
  2. package/dist/audit/cli/rollingAuditDispatch.js +21 -1
  3. package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
  4. package/dist/audit/cli/scoreTokensCommand.d.ts +18 -0
  5. package/dist/audit/cli/scoreTokensCommand.d.ts.map +1 -0
  6. package/dist/audit/cli/scoreTokensCommand.js +130 -0
  7. package/dist/audit/cli/scoreTokensCommand.js.map +1 -0
  8. package/dist/audit/cli.d.ts.map +1 -1
  9. package/dist/audit/cli.js +5 -1
  10. package/dist/audit/cli.js.map +1 -1
  11. package/dist/audit/io/tokenUsageLedger.d.ts +57 -0
  12. package/dist/audit/io/tokenUsageLedger.d.ts.map +1 -0
  13. package/dist/audit/io/tokenUsageLedger.js +52 -0
  14. package/dist/audit/io/tokenUsageLedger.js.map +1 -0
  15. package/dist/audit/reporting/scoreTokens.d.ts +112 -0
  16. package/dist/audit/reporting/scoreTokens.d.ts.map +1 -0
  17. package/dist/audit/reporting/scoreTokens.js +195 -0
  18. package/dist/audit/reporting/scoreTokens.js.map +1 -0
  19. package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts +27 -0
  20. package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts.map +1 -0
  21. package/dist/remediate/contractPipeline/counterexampleFingerprint.js +37 -0
  22. package/dist/remediate/contractPipeline/counterexampleFingerprint.js.map +1 -0
  23. package/dist/remediate/index.d.ts +34 -0
  24. package/dist/remediate/index.d.ts.map +1 -1
  25. package/dist/remediate/index.js +92 -26
  26. package/dist/remediate/index.js.map +1 -1
  27. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  28. package/dist/remediate/steps/contractPipeline.js +35 -4
  29. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  30. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  31. package/dist/remediate/steps/contractPipelinePrompts.js +1 -1
  32. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  33. package/dist/remediate/steps/dispatch/acceptNode.d.ts +18 -0
  34. package/dist/remediate/steps/dispatch/acceptNode.d.ts.map +1 -1
  35. package/dist/remediate/steps/dispatch/acceptNode.js +26 -0
  36. package/dist/remediate/steps/dispatch/acceptNode.js.map +1 -1
  37. package/dist/remediate/steps/rollingSession.d.ts.map +1 -1
  38. package/dist/remediate/steps/rollingSession.js +21 -4
  39. package/dist/remediate/steps/rollingSession.js.map +1 -1
  40. package/dist/remediate/validation/artifacts.d.ts.map +1 -1
  41. package/dist/remediate/validation/artifacts.js +15 -26
  42. package/dist/remediate/validation/artifacts.js.map +1 -1
  43. package/dist/remediate/validation/contractPipeline.d.ts +1 -1
  44. package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
  45. package/dist/remediate/validation/contractPipeline.js +1 -1
  46. package/dist/remediate/validation/contractPipeline.js.map +1 -1
  47. package/dist/remediate/validation/contractPipelineGates.d.ts +52 -0
  48. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  49. package/dist/remediate/validation/contractPipelineGates.js +61 -0
  50. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  51. package/dist/shared/dispatch/rollingDispatch.d.ts +15 -0
  52. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  53. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  54. package/dist/shared/providers/openAiCompatibleProvider.d.ts +29 -0
  55. package/dist/shared/providers/openAiCompatibleProvider.d.ts.map +1 -1
  56. package/dist/shared/providers/openAiCompatibleProvider.js +60 -0
  57. package/dist/shared/providers/openAiCompatibleProvider.js.map +1 -1
  58. package/dist/shared/providers/types.d.ts +19 -0
  59. package/dist/shared/providers/types.d.ts.map +1 -1
  60. package/package.json +1 -1
  61. package/wrapper/audit-code-wrapper-lib.mjs +15 -39
@@ -1 +1 @@
1
- {"version":3,"file":"rollingAuditDispatch.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/rollingAuditDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollingAuditDispatch.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/rollingAuditDispatch.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ import { ACTIVE_DISPATCH_FILENAME, } from "../types/activeDispatch.js";
23
23
  import { runRollingDispatch } from "../orchestrator/rollingDispatch.js";
24
24
  import { createFreshSessionProvider } from "../providers/index.js";
25
25
  import { prepareDispatchArtifacts } from "./dispatch.js";
26
+ import { appendTokenUsageLine } from "../io/tokenUsageLedger.js";
26
27
  import { mergeAndIngest } from "./mergeAndIngestCommand.js";
27
28
  import { packageRoot } from "./paths.js";
28
29
  import { artifactNameForId } from "./args.js";
@@ -234,6 +235,10 @@ export function makeAuditProviderPacketDispatcher(params) {
234
235
  // provider surfaced one) so `handleResult` can demote a declared-free pool
235
236
  // that started charging. Absent for providers that report no cost.
236
237
  const observedCost = launch.observedCostUsd != null ? { observedCostUsd: launch.observedCostUsd } : {};
238
+ // score-tokens cost counterpart: relay the endpoint-reported token usage
239
+ // (when the provider surfaced one) the SAME way, so a consumer reading
240
+ // `RollingDispatchResult.observedUsage` sees it alongside the cost.
241
+ const observedUsage = launch.observedUsage != null ? { observedUsage: launch.observedUsage } : {};
237
242
  // The worker writes its AuditResult[] per the prompt; confirm it landed and
238
243
  // parses. Contents are adjudicated by the deterministic merge downstream.
239
244
  const result = await readOptionalJsonFile(resultPath);
@@ -255,7 +260,22 @@ export function makeAuditProviderPacketDispatcher(params) {
255
260
  error: new Error(`worker for packet ${packet.id} wrote no result at ${resultPath}`),
256
261
  };
257
262
  }
258
- return { packet, outcome: "success", ...observedCost };
263
+ // Record the token-usage ledger line NOW — at packet-completion / result-
264
+ // handling time, never on the dispatch/admission path (INV: no added
265
+ // admission latency). Every completed packet gets a line, including the
266
+ // agentic-CLI providers (codex/opencode) that report no structured usage —
267
+ // their legs are null/null/null/null, distinctly "unmeasured" rather than
268
+ // silently 0. Best-effort (never fails the packet).
269
+ await appendTokenUsageLine(params.artifactsDir, params.runId, {
270
+ packet_id: packet.id,
271
+ pool_id: slot?.poolId ?? null,
272
+ input_tokens: launch.observedUsage?.inputTokens ?? null,
273
+ output_tokens: launch.observedUsage?.outputTokens ?? null,
274
+ cache_read_tokens: launch.observedUsage?.cacheReadTokens ?? null,
275
+ cache_creation_tokens: launch.observedUsage?.cacheCreationTokens ?? null,
276
+ observed_cost_usd: launch.observedCostUsd ?? null,
277
+ });
278
+ return { packet, outcome: "success", ...observedCost, ...observedUsage };
259
279
  }
260
280
  catch (err) {
261
281
  return { packet, outcome: "error", error: err };
@@ -1 +1 @@
1
- {"version":3,"file":"rollingAuditDispatch.js","sourceRoot":"","sources":["../../../src/audit/cli/rollingAuditDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollingAuditDispatch.js","sourceRoot":"","sources":["../../../src/audit/cli/rollingAuditDispatch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * `score-tokens` — emit the deterministic token/cache-hit scorecard for a run's
3
+ * recorded token-usage ledger (the cost counterpart to `score-audit`, A-2).
4
+ *
5
+ * Resolution:
6
+ * --run-id <id> the run whose ledger to score (used to locate the
7
+ * default ledger path AND stamp the scorecard's run_id)
8
+ * --usage-ledger <path> token-usage.jsonl (default: <artifacts>/runs/<run-id>/token-usage.jsonl)
9
+ * --run-dir <path> explicit run dir override (default: <artifacts>/runs/<run-id>)
10
+ * --baseline <path> a prior score-tokens.json to gate against (optional)
11
+ * --out <path> where to write score-tokens.json (default: <artifacts>/score-tokens.json)
12
+ *
13
+ * The exit code is wired SOLELY to a cache-hit-ratio REGRESSION vs --baseline
14
+ * (track-don't-gate: token totals are printed but never gate). With no baseline
15
+ * the run only emits the scorecard and always exits 0.
16
+ */
17
+ export declare function cmdScoreTokens(argv: string[]): Promise<void>;
18
+ //# sourceMappingURL=scoreTokensCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoreTokensCommand.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/scoreTokensCommand.ts"],"names":[],"mappings":"AAoEA;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDlE"}
@@ -0,0 +1,130 @@
1
+ import { join } from "node:path";
2
+ import { readOptionalTextFile, readJsonFile, writeJsonFile, writeTextFile } from "audit-tools/shared";
3
+ import { scoreTokens, cacheHitRatioRegressed, renderTokenScorecardMarkdown, packetPromptPrefixHash, } from "../reporting/scoreTokens.js";
4
+ import { TOKEN_USAGE_LEDGER_FILENAME } from "../io/tokenUsageLedger.js";
5
+ import { getArtifactsDir, getFlag } from "./args.js";
6
+ /**
7
+ * Parse a token-usage ledger (JSON Lines, one {@link TokenUsageEntry}-shaped
8
+ * record per line — see `appendTokenUsageLine`). Blank lines are skipped; a
9
+ * malformed line is dropped rather than aborting the whole read (tolerant, same
10
+ * discipline as the provider extractors — a single bad line never blocks
11
+ * scoring the rest of the run).
12
+ */
13
+ function parseLedger(text) {
14
+ const entries = [];
15
+ for (const line of text.split("\n")) {
16
+ const trimmed = line.trim();
17
+ if (trimmed.length === 0)
18
+ continue;
19
+ try {
20
+ const parsed = JSON.parse(trimmed);
21
+ if (parsed && typeof parsed.packet_id === "string")
22
+ entries.push(parsed);
23
+ }
24
+ catch {
25
+ // Malformed line — skip it; scoring proceeds over the rest.
26
+ }
27
+ }
28
+ return entries;
29
+ }
30
+ /**
31
+ * Build the `packet_id -> fixed-prefix hash` map the prefix-stability signal
32
+ * needs, from a completed run's recorded artifacts: `<runDir>/dispatch-plan.json`
33
+ * lists each packet's `prompt_path`, and those packet prompt files persist after
34
+ * the run. We hash the cache-eligible fixed prefix of each (everything before the
35
+ * `## Packet` marker — the boundary `buildPacketPrompt` and its cache-safety test
36
+ * pin). This makes the prefix-stability guard REAL post-hoc: a change that
37
+ * mutates the cache-eligible prefix surfaces as a diverging packet id, the
38
+ * structural (provider-independent) complement to the cache-hit-ratio signal.
39
+ * Fully tolerant: a missing/malformed plan or an unreadable prompt simply yields
40
+ * no hash for that packet (or an empty map), and scoreTokens then reports
41
+ * prefix_stability as "no signal" (stable) rather than a false divergence.
42
+ */
43
+ async function buildPrefixHashes(runDir) {
44
+ const hashes = {};
45
+ const planText = await readOptionalTextFile(join(runDir, "dispatch-plan.json"));
46
+ if (planText === undefined)
47
+ return hashes;
48
+ let plan;
49
+ try {
50
+ const parsed = JSON.parse(planText);
51
+ plan = Array.isArray(parsed) ? parsed : [];
52
+ }
53
+ catch {
54
+ return hashes;
55
+ }
56
+ for (const entry of plan) {
57
+ if (typeof entry?.packet_id !== "string" || typeof entry?.prompt_path !== "string")
58
+ continue;
59
+ const prompt = await readOptionalTextFile(entry.prompt_path);
60
+ if (prompt === undefined)
61
+ continue;
62
+ hashes[entry.packet_id] = packetPromptPrefixHash(prompt);
63
+ }
64
+ return hashes;
65
+ }
66
+ /**
67
+ * `score-tokens` — emit the deterministic token/cache-hit scorecard for a run's
68
+ * recorded token-usage ledger (the cost counterpart to `score-audit`, A-2).
69
+ *
70
+ * Resolution:
71
+ * --run-id <id> the run whose ledger to score (used to locate the
72
+ * default ledger path AND stamp the scorecard's run_id)
73
+ * --usage-ledger <path> token-usage.jsonl (default: <artifacts>/runs/<run-id>/token-usage.jsonl)
74
+ * --run-dir <path> explicit run dir override (default: <artifacts>/runs/<run-id>)
75
+ * --baseline <path> a prior score-tokens.json to gate against (optional)
76
+ * --out <path> where to write score-tokens.json (default: <artifacts>/score-tokens.json)
77
+ *
78
+ * The exit code is wired SOLELY to a cache-hit-ratio REGRESSION vs --baseline
79
+ * (track-don't-gate: token totals are printed but never gate). With no baseline
80
+ * the run only emits the scorecard and always exits 0.
81
+ */
82
+ export async function cmdScoreTokens(argv) {
83
+ const artifactsDir = getArtifactsDir(argv);
84
+ const runId = getFlag(argv, "--run-id") ?? "unknown";
85
+ const runDir = getFlag(argv, "--run-dir") ?? join(artifactsDir, "runs", runId);
86
+ const ledgerPath = getFlag(argv, "--usage-ledger") ?? join(runDir, TOKEN_USAGE_LEDGER_FILENAME);
87
+ const baselinePath = getFlag(argv, "--baseline");
88
+ const outPath = getFlag(argv, "--out") ?? join(artifactsDir, "score-tokens.json");
89
+ const ledgerText = await readOptionalTextFile(ledgerPath);
90
+ if (ledgerText === undefined) {
91
+ console.error(`score-tokens: no ledger found at ${ledgerPath} — pass --run-id or --usage-ledger.`);
92
+ process.exitCode = 1;
93
+ return;
94
+ }
95
+ const entries = parseLedger(ledgerText);
96
+ let baseline = null;
97
+ if (baselinePath) {
98
+ try {
99
+ baseline = await readJsonFile(baselinePath);
100
+ }
101
+ catch (error) {
102
+ console.error(`Could not read baseline scorecard at ${baselinePath}: ${error.message}`);
103
+ process.exitCode = 1;
104
+ return;
105
+ }
106
+ }
107
+ const prefixHashes = await buildPrefixHashes(runDir);
108
+ const scorecard = scoreTokens(runId, entries, prefixHashes);
109
+ await writeJsonFile(outPath, scorecard);
110
+ const summary = renderTokenScorecardMarkdown(scorecard);
111
+ const summaryPath = outPath.replace(/\.json$/, ".md");
112
+ await writeTextFile(summaryPath, summary);
113
+ process.stdout.write(summary);
114
+ console.error(`Token scorecard written to ${outPath} (summary: ${summaryPath})`);
115
+ // The ONLY gate: a cache-hit-ratio regression against the baseline.
116
+ if (cacheHitRatioRegressed(scorecard, baseline)) {
117
+ console.error(`✗ cache-hit-ratio regression: ${fmt(scorecard.cache_hit_ratio_overall)} < ` +
118
+ `baseline ${fmt(baseline?.cache_hit_ratio_overall ?? 0)}`);
119
+ process.exitCode = 1;
120
+ return;
121
+ }
122
+ if (baseline) {
123
+ console.error(`✓ cache-hit ratio ${fmt(scorecard.cache_hit_ratio_overall)} within baseline ` +
124
+ `${fmt(baseline.cache_hit_ratio_overall ?? 0)}`);
125
+ }
126
+ }
127
+ function fmt(value) {
128
+ return value === null ? "n/a" : `${(value * 100).toFixed(1)}%`;
129
+ }
130
+ //# sourceMappingURL=scoreTokensCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoreTokensCommand.js","sourceRoot":"","sources":["../../../src/audit/cli/scoreTokensCommand.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/audit/cli.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,OAAO,EACP,OAAO,EACP,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAqBtD,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAWxB,CAAC;AA0FF,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1D"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/audit/cli.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,OAAO,EACP,OAAO,EACP,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAsBtD,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAWxB,CAAC;AA6FF,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1D"}
package/dist/audit/cli.js CHANGED
@@ -28,6 +28,7 @@ import { cmdCleanup } from "./cli/cleanupCommand.js";
28
28
  import { cmdQuota } from "./cli/quotaCommand.js";
29
29
  import { cmdDispatchStatus } from "./cli/dispatchStatusCommand.js";
30
30
  import { cmdScoreAudit } from "./cli/scoreAuditCommand.js";
31
+ import { cmdScoreTokens } from "./cli/scoreTokensCommand.js";
31
32
  export { runSample };
32
33
  export const cliTestUtils = {
33
34
  defaults: DIRECT_CLI_DEFAULTS,
@@ -120,9 +121,12 @@ async function main(argv) {
120
121
  case "score-audit":
121
122
  await cmdScoreAudit(argv);
122
123
  return;
124
+ case "score-tokens":
125
+ await cmdScoreTokens(argv);
126
+ return;
123
127
  default:
124
128
  console.error(`Unknown command: ${command}`);
125
- console.error("Available commands: sample-run, advance-audit, next-step, worker-run, import-external-analyzer, intake, plan, ingest-results, explain-task, update-runtime-validation, validate, validate-results, requeue, synthesize, force-synthesis, resynthesize, cleanup, prepare-dispatch, merge-and-ingest, submit-packet, validate-result, quota, status, dispatch-status, score-audit");
129
+ console.error("Available commands: sample-run, advance-audit, next-step, worker-run, import-external-analyzer, intake, plan, ingest-results, explain-task, update-runtime-validation, validate, validate-results, requeue, synthesize, force-synthesis, resynthesize, cleanup, prepare-dispatch, merge-and-ingest, submit-packet, validate-result, quota, status, dispatch-status, score-audit, score-tokens");
126
130
  process.exitCode = 1;
127
131
  }
128
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/audit/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/audit/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Per-run token-usage ledger — the RECORDING half of the score-tokens track
3
+ * (context-efficiency track item 3, the cost counterpart to the A-2 quality
4
+ * oracle `score-audit`). One line is appended per COMPLETED dispatch packet, in
5
+ * the SAME `.audit-tools/audit/runs/<run-id>/` directory `dispatch-quota.json`
6
+ * already lives in, so a `score-tokens` run keyed by run-id finds it beside the
7
+ * quota/corpus artifacts the same way `score-audit` finds `corpus/<run-id>.labels.json`.
8
+ *
9
+ * Single-sourced here so the path and the append shape can't drift between the
10
+ * (currently sole) writer — `makeAuditProviderPacketDispatcher` in
11
+ * `rollingAuditDispatch.ts`, invoked at PACKET-COMPLETION time (after the
12
+ * provider's launch resolves and the result file is confirmed) — and any future
13
+ * reader/writer. Never called from the admission/scheduling path: appending here
14
+ * adds no latency to `selectProvider` / `scheduleWave` / the reservation ledger.
15
+ *
16
+ * Best-effort by design: a ledger write failure must never fail the packet it is
17
+ * recording (mirrors the provider's own best-effort stdout/stderr appenders).
18
+ */
19
+ /** Filename of the per-run token-usage ledger (JSON Lines, one record per packet). */
20
+ export declare const TOKEN_USAGE_LEDGER_FILENAME = "token-usage.jsonl";
21
+ /**
22
+ * One recorded packet-completion line. Token/cost legs the provider did not
23
+ * report are `null` — NEVER 0 and NEVER omitted — so a reader can distinguish
24
+ * "measured zero" from "unmeasured" (no-silent-scoring discipline, mirroring
25
+ * score-audit's `unmatched[]`).
26
+ */
27
+ export interface TokenUsageLedgerLine {
28
+ packet_id: string;
29
+ /** Task ids folded into this packet, when the producer has them available. */
30
+ task_ids?: string[] | null;
31
+ /** The provider/account/model pool that served this packet. */
32
+ pool_id?: string | null;
33
+ /** The audit lens this packet reviewed, when the producer has it available. */
34
+ lens?: string | null;
35
+ /** Wall-clock ISO instant the line was appended (IO-shell timestamp). */
36
+ timestamp: string;
37
+ input_tokens: number | null;
38
+ output_tokens: number | null;
39
+ cache_read_tokens: number | null;
40
+ cache_creation_tokens: number | null;
41
+ observed_cost_usd: number | null;
42
+ }
43
+ /** The run dir a run's ledger (and `dispatch-quota.json`) live under. */
44
+ export declare function tokenUsageRunDir(artifactsDir: string, runId: string): string;
45
+ /** Absolute path to a run's token-usage ledger. */
46
+ export declare function tokenUsageLedgerPath(artifactsDir: string, runId: string): string;
47
+ /**
48
+ * Append one packet-completion record to the run's token-usage ledger.
49
+ * Best-effort: swallows any IO failure (missing dir race, permission blip) so
50
+ * a ledger write can never fail the packet it is recording. `timestamp`
51
+ * defaults to `new Date().toISOString()` — a wall-clock read confined to this
52
+ * IO-shell write, never a pure function's determinism.
53
+ */
54
+ export declare function appendTokenUsageLine(artifactsDir: string, runId: string, line: Omit<TokenUsageLedgerLine, "timestamp"> & {
55
+ timestamp?: string;
56
+ }): Promise<void>;
57
+ //# sourceMappingURL=tokenUsageLedger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenUsageLedger.d.ts","sourceRoot":"","sources":["../../../src/audit/io/tokenUsageLedger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,sFAAsF;AACtF,eAAO,MAAM,2BAA2B,sBAAsB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,yEAAyE;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,yEAAyE;AACzE,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED,mDAAmD;AACnD,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhF;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACrE,OAAO,CAAC,IAAI,CAAC,CAYf"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Per-run token-usage ledger — the RECORDING half of the score-tokens track
3
+ * (context-efficiency track item 3, the cost counterpart to the A-2 quality
4
+ * oracle `score-audit`). One line is appended per COMPLETED dispatch packet, in
5
+ * the SAME `.audit-tools/audit/runs/<run-id>/` directory `dispatch-quota.json`
6
+ * already lives in, so a `score-tokens` run keyed by run-id finds it beside the
7
+ * quota/corpus artifacts the same way `score-audit` finds `corpus/<run-id>.labels.json`.
8
+ *
9
+ * Single-sourced here so the path and the append shape can't drift between the
10
+ * (currently sole) writer — `makeAuditProviderPacketDispatcher` in
11
+ * `rollingAuditDispatch.ts`, invoked at PACKET-COMPLETION time (after the
12
+ * provider's launch resolves and the result file is confirmed) — and any future
13
+ * reader/writer. Never called from the admission/scheduling path: appending here
14
+ * adds no latency to `selectProvider` / `scheduleWave` / the reservation ledger.
15
+ *
16
+ * Best-effort by design: a ledger write failure must never fail the packet it is
17
+ * recording (mirrors the provider's own best-effort stdout/stderr appenders).
18
+ */
19
+ import { appendFile, mkdir } from "node:fs/promises";
20
+ import { join } from "node:path";
21
+ /** Filename of the per-run token-usage ledger (JSON Lines, one record per packet). */
22
+ export const TOKEN_USAGE_LEDGER_FILENAME = "token-usage.jsonl";
23
+ /** The run dir a run's ledger (and `dispatch-quota.json`) live under. */
24
+ export function tokenUsageRunDir(artifactsDir, runId) {
25
+ return join(artifactsDir, "runs", runId);
26
+ }
27
+ /** Absolute path to a run's token-usage ledger. */
28
+ export function tokenUsageLedgerPath(artifactsDir, runId) {
29
+ return join(tokenUsageRunDir(artifactsDir, runId), TOKEN_USAGE_LEDGER_FILENAME);
30
+ }
31
+ /**
32
+ * Append one packet-completion record to the run's token-usage ledger.
33
+ * Best-effort: swallows any IO failure (missing dir race, permission blip) so
34
+ * a ledger write can never fail the packet it is recording. `timestamp`
35
+ * defaults to `new Date().toISOString()` — a wall-clock read confined to this
36
+ * IO-shell write, never a pure function's determinism.
37
+ */
38
+ export async function appendTokenUsageLine(artifactsDir, runId, line) {
39
+ try {
40
+ const dir = tokenUsageRunDir(artifactsDir, runId);
41
+ await mkdir(dir, { recursive: true });
42
+ const record = {
43
+ ...line,
44
+ timestamp: line.timestamp ?? new Date().toISOString(),
45
+ };
46
+ await appendFile(tokenUsageLedgerPath(artifactsDir, runId), `${JSON.stringify(record)}\n`, "utf8");
47
+ }
48
+ catch {
49
+ // Best-effort observability write — never fail the packet it is recording.
50
+ }
51
+ }
52
+ //# sourceMappingURL=tokenUsageLedger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenUsageLedger.js","sourceRoot":"","sources":["../../../src/audit/io/tokenUsageLedger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sFAAsF;AACtF,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAyB/D,yEAAyE;AACzE,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,KAAa;IAClE,OAAO,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,oBAAoB,CAAC,YAAoB,EAAE,KAAa;IACtE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,2BAA2B,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAAoB,EACpB,KAAa,EACb,IAAsE;IAEtE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,MAAM,MAAM,GAAyB;YACnC,GAAG,IAAI;YACP,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACtD,CAAC;QACF,MAAM,UAAU,CAAC,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrG,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;IAC7E,CAAC;AACH,CAAC"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * score-tokens — the COST counterpart to the A-2 quality oracle (`score-audit`).
3
+ *
4
+ * `scoreTokens` is a PURE function of a run's recorded token-usage ledger
5
+ * (`token-usage.jsonl`, appended post-hoc at packet-completion time by
6
+ * `appendTokenUsageLine` — see `src/audit/io/tokenUsageLedger.ts`). It reports
7
+ * real per-step input/output tokens and prefix cache-hit ratio, exactly what the
8
+ * provider reported on a COMPLETED response — never a metered/token-counting API
9
+ * call and never `estimateTokensFromBytes` (that estimator is for PLANNING only).
10
+ *
11
+ * No-silent-scoring (mirrors score-audit's `unmatched[]` discipline): a step
12
+ * whose usage is entirely unreported (the agentic-CLI providers — claude-code /
13
+ * codex / opencode — spawn an external process with no structured usage) is
14
+ * counted in `totals.unmeasured_steps` and excluded from the token/cache-hit
15
+ * aggregates — NEVER folded in as a silent 0.
16
+ *
17
+ * Pure module: no IO, no clock (the ledger's wall-clock timestamp is read but
18
+ * never used to influence the verdict), no model identity — the same (entries,
19
+ * prefixHashes) always yields a byte-identical scorecard, order-independent.
20
+ */
21
+ /** One packet's recorded usage, read from a `token-usage.jsonl` line. */
22
+ export interface TokenUsageEntry {
23
+ packet_id: string;
24
+ pool_id?: string | null;
25
+ lens?: string | null;
26
+ input_tokens?: number | null;
27
+ output_tokens?: number | null;
28
+ cache_read_tokens?: number | null;
29
+ cache_creation_tokens?: number | null;
30
+ }
31
+ /** Per-packet prefix-cache-eligibility verdict (structural, provider-independent). */
32
+ export interface PrefixStability {
33
+ /** True iff every packet in the corpus hashed to the SAME fixed-prefix. */
34
+ stable: boolean;
35
+ /** Packet ids whose fixed-prefix hash diverged from the majority, sorted. */
36
+ diverging_packet_ids: string[];
37
+ }
38
+ /** The deterministic scorecard `scoreTokens` emits. */
39
+ export interface TokenScorecard {
40
+ schema_version: "score-tokens-scorecard/v1";
41
+ run_id: string;
42
+ steps: Array<{
43
+ packet_id: string;
44
+ pool_id: string | null;
45
+ lens: string | null;
46
+ input_tokens: number | null;
47
+ output_tokens: number | null;
48
+ cache_read_tokens: number | null;
49
+ /** cacheRead / (cacheRead + input) when BOTH legs are measured, else null. */
50
+ cache_hit_ratio: number | null;
51
+ }>;
52
+ totals: {
53
+ /** Sum of `input_tokens` over MEASURED steps only. */
54
+ input_tokens: number;
55
+ /** Sum of `output_tokens` over MEASURED steps only. */
56
+ output_tokens: number;
57
+ /** Steps with at least one reported usage field. */
58
+ measured_steps: number;
59
+ /** Steps whose usage was entirely unreported (never folded into totals as 0). */
60
+ unmeasured_steps: number;
61
+ };
62
+ /** Aggregate cache_hit_ratio over measured steps only; null when none qualify. */
63
+ cache_hit_ratio_overall: number | null;
64
+ /** Structural (provider-independent) prompt-prefix cache-eligibility signal. */
65
+ prefix_stability: PrefixStability;
66
+ /** Per-pool (== per-provider identity, `pool_id` is `provider#account/model`) coverage. */
67
+ provider_coverage: Record<string, "measured" | "unmeasured">;
68
+ }
69
+ /**
70
+ * Score a run's recorded token-usage ledger — the pure score-tokens oracle.
71
+ *
72
+ * `prefixHashes` is an OPTIONAL caller-supplied map of `packet_id ->
73
+ * fixed-prefix hash` (see {@link packetPromptPrefixHash}), computed by the
74
+ * caller from the run's recorded packet prompts. Omit it when wiring real
75
+ * prompt hashes end-to-end is not available — `prefix_stability` then defaults
76
+ * to `{ stable: true, diverging_packet_ids: [] }` (no signal, not a false
77
+ * failure).
78
+ */
79
+ export declare function scoreTokens(runId: string, entries: TokenUsageEntry[], prefixHashes?: Record<string, string>): TokenScorecard;
80
+ /**
81
+ * The structural, provider-independent prefix-stability boundary: hash of the
82
+ * FIXED prefix of a packet's rendered prompt — everything BEFORE the volatile
83
+ * `## Packet` section (the same boundary
84
+ * `tests/audit/dispatch-helpers.test.mjs` pins for prompt-caching:
85
+ * `prompt.slice(0, prompt.indexOf("## Packet"))`). Two packets in the same run
86
+ * whose fixed prefix hashes to the SAME value are byte-identical up to that
87
+ * point — the structural precondition for a provider's prefix cache to hit,
88
+ * independent of whether the provider actually reports a cache-hit ratio.
89
+ *
90
+ * A prompt with no `## Packet` marker hashes its entirety (defensive — never
91
+ * throws on an unexpected prompt shape).
92
+ */
93
+ export declare function packetPromptPrefixHash(prompt: string): string;
94
+ /**
95
+ * The SOLE gate predicate: did the overall cache-hit ratio REGRESS (drop)
96
+ * against a baseline? Mirrors score-audit's `hallucinationRegressed` mechanism
97
+ * exactly, direction-flipped (higher cache-hit ratio is BETTER, so a regression
98
+ * is a DECREASE, not an increase).
99
+ *
100
+ * - With no baseline, nothing has regressed.
101
+ * - A `null` current ratio (no measured cache-eligible steps this run) cannot
102
+ * regress.
103
+ * - A `null` baseline ratio is treated as 0 (the floor a ratio can't drop
104
+ * below), so a null baseline never triggers a regression.
105
+ *
106
+ * Token totals are tracked (`totals`) but never gate — track-don't-gate, same
107
+ * policy as score-audit's precision/recall.
108
+ */
109
+ export declare function cacheHitRatioRegressed(current: TokenScorecard, baseline: TokenScorecard | null | undefined, epsilon?: number): boolean;
110
+ /** A compact, deterministic human summary of a {@link TokenScorecard}. */
111
+ export declare function renderTokenScorecardMarkdown(scorecard: TokenScorecard): string;
112
+ //# sourceMappingURL=scoreTokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoreTokens.d.ts","sourceRoot":"","sources":["../../../src/audit/reporting/scoreTokens.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,sFAAsF;AACtF,MAAM,WAAW,eAAe;IAC9B,2EAA2E;IAC3E,MAAM,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,2BAA2B,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,8EAA8E;QAC9E,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC,CAAC;IACH,MAAM,EAAE;QACN,sDAAsD;QACtD,YAAY,EAAE,MAAM,CAAC;QACrB,uDAAuD;QACvD,aAAa,EAAE,MAAM,CAAC;QACtB,oDAAoD;QACpD,cAAc,EAAE,MAAM,CAAC;QACvB,iFAAiF;QACjF,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,kFAAkF;IAClF,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,gFAAgF;IAChF,gBAAgB,EAAE,eAAe,CAAC;IAClC,2FAA2F;IAC3F,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,YAAY,CAAC,CAAC;CAC9D;AAgBD;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,EAAE,EAC1B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,cAAc,CA2EhB;AAuBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAI7D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,EAC3C,OAAO,SAAO,GACb,OAAO,CAMT;AAED,0EAA0E;AAC1E,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,cAAc,GAAG,MAAM,CAwB9E"}