aboutsummaryrefslogtreecommitdiff
path: root/Eask
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-25 19:54:32 -0500
committerCraig Jennings <c@cjennings.net>2026-05-25 19:54:32 -0500
commit8fa0febbc3a3afe78d1a5abbbb944adf6dd3612a (patch)
tree892acf92c1e1fffcedfeab18cb980ba7e9698c91 /Eask
parent648893bd6ff5f4c403733d03258dbf3e91f2394b (diff)
downloadpearl-8fa0febbc3a3afe78d1a5abbbb944adf6dd3612a.tar.gz
pearl-8fa0febbc3a3afe78d1a5abbbb944adf6dd3612a.zip
feat(save): add an atomic conflict gate for enum and relation fields
The text conflict gate (pearl--resolve-conflict) is built for mergeable text — it can open an smerge buffer, stash to the kill ring, and advance a SHA hash. None of that fits a state, priority, assignee, or label conflict, where the value is a single id or scalar that can't be combined. pearl--resolve-atomic-conflict is the sibling for those fields: it prompts use-local / use-remote / cancel (no merge option), and delegates the actual push and the baseline advance to the caller's two callbacks, so it stays free of any field-specific mechanics. It maps to the same outcome contract as the text gate — cancel to conflict/cancelled, use-local to pushed or failed/push-failed, use-remote to resolved-remote. It's not wired into a saver yet — the per-field savers in the next commit call it.
Diffstat (limited to 'Eask')
0 files changed, 0 insertions, 0 deletions