NEC-323: Typing in a canvas note card was lost in both vaults: a stale view saved old text when asked to save before a write #314
No reviewers
Labels
No labels
area:docs
area:identity
area:ops
area:plugin
area:server
channel:community
channel:direct
channel:owned
channel:press
channel:social
e2ee-constrained
gate:at-ga
gate:pre-ga
marketing
parity
relay:absent
relay:planned
relay:requested
relay:supported
risk:additive
risk:contract
risk:none
usability
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Nectenda/nectenda!314
Loading…
Reference in a new issue
No description provided.
Delete branch "worktree-nec-323-typing-in-a-canvas-note-card-was-lost-in"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Task: NEC-323 — https://projectron.nerchure.com/tasks/343
Typing in a canvas note card could be lost in both vaults: before a write, the guard asked every card of the note to save, and Obsidian's card save hands its text to the other whole-note cards before checking for a change, so a section card not yet re-indexed pushed the older note into the card just typed in, whose save wrote it over the typing. Only a card holding typing is asked now; a clean card is read by lastSavedData (Obsidian leaves data behind on a reload, which repeated a line on every write once the forced saves stopped); and no file is loaded over a card's typing (a repair race that lost a word). Ride-alongs, each on the user's yes: NEC-325 investigated and guarded by a test (not reproduced); NEC-326 a canvas card's save is read in against what that card built it on, when that is text read in; NEC-328 a failed download of a listed attachment version is retried, never as a download over a structured file; NEC-329 no bind backup when the document holds exactly what the editor did. Each rule has a test that fails without it; gate green at
6762082f; canvas and Markdown hardness hours and the seed 1584194348 replay pass on the final code. Spec: docs/changes/NEC-323-stale-note-card-save/spec.md.Spec:
docs/changes/NEC-323-stale-note-card-save/spec.mdAlso fixes NEC-325: A canvas card of one section of a note, holding typing, wrote over another card's save of the note with its stale surroundings
Also fixes NEC-326: A save from a view that missed a write was read in against the first open view's text, not its own, and could repeat a line
Also fixes NEC-328: A new version of an image renamed 10 ms after its upload stayed old in the other vault
Also fixes NEC-329: A note's editor was backed up as it bound, with nothing of its own to lose, when a peer's paste replaced it during the handover
Changelog
Typing in a canvas card that shows a note is no longer lost when another card of the same note had not caught up yet.