docs(clients): the editable-is-the-id list still named two kinds
A fact stated twice is changed by a grep, and this copy was missed. The "four decisions that are silent when wrong" list in context/code/clients.md enumerated CellId::Record and CellId::Aggregate and then said None is "not aggregate" — written when those were the only two kinds. There are now four, and a reader of that list would have concluded a Derived or a Create cell must be a None. Found by grepping for the claim after PR #47 put web/demo.improv on the site's front door, which is also how the remaining stale copies were located: two in prolog-sessions/kb.pl and two in context/repo-map.md, both orchestrator-only files, reported as text in the hand-back. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+10
-5
@@ -669,11 +669,16 @@ rows of cells that each already know whether they are editable, numeric,
|
||||
erroneous and selected. The page's job is `document.createElement`.
|
||||
|
||||
- **Editable is a fact about the id, not about the text.** Only
|
||||
`CellId::Record` may be written (ADR 002). `CellId::Aggregate` is a *drill*
|
||||
target and `Drill` is not on the wire yet, so it renders as non-editable
|
||||
rather than as a control that does nothing. And `None` is **not**
|
||||
"aggregate" — it is "no projected cell here": a padded slot, a blanked one, or
|
||||
a records-mode column that renames a coordinate across the whole row rather
|
||||
`CellId::Record` may be written (ADR 002), and there are now **four** kinds,
|
||||
each naming a permission. `CellId::Aggregate` is a *drill* target and `Drill`
|
||||
is not on the wire yet, so it renders as non-editable rather than as a control
|
||||
that does nothing. `CellId::Derived { target }` is a cell a formula owns
|
||||
(improvise-ir7l): `i` on one names the formula rather than opening an editor,
|
||||
because a write there lands and is then shadowed forever by `formula_cache`.
|
||||
`CellId::Create(kind)` is a records-mode `+`/`+cat` column (improvise-poia),
|
||||
where what the user types is a **name**, not a value. And `None` is **not**
|
||||
any of those — it is "no projected cell here": a padded slot, a blanked one,
|
||||
or a records-mode column that renames a coordinate across the whole row rather
|
||||
than writing one.
|
||||
- **The selection is absolute and the grid is not.** `GridCache` is indexed by
|
||||
position *within the viewport*, while `selected` and `row_offset`/`col_offset`
|
||||
|
||||
Reference in New Issue
Block a user