Local-only developer utility that authenticates against the running backend, captures the current /api/network snapshot, and writes it to src/lib/person/genealogy/__fixtures__/stammbaum.json. Sanity gates exit non-zero on a vacuous capture (< 50 nodes, < 5 generations, 0 SPOUSE_OF edges). Fixture and script land together so the fixture is reproducible from the script that generated it. Captured snapshot: 62 nodes, 43 edges, 28 SPOUSE_OF (0 with fromYear), generations G0-G4. Albert de Gruyter is the canonical multi-spouse case with 4 marriages. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
23 lines
1.4 KiB
Markdown
23 lines
1.4 KiB
Markdown
# `frontend/scripts/`
|
|
|
|
One-off developer utilities. Each script is local-only and never invoked from
|
|
CI. Re-run intentionally when needed; commit any generated artefacts as a
|
|
separate, atomic commit.
|
|
|
|
| Script | Purpose |
|
|
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
| `capture-network-fixture.mjs` | Capture the canonical `GET /api/network` response into `src/lib/person/genealogy/__fixtures__/stammbaum.json`. Used by `buildLayout.test.ts`. Re-capture when the production family graph grows a new structural case (new edge type, new marriage configuration). |
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
cd frontend
|
|
node scripts/capture-network-fixture.mjs
|
|
```
|
|
|
|
Defaults to `BACKEND_URL=http://localhost:8080` and the dev admin credentials.
|
|
Override via env vars (`BACKEND_URL`, `CAPTURE_EMAIL`, `CAPTURE_PASSWORD`).
|
|
|
|
The script exits non-zero if the captured fixture would be vacuous (fewer than
|
|
100 nodes, fewer than 5 generations, or zero `SPOUSE_OF` edges).
|