docs: track :gl divergence rebase in v0.9, note supersede in v0.7

This commit is contained in:
Julien Calixte
2026-07-14 13:27:37 +02:00
parent 75f25433ec
commit d47230c7a1
2 changed files with 18 additions and 0 deletions

View File

@@ -17,6 +17,18 @@
phase at ~3.5 s ≪ the ~30 s idle window; a multi-pack or cold-cache
state could still lose it — see the
[real-repo-sync kaizen](kaizen/real-repo-sync.md))
- [ ] `:gl` recovers from a divergence by rebasing — instead of refusing (the
v0.7 ff-only behavior), the pull replants the device's local commit(s)
onto origin's tip (`rebase_local_onto`: splice the `merge_base..HEAD`
paths from the card onto origin's tree, last-writer-wins per note, no
content merge) and ends `LocalAhead` for `:gp` to publish. The branch ref
moves **last**, after the merged tree is applied to the card, so a
power-pull mid-rebase leaves HEAD at the old tip and the next `:gl`
recomputes the identical commit idempotently. Snackbar `rebased <oid> -
:gp to publish`. Core done 2026-07-14 (`git_sync.rs`, full build green);
**on-device verification pending** — needs a real divergence to
reproduce (a stranded local commit plus a foreign push to the same
branch)
- [ ] Eradicate the paint-during-sync DMA allocation failure: persistent
internal DMA scratch in `Epd` (safety net + allocation-free repaints
shipped; see the