1f24c4b095
Split root CLAUDE.md into 19 per-directory files scoped to their source area. Roll v0 history into docs/ARCHIVE.md; retire CONTEXT.md, CONTEXT-ARCHIVE.md, PLAN.md, COMPLETED.md. Move plan docs under docs/. Rescue 9 live deferrals into docs/TODO.md.
1.1 KiB
1.1 KiB
src/core/json — the hand-rolled JSON lexical layer
Scope
The ONE hand-rolled JSON lexical layer used across the pure core: string/number/
bool/null tokens, the scoped object Writer, and the bounds-checked Reader
cursor. Domain grammars — what fields a bank, view-mode, or manifest blob actually
has — stay in the consumers; this module owns lexing/emitting only.
Modules
json(core/json) — the ONE hand-rolled JSON lexical layer (Q-W1): string/number/bool/null tokens, the scoped objectWriter, and the bounds-checkedReadercursor, byte-compatible with the five pre-extraction per-module writers it replaced (bank_model/bank_book/view_mode_model/owned_manifest/tail_control). Domain grammars stay in the consumers; this owns lexing/emitting only.
Gotchas
- Byte-compatible with the five pre-extraction per-module writers it replaced
(
bank_model/bank_book/view_mode_model/owned_manifest/tail_control) — a change here risks silently breaking round-trip compatibility with ext-state blobs already persisted by projects written before the Q-W1 extraction.