@geotechcli/core 0.4.37 → 0.4.39

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.
@@ -0,0 +1,47 @@
1
+ import type { LLMConfig } from '../llm/types.js';
2
+ import type { DocumentTextHintSource } from '../vision/ocr.js';
3
+ export declare const PAGE_EVIDENCE_CACHE_SCHEMA_VERSION = 1;
4
+ export declare const PAGE_EVIDENCE_PREPROCESSING_VERSION = "page-evidence-preprocess-v1";
5
+ export interface PageEvidenceCacheKeyParts {
6
+ fileHash: string;
7
+ pageHash: string;
8
+ pageNumber: number;
9
+ modelVersion: string;
10
+ preprocessingVersion: string;
11
+ schemaVersion?: number;
12
+ }
13
+ export interface PageEvidenceCacheEntry {
14
+ textHint?: string;
15
+ source: DocumentTextHintSource;
16
+ warnings: string[];
17
+ transformed: boolean;
18
+ layoutSummary?: string;
19
+ extractionResult?: unknown;
20
+ createdAt: string;
21
+ }
22
+ export interface WritePageEvidenceCacheInput {
23
+ textHint?: string | null;
24
+ source: DocumentTextHintSource;
25
+ warnings?: string[];
26
+ transformed: boolean;
27
+ layoutSummary?: string | null;
28
+ extractionResult?: unknown;
29
+ createdAt?: string | Date;
30
+ }
31
+ export interface WritePageEvidenceCacheOptions {
32
+ now?: () => Date;
33
+ }
34
+ type ModelVersionConfig = Pick<LLMConfig, 'provider' | 'baseUrl' | 'modelId' | 'visionModelId'>;
35
+ type PreprocessingVersionConfig = Pick<LLMConfig, 'provider' | 'baseUrl'>;
36
+ export declare function hashBuffer(buffer: Buffer | Uint8Array): string;
37
+ export declare function hashString(value: string): string;
38
+ export declare function buildPageEvidenceModelVersion(config: ModelVersionConfig): string;
39
+ export declare function buildPageEvidencePreprocessingVersion(config: PreprocessingVersionConfig, pipelineVersion?: string): string;
40
+ export declare function buildPageEvidenceCacheKey(parts: PageEvidenceCacheKeyParts): string;
41
+ export declare function getPageEvidenceCacheDir(): string;
42
+ export declare function getPageEvidenceCachePath(parts: PageEvidenceCacheKeyParts): string;
43
+ export declare function readPageEvidenceCache(parts: PageEvidenceCacheKeyParts): PageEvidenceCacheEntry | null;
44
+ export declare function writePageEvidenceCache(parts: PageEvidenceCacheKeyParts, evidence: WritePageEvidenceCacheInput, options?: WritePageEvidenceCacheOptions): PageEvidenceCacheEntry;
45
+ export declare function clearPageEvidenceCache(parts?: PageEvidenceCacheKeyParts): void;
46
+ export {};
47
+ //# sourceMappingURL=page-evidence-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-evidence-cache.d.ts","sourceRoot":"","sources":["../../src/ingest/page-evidence-cache.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,eAAO,MAAM,kCAAkC,IAAI,CAAC;AACpD,eAAO,MAAM,mCAAmC,gCAAgC,CAAC;AAIjF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,6BAA6B;IAC5C,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,KAAK,kBAAkB,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,eAAe,CAAC,CAAC;AAChG,KAAK,0BAA0B,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;AAE1E,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAE9D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAOhF;AAED,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,0BAA0B,EAClC,eAAe,SAAsC,GACpD,MAAM,CAMR;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,yBAAyB,GAAG,MAAM,CAUlF;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,yBAAyB,GAAG,MAAM,CAEjF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,yBAAyB,GAAG,sBAAsB,GAAG,IAAI,CAYrG;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,yBAAyB,EAChC,QAAQ,EAAE,2BAA2B,EACrC,OAAO,GAAE,6BAAkC,GAC1C,sBAAsB,CAKxB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAO9E"}
@@ -0,0 +1,205 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from 'node:fs';
3
+ import { homedir } from 'node:os';
4
+ import { dirname, join } from 'node:path';
5
+ export const PAGE_EVIDENCE_CACHE_SCHEMA_VERSION = 1;
6
+ export const PAGE_EVIDENCE_PREPROCESSING_VERSION = 'page-evidence-preprocess-v1';
7
+ const CACHE_DIR_NAME = 'page-evidence-cache';
8
+ export function hashBuffer(buffer) {
9
+ return createHash('sha256').update(buffer).digest('hex');
10
+ }
11
+ export function hashString(value) {
12
+ return createHash('sha256').update(value, 'utf-8').digest('hex');
13
+ }
14
+ export function buildPageEvidenceModelVersion(config) {
15
+ return `llm-${hashString(canonicalJson({
16
+ provider: config.provider,
17
+ baseUrl: normalizeOptionalString(config.baseUrl),
18
+ modelId: normalizeOptionalString(config.modelId),
19
+ visionModelId: normalizeOptionalString(config.visionModelId),
20
+ })).slice(0, 24)}`;
21
+ }
22
+ export function buildPageEvidencePreprocessingVersion(config, pipelineVersion = PAGE_EVIDENCE_PREPROCESSING_VERSION) {
23
+ return `preprocess-${hashString(canonicalJson({
24
+ pipelineVersion,
25
+ provider: config.provider,
26
+ baseUrl: normalizeOptionalString(config.baseUrl),
27
+ })).slice(0, 24)}`;
28
+ }
29
+ export function buildPageEvidenceCacheKey(parts) {
30
+ const schemaVersion = parts.schemaVersion ?? PAGE_EVIDENCE_CACHE_SCHEMA_VERSION;
31
+ return hashString(canonicalJson({
32
+ fileHash: requireNonEmptyString(parts.fileHash, 'fileHash'),
33
+ pageHash: requireNonEmptyString(parts.pageHash, 'pageHash'),
34
+ pageNumber: requirePositiveInteger(parts.pageNumber, 'pageNumber'),
35
+ modelVersion: requireNonEmptyString(parts.modelVersion, 'modelVersion'),
36
+ preprocessingVersion: requireNonEmptyString(parts.preprocessingVersion, 'preprocessingVersion'),
37
+ schemaVersion: requirePositiveInteger(schemaVersion, 'schemaVersion'),
38
+ }));
39
+ }
40
+ export function getPageEvidenceCacheDir() {
41
+ return join(getConfigRoot(), CACHE_DIR_NAME);
42
+ }
43
+ export function getPageEvidenceCachePath(parts) {
44
+ return join(getPageEvidenceCacheDir(), `${buildPageEvidenceCacheKey(parts)}.json`);
45
+ }
46
+ export function readPageEvidenceCache(parts) {
47
+ const cachePath = getPageEvidenceCachePath(parts);
48
+ if (!existsSync(cachePath)) {
49
+ return null;
50
+ }
51
+ try {
52
+ const parsed = JSON.parse(readFileSync(cachePath, 'utf-8'));
53
+ return parsePageEvidenceCacheEntry(parsed);
54
+ }
55
+ catch {
56
+ return null;
57
+ }
58
+ }
59
+ export function writePageEvidenceCache(parts, evidence, options = {}) {
60
+ const entry = buildCompactEntry(evidence, options.now);
61
+ const cachePath = getPageEvidenceCachePath(parts);
62
+ atomicWriteJson(cachePath, entry);
63
+ return entry;
64
+ }
65
+ export function clearPageEvidenceCache(parts) {
66
+ if (parts) {
67
+ rmSync(getPageEvidenceCachePath(parts), { force: true });
68
+ return;
69
+ }
70
+ rmSync(getPageEvidenceCacheDir(), { recursive: true, force: true });
71
+ }
72
+ function getConfigRoot() {
73
+ return process.env.GEOTECHCLI_CONFIG_DIR ?? join(homedir(), '.geotechcli');
74
+ }
75
+ function ensureParentDir(filePath) {
76
+ const dir = dirname(filePath);
77
+ if (!existsSync(dir)) {
78
+ mkdirSync(dir, { recursive: true });
79
+ }
80
+ }
81
+ function atomicWriteJson(filePath, value) {
82
+ ensureParentDir(filePath);
83
+ const tempPath = `${filePath}.tmp`;
84
+ const serialized = JSON.stringify(value);
85
+ writeFileSync(tempPath, serialized, 'utf-8');
86
+ try {
87
+ renameSync(tempPath, filePath);
88
+ }
89
+ catch (error) {
90
+ const code = error?.code;
91
+ if (code !== 'EPERM' && code !== 'EBUSY' && code !== 'EACCES') {
92
+ throw error;
93
+ }
94
+ writeFileSync(filePath, serialized, 'utf-8');
95
+ rmSync(tempPath, { force: true });
96
+ }
97
+ }
98
+ function buildCompactEntry(evidence, now) {
99
+ const entry = {
100
+ source: evidence.source,
101
+ warnings: normalizeWarnings(evidence.warnings ?? []),
102
+ transformed: evidence.transformed,
103
+ createdAt: normalizeCreatedAt(evidence.createdAt, now),
104
+ };
105
+ const textHint = normalizeOptionalString(evidence.textHint);
106
+ if (textHint) {
107
+ entry.textHint = textHint;
108
+ }
109
+ const layoutSummary = normalizeOptionalString(evidence.layoutSummary);
110
+ if (layoutSummary) {
111
+ entry.layoutSummary = layoutSummary;
112
+ }
113
+ if (evidence.extractionResult !== undefined) {
114
+ entry.extractionResult = evidence.extractionResult;
115
+ }
116
+ return entry;
117
+ }
118
+ function parsePageEvidenceCacheEntry(value) {
119
+ if (!isRecord(value)) {
120
+ return null;
121
+ }
122
+ const source = typeof value.source === 'string'
123
+ ? value.source
124
+ : null;
125
+ const warnings = Array.isArray(value.warnings)
126
+ ? normalizeWarnings(value.warnings)
127
+ : null;
128
+ const transformed = typeof value.transformed === 'boolean'
129
+ ? value.transformed
130
+ : null;
131
+ const createdAt = typeof value.createdAt === 'string' && value.createdAt.trim()
132
+ ? value.createdAt
133
+ : null;
134
+ if (!source || !warnings || transformed === null || !createdAt) {
135
+ return null;
136
+ }
137
+ const entry = {
138
+ source,
139
+ warnings,
140
+ transformed,
141
+ createdAt,
142
+ };
143
+ const textHint = normalizeOptionalString(value.textHint);
144
+ if (textHint) {
145
+ entry.textHint = textHint;
146
+ }
147
+ const layoutSummary = normalizeOptionalString(value.layoutSummary);
148
+ if (layoutSummary) {
149
+ entry.layoutSummary = layoutSummary;
150
+ }
151
+ if (value.extractionResult !== undefined) {
152
+ entry.extractionResult = value.extractionResult;
153
+ }
154
+ return entry;
155
+ }
156
+ function normalizeCreatedAt(value, now) {
157
+ if (value instanceof Date) {
158
+ return value.toISOString();
159
+ }
160
+ if (typeof value === 'string' && value.trim()) {
161
+ return value.trim();
162
+ }
163
+ return (now ?? (() => new Date()))().toISOString();
164
+ }
165
+ function normalizeWarnings(values) {
166
+ return [...new Set(values.flatMap((value) => {
167
+ if (typeof value !== 'string') {
168
+ return [];
169
+ }
170
+ const normalized = value.trim();
171
+ return normalized ? [normalized] : [];
172
+ }))];
173
+ }
174
+ function normalizeOptionalString(value) {
175
+ return typeof value === 'string' ? value.trim() : '';
176
+ }
177
+ function requireNonEmptyString(value, name) {
178
+ const normalized = normalizeOptionalString(value);
179
+ if (!normalized) {
180
+ throw new Error(`Page evidence cache ${name} must be a non-empty string.`);
181
+ }
182
+ return normalized;
183
+ }
184
+ function requirePositiveInteger(value, name) {
185
+ if (!Number.isInteger(value) || value < 1) {
186
+ throw new Error(`Page evidence cache ${name} must be a positive integer.`);
187
+ }
188
+ return value;
189
+ }
190
+ function isRecord(value) {
191
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
192
+ }
193
+ function canonicalJson(value) {
194
+ if (Array.isArray(value)) {
195
+ return `[${value.map((item) => canonicalJson(item)).join(',')}]`;
196
+ }
197
+ if (isRecord(value)) {
198
+ const entries = Object.keys(value)
199
+ .sort()
200
+ .map((key) => `${JSON.stringify(key)}:${canonicalJson(value[key])}`);
201
+ return `{${entries.join(',')}}`;
202
+ }
203
+ return JSON.stringify(value);
204
+ }
205
+ //# sourceMappingURL=page-evidence-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-evidence-cache.js","sourceRoot":"","sources":["../../src/ingest/page-evidence-cache.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.4.37",
2
+ "version": "0.4.39",
3
3
  "defaults": {
4
4
  "provider": "hosted-beta",
5
5
  "model": "glm-5.1",
@@ -1 +1 @@
1
- {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/report/html.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EAKd,MAAM,qBAAqB,CAAC;AA+W7B,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CA+pBxE"}
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/report/html.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EAKd,MAAM,qBAAqB,CAAC;AAsX7B,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CA+pBxE"}
@@ -268,7 +268,14 @@ function renderSourceEvidence(dossier) {
268
268
  <span>${escapeHtml(card.parseStatus)} | ${escapeHtml(`${card.confidence}%`)}</span>
269
269
  </div>
270
270
  <h3>${escapeHtml(card.title)}</h3>
271
- <p>${escapeHtml(sourceModeLabel(card.sourceHint))}</p>
271
+ <p>${escapeHtml([
272
+ sourceModeLabel(card.sourceHint),
273
+ card.cacheStatus === 'hit'
274
+ ? 'Evidence cache reused'
275
+ : card.cacheStatus === 'stored'
276
+ ? 'Evidence cached for reruns'
277
+ : null,
278
+ ].filter(Boolean).join(' | '))}</p>
272
279
  ${card.highlights.length > 0 ? `<ul>${card.highlights.map((item) => `<li>${escapeHtml(item)}</li>`).join('')}</ul>` : '<p>No strong structured highlight was retained for this page.</p>'}
273
280
  ${card.warnings.length > 0 ? `<small>Human verification recommended: ${escapeHtml(String(card.warnings.length))} retained warning(s).</small>` : ''}
274
281
  </article>
@@ -1 +1 @@
1
- {"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/report/html.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/report/html.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,8 @@ export interface IngestDossierPageCard {
33
33
  confidence: number;
34
34
  tone: IngestDossierTone;
35
35
  sourceHint?: string;
36
+ cacheStatus?: string;
37
+ cacheEntryId?: string;
36
38
  sectionType?: string;
37
39
  scope?: string;
38
40
  stageBadges?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"ingest-dossier.d.ts","sourceRoot":"","sources":["../../src/report/ingest-dossier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest-dossier.d.ts","sourceRoot":"","sources":["../../src/report/ingest-dossier.ts"],"names":[],"mappings":"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"}
@@ -307,6 +307,29 @@ function toneFromParseStatus(parseStatus, confidence) {
307
307
  }
308
308
  return 'good';
309
309
  }
310
+ function evidenceCacheStatusLabel(status) {
311
+ switch (status) {
312
+ case 'hit':
313
+ return 'cache hit';
314
+ case 'stored':
315
+ return 'cache stored';
316
+ case 'miss':
317
+ return 'cache miss';
318
+ case 'skipped':
319
+ return 'cache skipped';
320
+ default:
321
+ return 'cache unavailable';
322
+ }
323
+ }
324
+ function evidenceCacheTableCell(audit) {
325
+ if (!audit.evidenceCache) {
326
+ return '-';
327
+ }
328
+ const label = evidenceCacheStatusLabel(audit.evidenceCache.status);
329
+ return audit.evidenceCache.entryId
330
+ ? `${label} (${audit.evidenceCache.entryId})`
331
+ : label;
332
+ }
310
333
  function formatFindingMessage(finding) {
311
334
  const context = [];
312
335
  if (finding.pageNumber != null && !finding.message.startsWith(`Page ${finding.pageNumber}`)) {
@@ -365,14 +388,15 @@ function buildGeotechTables(result) {
365
388
  if (result.pageAudits.length > 0) {
366
389
  auditTables.push({
367
390
  title: 'Page audit matrix',
368
- description: 'Per-page extraction status, source path, retained signal counts, and warning volume.',
369
- columns: ['Page', 'Class', 'Status', 'Confidence', 'Source', 'Signals', 'Warnings'],
391
+ description: 'Per-page extraction status, source path, cache reuse, retained signal counts, and warning volume.',
392
+ columns: ['Page', 'Class', 'Status', 'Confidence', 'Source', 'Cache', 'Signals', 'Warnings'],
370
393
  rows: result.pageAudits.map((audit) => [
371
394
  String(audit.pageNumber),
372
395
  audit.classification ?? 'unknown',
373
396
  audit.parseStatus,
374
397
  `${audit.confidence}%`,
375
398
  audit.textHintSource,
399
+ evidenceCacheTableCell(audit),
376
400
  [
377
401
  audit.materialCount > 0 ? `${audit.materialCount} material` : null,
378
402
  audit.classificationCount > 0 ? `${audit.classificationCount} class` : null,
@@ -473,6 +497,7 @@ function buildGeotechPageCards(result) {
473
497
  audit.textHintSource === 'glm-ocr' ? 'GLM-OCR' : undefined,
474
498
  audit.textHintSource === 'vision-ocr' ? 'GLM vision OCR' : undefined,
475
499
  audit.textHintSource === 'vision-visual' ? 'GLM-5V visual' : undefined,
500
+ audit.evidenceCache ? evidenceCacheStatusLabel(audit.evidenceCache.status) : undefined,
476
501
  result.synthesis?.sourcePages.includes(audit.pageNumber) ? 'GLM-5.1 synthesis' : undefined,
477
502
  ]);
478
503
  const highlights = uniqueStrings([
@@ -489,6 +514,8 @@ function buildGeotechPageCards(result) {
489
514
  confidence: audit.confidence,
490
515
  tone: toneFromParseStatus(audit.parseStatus, audit.confidence),
491
516
  sourceHint: audit.textHintSource,
517
+ cacheStatus: audit.evidenceCache?.status,
518
+ cacheEntryId: audit.evidenceCache?.entryId,
492
519
  sectionType: chunk?.sectionType,
493
520
  scope: chunk?.scope,
494
521
  stageBadges,
@@ -582,6 +609,8 @@ function buildBoreholeSections(result) {
582
609
  }
583
610
  function buildGeotechMetrics(result) {
584
611
  const statusCounts = countGeotechPageStatuses(result);
612
+ const cacheHits = result.pageAudits.filter((audit) => audit.evidenceCache?.status === 'hit').length;
613
+ const cacheStored = result.pageAudits.filter((audit) => audit.evidenceCache?.status === 'stored').length;
585
614
  return [
586
615
  { label: 'Pages processed', value: `${result.source.successfulPages}/${result.source.totalPages}`, tone: result.source.failedPages > 0 ? 'warning' : 'good' },
587
616
  { label: 'Confidence', value: `${result.confidence}%`, tone: toneFromParseStatus(result.parseStatus ?? 'parsed', result.confidence) },
@@ -589,6 +618,7 @@ function buildGeotechMetrics(result) {
589
618
  { label: 'Materials', value: String(result.materials.length), detail: `${result.classifications.length} classifications`, tone: result.materials.length > 0 ? 'good' : 'warning' },
590
619
  { label: 'Parameters', value: String(result.parameters.length), detail: result.documentClass ?? 'No document class', tone: result.parameters.length > 0 ? 'good' : 'warning' },
591
620
  { label: 'OCR hints', value: String(result.inspectionSummary?.ocrRecoveredPageCount ?? 0), detail: `${result.inspectionSummary?.imageHeavyPageCount ?? 0} image-heavy pages`, tone: (result.inspectionSummary?.ocrRecoveredPageCount ?? 0) > 0 ? 'good' : 'neutral' },
621
+ { label: 'Evidence cache', value: String(cacheHits), detail: `${cacheStored} stored this run`, tone: cacheHits > 0 ? 'good' : cacheStored > 0 ? 'accent' : 'neutral' },
592
622
  ];
593
623
  }
594
624
  function buildBoreholeMetrics(result) {