/** * @fileoverview Graph inline-suppression application (ADR-0014). * * Binds the shared core suppression primitive to graph's explicit * `@graph-ignore-file` / `@graph-ignore-next-line` directives, applied to a * run's signals before they reach the gate baseline, the dashboard, or render. * Suppression is unconditional (a directive with no `-- reason` still * suppresses); reason quality is audited out-of-band by `graph-ignore-hygiene`. * * `graph:cycle` is one-signal-per-SCC anchored at a computed member, so a * directive above ANY member must waive it — graph's `locate()` feeds the * SCC's `memberLocations` (attached in `rules/cycle.ts`) as candidate * locations. Every other rule falls back to the signal's own anchor. */ import type { Signal } from '@opensip-tools/core'; export interface GraphSuppressionOutcome { readonly kept: readonly Signal[]; readonly suppressedCount: number; } /** * Apply `@graph-ignore` waivers to a run's signals. `projectRoot` resolves the * project-relative `code.file` paths the signals carry. * * Read-failure posture (ADR-0014 + fail-loud Phase 5): the core primitive is * fail-loud. A genuinely-removed (`ENOENT`) directive file is non-fatal but * attributed (the primitive logs `signals.suppress.directive-file-missing`); * ANY other read failure PROPAGATES. This function deliberately does NOT * catch it — the error reaches the CLI error boundary, which classifies it and * exits, rather than letting a dropped waiver leak a signal as a finding. */ export declare function applyGraphSuppressions(signals: readonly Signal[], projectRoot: string): Promise; //# sourceMappingURL=apply-suppressions.d.ts.map