import type { GoalState } from "../domain/types.js"; import { type GoalSequenceIntegrityKind } from "./sequence-store.js"; import { type GoalStoreIntegrityKind } from "./store.js"; export type GoalStorageDiagnosticKind = GoalStoreIntegrityKind | GoalSequenceIntegrityKind | "lock_held" | "lock_corrupt"; export interface GoalStorageDiagnosticIssue { scope: "live" | "archive" | "queue" | "lease"; kind: GoalStorageDiagnosticKind; file: string; detail: string; } export interface GoalStorageDiagnosticReport { sessionID: string; live: { state: "missing"; } | { state: "valid"; goal: GoalState; } | { state: "invalid"; issue: GoalStorageDiagnosticIssue; }; archives: { state: "valid"; count: number; } | { state: "invalid"; issue: GoalStorageDiagnosticIssue; }; queue: { state: "missing"; } | { state: "valid"; count: number; generation: number; } | { state: "invalid"; issue: GoalStorageDiagnosticIssue; }; lease: { state: "free"; } | { state: "held"; pid: number; acquiredAt: number; issue: GoalStorageDiagnosticIssue; } | { state: "invalid"; issue: GoalStorageDiagnosticIssue; }; issues: GoalStorageDiagnosticIssue[]; } export declare function diagnoseGoalStorage(directory: string, sessionID: string): Promise; export declare function scanRecoverableGoalStates(directory: string): Promise; //# sourceMappingURL=diagnostics.d.ts.map