fix(hint): correct H2 corpus errors + add parse guard (handoff-71)
Semantic verification pass over the tier-3 `hint` corpus (ADR-0053). Four content errors corrected in src/friendly/strings/en-US.yaml: - cmd.create_table: the example `with pk id(serial), name(text), email(text)` declares a 3-column COMPOUND primary key, not a PK plus regular columns (every `with pk` column is a key member, ADR-0005). Rewritten to a single-column PK + `add column` for the rest; what/concept aligned. - cmd.save: `save as my-shop` does not parse — `save as` takes no inline name, it opens a path-entry prompt. Example -> `save as`; what no longer implies inline naming; added a temp-vs-named concept. - cmd.import: target `shop-copy` does not parse — the `as <target>` slot is a NewName ident that rejects hyphens. -> `shop_copy`. - err.foreign_key.child_side: dropped the bogus `on delete set null/cascade` remedy — that governs the parent direction; a child-side violation is fixed by inserting the parent first (matches the tier-1 hint). Adds every_cmd_hint_example_parses_in_its_mode — a catalog-driven guard that parses every hint.cmd.* example in its taught mode, backstopping syntactic drift (it caught the save and import errors). Registers the new hint.cmd.save.concept key. docs: drop two stale "deferred" entries from CLAUDE.md — project storage (export/import, --resume, input history, migration scaffold) and m:n convenience (C4) are all implemented (ADR-0015/0045); record the verification pass on requirements.md H2.
This commit is contained in:
@@ -37,9 +37,9 @@ Current decisions at a glance (each backed by an ADR):
|
||||
simple to advanced (ADR-0003). No other sigils.
|
||||
- **Project format:** `project.yaml` + `data/<table>.csv` +
|
||||
`history.log`; `playground.db` is a derived artifact (ADR-0004,
|
||||
amended by ADR-0015). Implemented through Iteration 4 +
|
||||
cleanup; export/import (Iter 5) and migration framework /
|
||||
--resume / persistent input history (Iter 6) pending.
|
||||
amended by ADR-0015). Fully implemented (ADR-0015 Iterations
|
||||
1–6): export/import, `--resume`, persistent input history, and
|
||||
the migration framework scaffold are all done.
|
||||
- **Project storage runtime:** every command persists through to
|
||||
db + yaml + csv + history.log in one execution context, gated
|
||||
by the combined db persistence logic; commit-db-last ordering
|
||||
@@ -335,16 +335,8 @@ all of `target/`, forcing a full from-scratch rebuild).
|
||||
These are explicitly tracked (mostly in `requirements.md`) but
|
||||
not yet implemented:
|
||||
|
||||
- **Project storage** (track 2): largely implemented through
|
||||
Iteration 4 + cleanup pass + safety hardening (Iterations
|
||||
1–4 of ADR-0015). Pending pieces: `export` / `import` (Iter
|
||||
5), `--resume` + persistent input history hydration +
|
||||
migration framework scaffold (Iter 6).
|
||||
- **Modify relationship** (C3a): drop+add covers the use case
|
||||
today.
|
||||
- **m:n convenience** (C4): auto-generates a junction table
|
||||
with appropriate FKs — depends on relationships being solid
|
||||
(they are).
|
||||
- **Strong syntax-help in parse errors** (H1a): point users at
|
||||
missing keywords/clauses rather than the unexpected
|
||||
character. *(H1 — the friendly **database**-error layer — is
|
||||
|
||||
Reference in New Issue
Block a user