diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-24 18:46:58 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-24 18:46:58 -0500 |
| commit | 617d3a13fa23b472879327366c6c557de9cb90f4 (patch) | |
| tree | 1b275174b5e20090d13701b9df0ee1719aa630f1 /tests/test-pearl-result.el | |
| parent | 99908a72283e16f060239cff176a3b971e509d3c (diff) | |
| download | pearl-617d3a13fa23b472879327366c6c557de9cb90f4.tar.gz pearl-617d3a13fa23b472879327366c6c557de9cb90f4.zip | |
feat: add the local dirty scanners for the ticket save model
First layer of the unified save model (docs/ticket-save-model-spec.org). pearl--issue-dirty-fields returns which of title, description, and comment candidates changed in the issue subtree at point, with no network call. Description dirtiness reuses pearl--subtree-dirty-p, which hashes the rendered Org against LINEAR-DESC-ORG-SHA256, so a description whose markdown is lossy under org->md isn't falsely flagged. Comment candidates hash org->md of each body against LINEAR-COMMENT-SHA256, matching how pearl-edit-current-comment computes its no-op check.
Ownership is a separate phase: pearl--classify-comment-candidates splits candidates into own versus read-only once the viewer id is known, since the local scan can't tell who authored a comment without it. The save-issue and save-all commands that consume these scanners land in the next layers.
Diffstat (limited to 'tests/test-pearl-result.el')
0 files changed, 0 insertions, 0 deletions
