import type { CoherenceIssue } from '../coherence/check.js'; import type { DraftGateContext, DraftGateImpl } from './draft-types.js'; import type { IoPort } from './types.js'; /** * Coherence gate (Phase 23.2). Extracted from draft.ts (Phase 39.7). * `coherence-check` is an ALWAYS_FIRE gate but is never membership-consulted — * coherence runs UNCONDITIONALLY (bit-identical; deliberately NOT wired to its * gate-set membership, unlike 39.2's two gates). The result is read from * `ctx.coherence()` (memoized) so the approve blocker-refuse and the later * warn-emit share one computation. */ /** Approve-time blocker step: refuse (router → `exitCode = 2`) on any block. */ export declare const runCoherenceGate: DraftGateImpl; /** * Emit `coherence-warn` anomalies for warn-severity issues, gated on * `anomaly-notify` membership. `source` distinguishes the call site * (`'coherence.check'` for `draft check`, `'coherence.approve'` for approve). */ export declare function emitCoherenceWarns(ctx: DraftGateContext, source: 'coherence.check' | 'coherence.approve'): Promise; /** * `draft check` presentation: print every issue — `[BLOCK] code: msg` for * blocks, `[WARN] [WARN] code: msg` for warns (the existing double-`[WARN]` is * preserved, bit-identical). Returns whether any block-severity issue was seen. */ export declare function printAllCoherenceIssues(issues: CoherenceIssue[], io: IoPort): boolean; //# sourceMappingURL=coherence.d.ts.map