/** * F0.6: "congelar el número" — the Codex audit found the anomaly count drift (1,058 vs * 1,057) between runs because the transcripts a census reads from can change underneath it. * The same class of silent drift applies to the anomaly inventory itself: AN-01..AN-25 in * `docs/plan/PLAN_ROBUSTO_LEMMA_20260916.md` is the one list every later phase in that plan * treats as authoritative ("cada AN debe cerrarse o quedar en cuarentena explícita"), so an * edit to it should be a deliberate, hashed, dated act — not something that silently reflows * under a later doc pass. This module extracts that list and hashes it; the frozen snapshot * lives at docs/plan/ANOMALY_INVENTORY_FROZEN.json and `tests/unit/anomaly-inventory-frozen` * fails loudly if the doc and the snapshot disagree. */ export interface AnomalyEntry { id: string; text: string; } /** Pulls out the `## 2. Inventario de anomalías` section verbatim, header to next `## 3.`. */ export declare function extractInventorySection(planText: string): string; /** Parses each `- [ ] **AN-XX — ...** ...` line into its id and full text. */ export declare function parseAnomalyEntries(sectionText: string): AnomalyEntry[]; /** sha256 of the exact section text — any edit, even whitespace, changes this. */ export declare function hashInventorySection(sectionText: string): string; export interface FrozenInventory { frozenAt: string; sourceHash: string; count: number; anomalies: AnomalyEntry[]; } export declare function buildFrozenInventory(planText: string, frozenAt: string): FrozenInventory; //# sourceMappingURL=AnomalyInventory.d.ts.map