aboutsummaryrefslogtreecommitdiff
path: root/todo.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-29 08:43:07 -0400
committerCraig Jennings <c@cjennings.net>2026-06-29 08:43:07 -0400
commitbc3f370de803d3db6f3cbf864186ed8dabbf6151 (patch)
treeae802ec0b5043fe365bc1031870b4f43896f9ffc /todo.org
parent4d64437433ed221a08a5258243c01e3a05980db9 (diff)
downloaddotemacs-bc3f370de803d3db6f3cbf864186ed8dabbf6151.tar.gz
dotemacs-bc3f370de803d3db6f3cbf864186ed8dabbf6151.zip
chore(todo): close the file-basename picker completion task
Mark the completion-category task done (commit 4d644374) and file the marginalia render as a hands-on check under Manual testing and validation, since the annotation is unit-tested but only visible live in the minibuffer. Claude-Session: https://claude.ai/code/session_014fyKMTTqLrZpL3rDF3dYc3
Diffstat (limited to 'todo.org')
-rw-r--r--todo.org18
1 files changed, 16 insertions, 2 deletions
diff --git a/todo.org b/todo.org
index da944094b..f33c63260 100644
--- a/todo.org
+++ b/todo.org
@@ -61,6 +61,17 @@ CLOSED: [2026-06-29 Mon]
** PROJECT [#A] Manual testing and validation
Exercised once the phases above land.
+*** TODO File-basename pickers show marginalia size/date annotations
+What we're verifying: the eight pickers now carry a completion category and annotator (commit 4d644374), so marginalia should show a size + date suffix beside each candidate (a "dir" marker for directory candidates). The metadata is unit-tested; this is the live minibuffer render only Craig can see. Marginalia must be on (it is in this config). Eyeball each prompt, then =C-g=.
+- =M-x cj/tmr-select-sound-file=. Expected: each timer-sound candidate shows a size + YYYY-MM-DD suffix.
+- =C-h i= (browse Info files). Expected: each Info file shows size + date.
+- =M-x cj/drill-start=. Expected: each flashcard .org shows size + date.
+- =M-x cj/test-focus-add= then =M-x cj/test-focus-remove=. Expected: each test file shows size + date.
+- =M-x cj/music-fuzzy-select-and-add=. Expected: files show size + date, directories show "dir" + date.
+- =M-x cj/hugo-open-draft=. Expected: each draft shows size + date.
+- =C-<f8>= (agenda for a single project). Expected: each project shows its todo.org's size + date (last-touched signal).
+- Clone-dir picker: copy a git URL, then run the clone command with a single =C-u= prefix to reach the "Clone to:" picker. Expected: each clone dir shows "dir" + date; =C-g= to abort before it clones.
+Expected: every picker annotates its candidates with size + date (or "dir" + date for directories); no picker errors, and the selected value still does what it did before (annotation is metadata-only).
*** DONE F12 opens the eshell-through-EAT terminal (dock, visual, colors, prompt, z)
CLOSED: [2026-06-27 Sat 12:50]
What we're verifying: F12 now opens and toggles eshell run through EAT (eat-eshell-mode), docked with the remembered geometry; F12 + C-; reach Emacs from inside it; and the eshell-in-eat features land. Wiring verified live; this is the hands-on check only Craig can run.
@@ -4103,8 +4114,11 @@ Dirvish computes a valid MD5-hashed cache path and =ffmpegthumbnailer= thumbnail
** TODO [#C] Completion category for the mu4e attachment picker :feature:solo:
The Save-attachment picker (=mu4e-attachments.el=) has bare candidates worth a category. Add a custom category plus a table annotation-function showing each attachment's MIME type and size; confirm the mu4e part-plist keys first. Helper =cj/completion-table-annotated= is in =system-lib=.
-** TODO [#C] Completion categories for the file-basename pickers :feature:solo:
-Eight =completing-read= pickers list bare file basenames, so marginalia can't annotate them: chrono-tools sounds, org-drill flashcards, help-config Info files, test-runner tests, music-config files, vc-config clone dirs, plus hugo drafts and org-agenda projects. For each, either make the candidates absolute paths so the standard =file= category resolves them, or tag a custom category with a small annotator. Decide per site. Helper =cj/completion-table= is in =system-lib=.
+** DONE [#C] Completion categories for the file-basename pickers :feature:solo:
+CLOSED: [2026-06-29 Mon]
+Done in commit 4d644374. Added =cj/completion-file-annotator= to system-lib (a candidate->path annotation factory showing size + date, "dir" for directories) and wired all eight pickers through =cj/completion-table-annotated= with a per-site category + resolver: timer sounds, drill flashcards, Info files, test-runner focus add + remove, vc clone dirs, hugo drafts, agenda projects (the project's todo.org mtime). music-config's existing table gained the category + annotator inline, keeping its sort metadata. Candidates and return values are unchanged (annotation-only); the six modules lacking it now require system-lib. Helper got Normal/Boundary/Error tests; full suite green at 5394. The marginalia render is a visual check, filed under Manual testing and validation.
+
+Original task body: Eight =completing-read= pickers list bare file basenames, so marginalia can't annotate them: chrono-tools sounds, org-drill flashcards, help-config Info files, test-runner tests, music-config files, vc-config clone dirs, plus hugo drafts and org-agenda projects. For each, either make the candidates absolute paths so the standard =file= category resolves them, or tag a custom category with a small annotator. Decide per site. Helper =cj/completion-table= is in =system-lib=.
** TODO [#D] Claude Code unterminated-color bleed (upstream)
Claude Code truncates a colored span without a reset, so the color bleeds down the EAT buffer. The newline-reset workaround (=cj/eat-reset-sgr-at-newline=) contains the streaming case but not cursor-positioned / full-screen rendering, and a full EAT-side fix would break legitimate cross-line color. The clean fix is upstream -- report it to Claude Code with a minimal repro.