docs(adr): ADR-026 cross-references findAc3Candidates() predicate (#361)
Names the JavaScript function next to the AC3 SQL probe so a future reader of ADR-026 has a concrete code anchor for the testable predicate (Markus cycle-3 cosmetic). The SQL remains the source-of-truth probe against live data; the function is the capture-time + fixture-time signal. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -107,6 +107,16 @@ threshold, so `packBlocks.ts` is **not** yet warranted.
|
|||||||
AND parent.generation IS NOT NULL
|
AND parent.generation IS NOT NULL
|
||||||
);
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
The same predicate is encoded as a unit-testable JavaScript function — see
|
||||||
|
`findAc3Candidates()` in
|
||||||
|
`frontend/src/lib/person/genealogy/__fixtures__/findAc3Candidates.mjs`,
|
||||||
|
asserted against the committed canonical fixture by
|
||||||
|
`validateFixture.test.ts`, and emitted as a stderr soft-warn by
|
||||||
|
`frontend/scripts/capture-network-fixture.mjs` on every recapture. The SQL
|
||||||
|
is the source-of-truth probe against live data; the function is the
|
||||||
|
capture-time and fixture-time signal that the predicate's count crossed
|
||||||
|
zero.
|
||||||
- **AC6 — Bundle-impact gate (≤ 40 kB gzipped on `/stammbaum`).** Moot under
|
- **AC6 — Bundle-impact gate (≤ 40 kB gzipped on `/stammbaum`).** Moot under
|
||||||
this ADR; reactivates only under ADR-027 (dagre adoption).
|
this ADR; reactivates only under ADR-027 (dagre adoption).
|
||||||
- **AC7 — Visual regression at 320 / 768 / 1440.** `toHaveScreenshot()`
|
- **AC7 — Visual regression at 320 / 768 / 1440.** `toHaveScreenshot()`
|
||||||
|
|||||||
Reference in New Issue
Block a user