| Commit message (Expand) | Author | Age | Files | Lines |
| * | refactor(view-sync): pick-scope returns (display . plist), drops rassoc lookup | Craig Jennings | 2026-05-28 | 2 | -66/+162 |
| * | fix(view-sync): refuse sync of a saved query whose filter is empty | Craig Jennings | 2026-05-28 | 2 | -27/+56 |
| * | refactor(view-sync): pearl--save-query-mark-synced preserves unknown plist keys | Craig Jennings | 2026-05-28 | 2 | -16/+44 |
| * | docs(view-sync): README sync-up section + spec status to Done | Craig Jennings | 2026-05-28 | 2 | -6/+45 |
| * | feat(view-sync): pearl-publish-current-source convenience wrapper | Craig Jennings | 2026-05-28 | 4 | -2/+106 |
| * | feat(view-sync): pearl-pick-source distinguishes [saved] / [saved → scope] ... | Craig Jennings | 2026-05-28 | 3 | -32/+256 |
| * | feat(view-sync): extend pearl-delete-saved-query with delete-on-Linear prompt | Craig Jennings | 2026-05-28 | 2 | -13/+221 |
| * | feat(view-sync): pearl-sync-saved-query-to-linear + transient entry | Craig Jennings | 2026-05-28 | 4 | -62/+842 |
| * | docs(view-sync): phase 1 verified, pearl filter output works as filterData | Craig Jennings | 2026-05-28 | 1 | -0/+15 |
| * | docs(spec): saved-query-sync to Linear views, Ready after sprint review | Craig Jennings | 2026-05-28 | 1 | -0/+294 |
| * | feat(prompts): split sentinel + default-yes for safe yes/no | Craig Jennings | 2026-05-28 | 3 | -79/+158 |
| * | docs(README): explain that pearl follows browse-url-browser-function | Craig Jennings | 2026-05-28 | 1 | -0/+15 |
| * | feat(saved): add pearl-delete-saved-query and a sentinel cancel for run | Craig Jennings | 2026-05-28 | 3 | -4/+102 |
| * | fix(filter): pin builder candidate order so [ None. ] stays at the top | Craig Jennings | 2026-05-28 | 2 | -10/+44 |
| * | feat(filter): show "[ None. ]" as the topmost option in builder prompts | Craig Jennings | 2026-05-28 | 2 | -22/+83 |
| * | refactor(preamble): tighten buffer affordance comments to keymap form | Craig Jennings | 2026-05-27 | 2 | -7/+8 |
| * | feat(sources): favorites, views, and filters via pick-source | Craig Jennings | 2026-05-27 | 8 | -39/+597 |
| * | docs: add the issue-sources spec (favorites, views, filters) | Craig Jennings | 2026-05-27 | 1 | -0/+143 |
| * | refactor: verb-align command names and prefixes, use issue not ticket | Craig Jennings | 2026-05-27 | 12 | -100/+105 |
| * | feat(compose): open compose and conflict buffers in a configurable side window | Craig Jennings | 2026-05-27 | 2 | -2/+53 |
| * | fix(save): detect comment edits with a rendered-Org hash, not the md round-trip | Craig Jennings | 2026-05-27 | 2 | -27/+87 |
| * | feat(labels): render Linear labels as Org tags on issue headings | Craig Jennings | 2026-05-27 | 4 | -5/+238 |
| * | feat(commands): add pearl-copy-issue-url, bound at u c | Craig Jennings | 2026-05-27 | 3 | -6/+44 |
| * | docs: document pearl-mode and the completed keymap | Craig Jennings | 2026-05-27 | 1 | -7/+26 |
| * | feat(keys): add pearl-mode and complete the command keymap | Craig Jennings | 2026-05-27 | 2 | -63/+224 |
| * | feat(render): render issue titles and the view name verbatim | Craig Jennings | 2026-05-27 | 6 | -18/+49 |
| * | fix(commands): run add-comment and delete from anywhere in a ticket | Craig Jennings | 2026-05-26 | 3 | -13/+30 |
| * | feat(refresh): re-tidy drawers via org-tidy when it's active | Craig Jennings | 2026-05-26 | 2 | -3/+37 |
| * | feat(comments): fold the drawer and update the heading count on add | Craig Jennings | 2026-05-26 | 3 | -6/+46 |
| * | feat(refresh): prompt instead of silently deferring a dirty refresh | Craig Jennings | 2026-05-26 | 3 | -14/+113 |
| * | fix(refresh): merge keeps any locally-edited ticket | Craig Jennings | 2026-05-26 | 2 | -4/+30 |
| * | fix(comments): don't recolor the leading heading stars | Craig Jennings | 2026-05-26 | 2 | -11/+27 |
| * | feat(comments): dim read-only comments so they read as disabled | Craig Jennings | 2026-05-26 | 2 | -9/+43 |
| * | refactor: remove the dead state-to-todo mapping subsystem | Craig Jennings | 2026-05-26 | 16 | -145/+32 |
| * | feat(comments): lead the Comments heading with the 💬 glyph | Craig Jennings | 2026-05-26 | 4 | -19/+22 |
| * | fix(comments): apply comment highlighting on the bulk render path | Craig Jennings | 2026-05-26 | 2 | -2/+43 |
| * | feat(coverage): print a terminal coverage summary from the SimpleCov report | Craig Jennings | 2026-05-26 | 4 | -2/+378 |
| * | chore: gitignore the local inbox/ directory | Craig Jennings | 2026-05-26 | 1 | -0/+1 |
| * | feat: resolve a cycled TODO keyword to its Linear state at save | Craig Jennings | 2026-05-26 | 5 | -80/+209 |
| * | docs: supersede the keyword spec's sync-back half with save-model-v2 | Craig Jennings | 2026-05-26 | 1 | -1/+5 |
| * | feat(render): rebuild the derived #+TODO header on merge refresh | Craig Jennings | 2026-05-25 | 3 | -5/+69 |
| * | feat(render): derive the #+TODO line and keywords from team workflow states | Craig Jennings | 2026-05-25 | 3 | -10/+94 |
| * | feat(render): add the pure helpers for workspace-derived TODO keywords | Craig Jennings | 2026-05-25 | 2 | -0/+122 |
| * | fix(save): extend the killed-buffer guard to the text-field savers | Craig Jennings | 2026-05-25 | 2 | -14/+46 |
| * | fix(save): guard atomic-saver commit callbacks against a killed buffer | Craig Jennings | 2026-05-25 | 2 | -3/+49 |
| * | docs: drop the stale sync-hook mention in set-heading-state | Craig Jennings | 2026-05-25 | 1 | -3/+3 |
| * | docs: rewrite the README editing section for the unified save model | Craig Jennings | 2026-05-25 | 1 | -29/+35 |
| * | refactor(save): remove the immediate-state-push org-sync machinery | Craig Jennings | 2026-05-25 | 5 | -346/+39 |
| * | refactor(save): retire the immediate-push field setters for buffer-editors | Craig Jennings | 2026-05-25 | 10 | -289/+129 |
| * | feat(save): reconcile structured fields in save-issue and save-all | Craig Jennings | 2026-05-25 | 2 | -17/+87 |