import type { EvaluationReport, ManagedEvidenceRef } from '../types/index.js'; /** * 为某个变体组装一条 evidence ref;变体无真实内容(baseline / no-skill / 缺 hash)→ null。 * `verdict` 由调用方传入(CLI 已 computeVerdict,避免在此重算)。git 还原坐标从该 variant 的 * `resolvedCommit` 取(见 variantResolvedCommit),无则不记。 */ export declare function buildEvidenceRef(report: EvaluationReport, variant: string, verdict: string, recordedAt: string): ManagedEvidenceRef | null; export interface RecordedEvidence { recordId: string; name: string; variant: string; contentHash: string; /** true ⇒ evidence.contentHash 等于记录当前 contentHash → deriveManagedState 计为当前证据 → * measurable。false ⇒ 测的是旧内容(已 drift),证据留存但不绑当前版本。 */ bound: boolean; } /** * 驱动:对每个能在报告里(按 contentHash 主键 / 同名回退)匹配到被测 variant 的**已纳管**记录, * 追加一条 evidence。返回实际写入的清单(供 CLI 提示,`name` 取受管记录名而非 variant 键)。 * 无任何记录匹配 → 返回空(常见的非管理用户场景,静默无副作用)。 */ export declare function recordEvalEvidence(report: EvaluationReport, verdict: string, recordedAt: string, opts?: { dir?: string; }): RecordedEvidence[];