diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-25 21:30:34 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-25 21:30:34 -0500 |
| commit | 1de0623168d13c51fb9a7c8a87f89030642ae4d0 (patch) | |
| tree | a4edf8b91ebafe8590145488f88b47a887ca716c /docs/issue-conflict-handling-spec.org | |
| parent | 60b51e1c996f1c8f152696946b9440f26ea9a956 (diff) | |
| download | pearl-1de0623168d13c51fb9a7c8a87f89030642ae4d0.tar.gz pearl-1de0623168d13c51fb9a7c8a87f89030642ae4d0.zip | |
refactor(save): remove the immediate-state-push org-sync machinery
The opt-in org-sync mode pushed Linear state immediately — on every TODO-keyword cycle (the org-after-todo-state-change hook) and on every buffer save (the after-save hook scanning the whole file). That's the last immediate-push path, and it contradicts the one-write-path model the rest of v2 builds, so I removed it: pearl-enable-org-sync / -disable-org-sync, pearl-org-hook-function, pearl-sync-org-to-linear, pearl-sync-current-heading-to-linear, and the now-orphaned pearl--process-heading-at-point, pearl--map-org-state-to-linear, and pearl--update-issue-state-async. This finishes the "make org-sync private" task — there was nothing left to make private.
Cycling a TODO keyword now marks state dirty (reconciled at the next save) instead of pushing. Saving the buffer pushes nothing. Re-introducing an auto-push on save is the separate "Automatic sync on save" task, which would call the save engine rather than this whole-file scanner.
I kept pearl--extract-org-heading-properties and pearl--get-todo-states-pattern. They're general heading/keyword readers, not org-sync-specific, and the keyword-cycle save (the keyword-derivation follow-up) needs exactly them. The obsolete sync tests are replaced by two that assert the contract: the sync commands are gone, and a keyword cycle pushes nothing.
Diffstat (limited to 'docs/issue-conflict-handling-spec.org')
0 files changed, 0 insertions, 0 deletions
