docs: handoff 18 — record the post-ADR-0027 manual-testing pass
The multi-form usage-template fix (151ed08) and the reviewed
`add index` syntax decision (kept as-is), so the next agent
does not re-flag a settled question.
This commit is contained in:
@@ -18,12 +18,13 @@ run. `S6` and `C5a` are both satisfied; nothing from ADRs
|
|||||||
|
|
||||||
## State at handoff
|
## State at handoff
|
||||||
|
|
||||||
**Branch:** `main`. Working tree clean. **11 commits** since
|
**Branch:** `main`. Working tree clean. **12 commits** since
|
||||||
handoff-16 (`ac41938`), all local — push asynchronously, not
|
handoff-16 (`ac41938`), all local — push asynchronously, not
|
||||||
blocking. handoff-17 (`dfd3c51`) is mid-chain; it documents
|
blocking. handoff-17 (`dfd3c51`) is mid-chain; it documents
|
||||||
the ADR-0026 landing and is superseded by this file.
|
the ADR-0026 landing and is superseded by this file.
|
||||||
|
|
||||||
```
|
```
|
||||||
|
151ed08 hint: show the matching usage template for multi-form commands
|
||||||
a326849 ADR-0027: existing-cases sweep + docs (step F)
|
a326849 ADR-0027: existing-cases sweep + docs (step F)
|
||||||
9e10997 runtime: debounce the validity indicator (ADR-0027 step E)
|
9e10997 runtime: debounce the validity indicator (ADR-0027 step E)
|
||||||
1a9d950 ui: validity indicator rendering + warning theme colour (ADR-0027 step D)
|
1a9d950 ui: validity indicator rendering + warning theme colour (ADR-0027 step D)
|
||||||
@@ -37,7 +38,7 @@ f75f71b WHERE expressions: wire into update/delete/show data + SQL gen (ADR-0026
|
|||||||
f0b2043 walker: add Subgrammar node + recursion-depth cap (ADR-0026 step 1)
|
f0b2043 walker: add Subgrammar node + recursion-depth cap (ADR-0026 step 1)
|
||||||
```
|
```
|
||||||
|
|
||||||
**Tests:** **1099 passing, 0 failing, 1 ignored** (`cargo
|
**Tests:** **1100 passing, 0 failing, 1 ignored** (`cargo
|
||||||
test` — up from 1039 at handoff-16). The ignored test is the
|
test` — up from 1039 at handoff-16). The ignored test is the
|
||||||
long-standing `` ```ignore `` doc-test in
|
long-standing `` ```ignore `` doc-test in
|
||||||
`src/friendly/mod.rs`. Typing-surface matrix: **161 cells**.
|
`src/friendly/mod.rs`. Typing-surface matrix: **161 cells**.
|
||||||
@@ -91,6 +92,38 @@ Six steps, one commit each (`e22f933`..`a326849`):
|
|||||||
- **F — sweep + docs.** `input_verdict` tests confirm the
|
- **F — sweep + docs.** `input_verdict` tests confirm the
|
||||||
schema check fires across the identifier-taking commands.
|
schema check fires across the identifier-taking commands.
|
||||||
|
|
||||||
|
## §2a. Post-ADR-0027 — a manual-testing pass
|
||||||
|
|
||||||
|
After ADR-0027 landed, a round of manual testing surfaced
|
||||||
|
three things; all are resolved.
|
||||||
|
|
||||||
|
- **Bug, fixed (`151ed08`).** A parse error in `add index …`
|
||||||
|
showed the `add column` usage. `add` / `drop` are
|
||||||
|
multi-form commands and both the ambient hint and the
|
||||||
|
submit-time usage block picked the *first* form
|
||||||
|
unconditionally. New `grammar::usage_key_for_input`
|
||||||
|
disambiguates by the form word after the entry keyword;
|
||||||
|
the hint shows the committed form, `render_usage_block`
|
||||||
|
too (bare `add` / `drop` still shows the whole family).
|
||||||
|
- **`add index` syntax — reviewed, deliberately kept.** The
|
||||||
|
inconsistency is real: `add column [to] [table] <T>: <col>
|
||||||
|
(<type>)` vs `add index [as <name>] on <T> (<cols>)`. It
|
||||||
|
was weighed and **left as-is** — `add index … on <T>
|
||||||
|
(<cols>)` is intentionally SQL-idiomatic
|
||||||
|
(`CREATE INDEX … ON t (cols)`), the colon shape was built
|
||||||
|
for "one column *with a type*" and an index has neither.
|
||||||
|
A future agent should **not** re-flag this as a bug; if
|
||||||
|
the owner later wants the entity-command separators
|
||||||
|
unified, that is a deliberate ADR-0025 amendment / design
|
||||||
|
pass, not a drive-by fix.
|
||||||
|
- **No index parameters / no `unique` — by design.** ADR-0025
|
||||||
|
scoped `add index` to plain non-unique indexes; there is
|
||||||
|
no `unique`-index syntax and no constraint syntax at all
|
||||||
|
(`NOT NULL` / `UNIQUE` / `CHECK` / `DEFAULT` are the
|
||||||
|
pending `C3`). ADR-0018's `unique` handling only
|
||||||
|
*detects + displays* an existing constraint — nothing
|
||||||
|
creates one. Not a gap in the help; the help is accurate.
|
||||||
|
|
||||||
## §3. Architectural delta (vs. handoff-17)
|
## §3. Architectural delta (vs. handoff-17)
|
||||||
|
|
||||||
### Diagnostics
|
### Diagnostics
|
||||||
@@ -171,7 +204,7 @@ Prioritisation is a user product decision — ask.
|
|||||||
especially its "As-built notes" (post-walk diagnostics,
|
especially its "As-built notes" (post-walk diagnostics,
|
||||||
the pre-rendered message, the `timeout` debounce, coarse
|
the pre-rendered message, the `timeout` debounce, coarse
|
||||||
spans, the deferred highlight/hint wiring).
|
spans, the deferred highlight/hint wiring).
|
||||||
4. **Run `cargo test`** — 1099 passing, 0 failing, 1 ignored.
|
4. **Run `cargo test`** — 1100 passing, 0 failing, 1 ignored.
|
||||||
5. **Run `cargo clippy --all-targets -- -D warnings`** — clean.
|
5. **Run `cargo clippy --all-targets -- -D warnings`** — clean.
|
||||||
6. **Pick the next work from §5** — ADR-0028 is the natural
|
6. **Pick the next work from §5** — ADR-0028 is the natural
|
||||||
pick; prioritisation is a user decision, so ask.
|
pick; prioritisation is a user decision, so ask.
|
||||||
|
|||||||
Reference in New Issue
Block a user