/** * Coverage matrix builder: resolves references against the cross-instance * registry (uniqueness rule, D5) and unions scan ∪ block coverage per AC. * * Bare `AC-n` counts only when exactly one AC-bearing instance defines id n * (AC-24); qualified `/AC-n` always resolves to that instance * (AC-25). Retired ACs never require coverage; references to them warn * (AC-14). Only `uncoveredActive` fails gates — warnings are data (DD6). * * Requirements: traceability-ids/AC-9..AC-15, AC-24, AC-25 */ import type { AcCoverageEntry, AcReference, ParsedRequirements } from './types.js'; import type { CoverageBlockEntry } from './coverage-block.js'; export interface MatrixInput { /** Target instance name. */ instance: string; /** Target instance's parsed requirements. */ parsed: ParsedRequirements; /** All instances' parsed requirements (registry, keyed by instance). */ registry: Map; /** Scanned references from test files. */ refs: AcReference[]; /** Entries from the target instance's ac-coverage block. */ blockEntries: CoverageBlockEntry[]; /** Posix-relative path of the target instance's testing.md. */ testingPath: string; } export interface MatrixOutput { entries: AcCoverageEntry[]; warnings: string[]; uncoveredActive: number[]; } /** Build the coverage matrix for one instance. */ export declare function buildMatrix(input: MatrixInput): MatrixOutput; //# sourceMappingURL=matrix.d.ts.map