Retire a caveat the fix made false, and turn a stale warning into a technique
Four of the five fields the caveat said were silently lost are now persisted, so the caveat is retired rather than trimmed. What was genuinely unique in it -- the inbox predicate being a vestige that must stay unused -- moved into the Event bullet where the shape is described; what merely duplicated the entity leaf went. Only `themes` remains unpersisted, and since nothing reads it back it is a note rather than a hazard. The regeneration warning is reframed rather than deleted. It said the ORM generator had drifted from the committed bindings; that no longer reproduces -- regenerating from the unchanged shape gives byte-identical output. What survives is the technique that established it: run the generator on unchanged input first, so an ORM diff separates cleanly into the author's change and the generator's own. A warning became a way of working. The same stale claim sat independently in the commands leaf and was found by grep, not by the briefing. Recorded where the screen hazards live: the edit form seeds its inputs on first render, so mounted before its event lands in the reactive set it stays blank -- the same class as a value that is empty until a read arrives. Verified rather than assumed: the misleading French date example flagged for correction exists nowhere in the doctrine. It lives in a shape comment and the binding generated from it, both outside this pass, and is noted as such.
This commit is contained in:
@@ -1,7 +0,0 @@
|
||||
# Doc-debt — tech-stack
|
||||
|
||||
> Presence of a block = doc to update. Processed → delete the block; no blocks left → delete this file.
|
||||
> One block = one "big change": `why` + `files` + `verify` (leaves to review).
|
||||
|
||||
## Raw markers (consolidate into blocks, then delete)
|
||||
- TOUCHED package.json @2026-08-17 (session 0b064e8b-1717-421f-a20e-a4318ad217b1)
|
||||
@@ -40,4 +40,4 @@ summary: Stack components (Bun runtime/build/test, install through pnpm, React,
|
||||
|
||||
- **`cucumber:run`/`test:data` run under Node+tsx**, not Bun — the test plugins do not load under a native Bun import. Do not "bunify" these scripts.
|
||||
- **Never point a script at `node_modules/.bin/*`.** Installation goes through pnpm ([[rule_bun-first]] §exception), which puts **shell shims** there rather than JS entries: `node --import tsx/esm node_modules/.bin/cucumber-js` fails. Invoke the package's **actual JS entry** (`node_modules/@cucumber/cucumber/bin/cucumber.js`). This holds for any npm script that would launch a dependency's binary under `node`.
|
||||
- **`build:orm` was broken until 2026-07-28**: it targeted `./src/shapes/`, which does not exist (the shapes live under `src/shared/shapes/`), so the command exited with an error. **Fixed in `package.json`** — it now runs. Beware of a side effect: the generator has moved on since the committed bindings were produced, so a run reformats them and drops the `: Schema` annotation. That regeneration is a **tool-version bump, not a content fix** — treat it as its own validated change, do not let it ride along.
|
||||
- **`build:orm` was broken until 2026-07-28**: it targeted `./src/shapes/`, which does not exist (the shapes live under `src/shared/shapes/`), so the command exited with an error. **Fixed in `package.json`** — it now runs, and reproducibly: regenerating from an *unchanged* `.shex` reproduces the committed bindings byte-for-byte. Verify that before trusting an ORM diff as your own — run the generator once on the shape untouched, then again after your edit, so the diff shown is the edit alone (concept `data-layer` → [[knowledge_nextgraph-stack]]).
|
||||
|
||||
Reference in New Issue
Block a user