/** * Gate a plan on authoritative lockfile health. * * A missing lockfile is an absent accepted-resolution set: the already-resolved * lifecycle plan may establish needed rows atomically. An invalid lockfile is * authoritative but unreadable, so execution blocks without reconstructing it * from canonical content, manifests, or observation. * * @experimental This API is unstable and may change without notice. */ import * as Effect from "effect/Effect"; import { type AppError } from "../app-error/index.js"; import type { Plan } from "../plan/plan.js"; /** Lockfile health state used for reconciliation decisions. */ export type LockfileState = "ok" | "missing" | "invalid"; export type DegradedLockfileState = Exclude; export interface AugmentedPlanResult { readonly plan: Plan; readonly reconciliationTriggered: boolean; readonly reason?: DegradedLockfileState; } /** * Return the plan unchanged when authority is readable or absent. Replace it * with one explicit blocker when the authoritative file is unreadable. */ export declare const augmentPlanWithReconciliation: (plan: Plan, getLockfileState: () => Effect.Effect) => Effect.Effect, AppError>; //# sourceMappingURL=augment-plan.d.ts.map