import type { AssetHealthIssue } from "./asset-health.js"; /** 计算 issue 列表的稳定 hash(issue pt-cold-start-warning-noise §短期方案 1)。 * * 稳定性保证: * - 按 (severity, scope, name, field, msg) 排序后拼接 —— issues 数组顺序不固定也能稳定 * - msg 也参与 hash —— 同 code + 同 name 但 msg 不同时视为不同(设计性变化要告知用户) * - hint / fix 不参与 hash —— 它们是 hint 性变化,不弹通知 * * 返回 sha256 16-hex(前 16 字符)—— 与 sourceHash 同粒度(ref-resolver.ts:124 用同样切法)。 * 返回空字符串:issues.length === 0 —— 调用方把空 hash 也视为"无 issue"状态。 */ export declare function computeHealthHash(issues: AssetHealthIssue[]): string; /** 读 .pt/state/last-health-hash.json 里的 hash。 * 文件不存在 / parse 失败 / IO 失败 → 返 null(视为"首次启动")。 */ export declare function readPersistedHealthHash(cwd: string): Promise; /** 写 hash 到 .pt/state/last-health-hash.json。 * IO 失败一律 swallow(log warn 通过 adapterCtx.log 可选传入;本函数可裸调)。 * - 写时用 { flag: "wx" } 防止覆盖竞态——冲突时 swallow(另一 session 抢先写了 OK)。 * - mkdir recursive — 目录不存在时建。 */ export declare function writePersistedHealthHash(cwd: string, hash: string, issueCount: number, logger?: { warn(msg: string, details?: Record): void; }): Promise;