docs: ADR-0048 Phase 1 accepted/implemented + handoff 65

- ADR-0048 status -> Accepted; Phase 1 implemented (commits
  202e25a..fbd219b), with the pre-build and post-implementation /runda
  passes and the 2358-test green state recorded; index entry updated.
- requirements.md: SD1 [x] (whole-row seed + FK/junction, both modes,
  --seed reproducibility with no exceptions), SD2 [/] (core generators /
  determinism done; the set override clause + column-fill are Phase 2),
  A1 14/15 (only hint/H2 remains unregistered).
- Handoff 65: the full seed Phase-1 build, the two /runda passes, where
  the code lives, and Phase-2 / next steps.
This commit is contained in:
claude@clouddev1
2026-06-11 21:49:06 +00:00
parent fbd219b631
commit 78c38e8b33
4 changed files with 208 additions and 33 deletions
+32 -18
View File
@@ -246,13 +246,12 @@ since ADR-0027.)
available in both modes: `save`, `save as`, `load`, `new`,
`rebuild`, `export`, `import`, `seed`, `replay`, `undo`,
`redo`, `mode`, `help`, `hint`, `quit`.
*(Partial, verified 2026-06-07: 13 of 15 implemented and
available in both modes — `quit`/`q`, `mode simple|advanced`,
`help`, `save`, `save as`, `load`, `new`, `rebuild`, `export`,
`import`, `replay`, `undo`, `redo` (REGISTRY in
`grammar/app.rs:249-333`). **Missing: `seed`** (tracked as SD1)
**and `hint`** (tracked as H2) — neither is registered. A1
closes when SD1 + H2 land.)*
*(Partial: **14 of 15** implemented and available in both modes —
`quit`/`q`, `mode simple|advanced`, `help`, `save`, `save as`,
`load`, `new`, `rebuild`, `export`, `import`, `replay`, `undo`,
`redo`, and now **`seed`** (ADR-0048 / SD1, done 2026-06-11).
**Only `hint`** (tracked as H2) remains unregistered. A1 closes
when H2 lands.)*
## DSL data commands
@@ -665,20 +664,35 @@ since ADR-0027.)
## Sample data / seeding
- [ ] **SD1** `seed <table> [count]` generates plausible fake
- [x] **SD1** `seed <table> [count]` generates plausible fake
data; junction tables are seeded with valid foreign-key
references drawn from existing parent rows.
*(Taken up 2026-06-11 — specified by **ADR-0048**; phased
test-first implementation in progress.)*
- [ ] **SD2** Detailed seeding rules (per-type generators,
*(Done 2026-06-11 via **ADR-0048** (commits `202e25a`→`fbd219b`).
Whole-row `seed <table> [count] [--seed <n>]` with realistic
name-aware generation (`fake` crate + a type-gated heuristic
catalogue, table-context name disambiguation, hand-rolled
`product` generator, bounded dates), identifier + constraint
uniqueness, **junction tables seeded with valid FK references
drawn from existing parent rows** (distinct combinations, capped;
empty-parent friendly error), `IN`-CHECK derivation, a
required-column block guard, undo as one step, replay as a data
write, a capped auto-show + enum/CHECK advisory, and an O(N)
single-transaction path. 25 integration + ~40 unit tests; two
`/runda` passes. The `set` override clause and `<table>.<column>`
column-fill are SD2 Phase-2, deferred.)*
- [/] **SD2** Detailed seeding rules (per-type generators,
locale, determinism, override hooks).
*(Taken up 2026-06-11 — `[~]`→`[ ]`. **ADR-0048** settles the
design: type-gated name-aware generators with a `fake`-backed
catalogue + table-context disambiguation, `--seed` determinism,
English-only locale (X2), and a `set` override clause (the
"override hooks" core). Deferred to future SD2 increments:
user-defined custom generators, NULL injection, multi-locale,
recursive parent auto-seed.)*
*(Core done 2026-06-11 via **ADR-0048**: type-gated name-aware
per-type generators with a `fake`-backed catalogue +
table-context disambiguation, **`--seed` determinism**
(serial/FK/shortid all reproducible — D4 holds with no
exceptions), English-only locale (X2). **Still open (Phase 2):**
the `set` override clause — value / pick-from-list / explicit
generator / range (the "override hooks" core, designed in
ADR-0048 D2 but not yet built) and the `<table>.<column>`
column-fill form. Deferred SD2 increments: user-defined custom
generators, NULL injection, multi-locale, recursive parent
auto-seed.)*
## Query analysis