docs(backlog): fix stale WP-27 undo/redo implementation claim
WP-27's Decisions said undo/redo is a hand-rolled past/future: Brief[] stack in BriefStore. WP-31 later extracted that into the shared createHistory<T> helper (the backlog's own phase-7 ordering note says as much: "32 reuses the createHistory helper 31 extracts") — BriefStore now calls .record/.undo/.redo on it, same cap-50/push-on-edit/clear-on-new-edit semantics. Noted the supersession rather than leaving the WP describing code that no longer exists verbatim. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -23,9 +23,13 @@ pure function over two values. Say so in code comments and stories.
|
|||||||
block-level rejection-diff badges. OUT (deferred, one line each in Out of scope):
|
block-level rejection-diff badges. OUT (deferred, one line each in Out of scope):
|
||||||
soft lock/takeover, case-context panel, 401 autosave grace, per-user usage counts,
|
soft lock/takeover, case-context panel, 401 autosave grace, per-user usage counts,
|
||||||
shortcut-overlay dialog, inline character-level text diff.
|
shortcut-overlay dialog, inline character-level text diff.
|
||||||
- **Undo/redo is shell state, not machine state**: `past`/`future: Brief[]` in
|
- **Undo/redo is shell state, not machine state**: a `past`/`future: Brief[]` stack in
|
||||||
`BriefStore` (cap 50; push on `edit()`; clear `future` on a new edit); restore
|
`BriefStore` (cap 50; push on `edit()`; clear `future` on a new edit); restore
|
||||||
dispatches the **existing `Seed` Msg** — zero machine changes — then `scheduleSave()`.
|
dispatches the **existing `Seed` Msg** — zero machine changes — then `scheduleSave()`.
|
||||||
|
(Superseded by WP-31: the hand-rolled stack was later extracted into the shared
|
||||||
|
`createHistory<T>(cap)` helper — `BriefStore` now holds `this.history =
|
||||||
|
createHistory<Brief>(50)` and calls `.record`/`.undo`/`.redo`/`.clear` on it; same
|
||||||
|
cap-50, push-on-edit, clear-on-new-edit semantics, just generalized for reuse.)
|
||||||
- **Standaardbrief**: backend seeds `IsDefault` on 2–3 kern passages
|
- **Standaardbrief**: backend seeds `IsDefault` on 2–3 kern passages
|
||||||
(`LibraryPassageDto` gains the flag); one button, visible only while the kern
|
(`LibraryPassageDto` gains the flag); one button, visible only while the kern
|
||||||
section is empty, dispatches the existing `PassagesInserted` with the default set —
|
section is empty, dispatches the existing `PassagesInserted` with the default set —
|
||||||
|
|||||||
Reference in New Issue
Block a user