/** * Phase-cut sidecar artifact (remediator auto-phasing, T3). * * The foundations→consumers phase cut derived by {@link derivePhaseCut} is a * DERIVED, deterministic artifact (a pure function of the finalized module * contracts' module-dependency DAG — producer/consumer `artifact:` tokens * in `inputs`/`outputs`, unioned with any `neighbor_needs`). It is persisted as a * first-class sidecar — * `intake/contract/phase_cut.json` — so the cut the conceptual critique sees and * the cut the implementation-DAG promotion enforces are ONE source, inspectable * on disk, not two inline recomputations that could drift. * * It is deliberately NOT a member of `CP_ARTIFACT_NAMES`: that enum drives the * LLM-phase staleness DAG and the phase-progression completeness checks, where an * "absent" entry perturbs sequencing. The cut is re-derivable on demand from * `finalized_module_contracts`, so it carries no staleness envelope — it is simply * (re)written whenever its single upstream is available, and read by consumers. */ import { type PhaseCut } from "./phaseCut.js"; export declare const PHASE_CUT_FILE = "phase_cut.json"; export declare function phaseCutFilePath(artifactsDir: string): string; /** Read the persisted cut, or null if it has not been written yet. */ export declare function readPhaseCutArtifact(artifactsDir: string): Promise; /** * Derive the cut from the on-disk `finalized_module_contracts` and (re)write the * sidecar. Idempotent: a finalized-contracts payload that yields the same DAG * yields byte-identical JSON. Returns the derived cut, or null when there are no * in-scope modules to phase (no finalized contracts on disk yet). */ export declare function ensurePhaseCutArtifact(artifactsDir: string): Promise; //# sourceMappingURL=phaseCutArtifact.d.ts.map