aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--todo.org16
1 files changed, 8 insertions, 8 deletions
diff --git a/todo.org b/todo.org
index 31029c0cd..04a78da06 100644
--- a/todo.org
+++ b/todo.org
@@ -386,12 +386,12 @@ Expected: d duplicates; D names the exact targets and only deletes on yes; the f
Parent grouping the open theme-studio / theming issues; close each child independently.
*** TODO [#C] ansi-color dropdown plain, reuse info in the hover :feature:studio:
Drop the parenthetical from the "ansi color" assignment-view dropdown label so it reads plain, and move the explanation to the hover instead: name the packages that reuse these colors (vterm / eshell / compilation / ghostel) and verify they actually do before stating it. From the roam inbox 2026-06-24.
-*** TODO [#C] nerd-icons editable face list grouped by color family :feature:studio:
-Default-group the 34 nerd-icons color faces in the editable table by family (lblue / blue / blue-alt / dblue together, etc.), the families in a sensible order, with the sort icon still re-sorting alphabetically and revisiting the view restoring the grouped default. The gallery preview already clusters by hue, so this is the editable-table counterpart — confirm it is still wanted now that the gallery ships. From the roam inbox 2026-06-24.
+*** 2026-06-24 Wed @ 21:53:39 -0400 Editable face-list color grouping cancelled — subsumed by the gallery
+The roam-inbox ask was to default-group the editable nerd-icons face table by color family. Craig's call (2026-06-24): the gallery preview already clusters the icons by hue, which covers the underlying "see colors grouped" need, so grouping the 34-row editable table too isn't worth it. Cancelled.
*** 2026-06-24 Wed @ 18:09:26 -0400 theme-studio tier-1 simplifications landed
Behavior-preserving simplifications from the four-agent refactor/simplify assessment, all test-verified (full suite green). Landed: syncMockHeight + syncPkgHeight merged into syncPaneHeight(tableId, paneId); the dead generatorHues "manual" branch deleted (identical to fallback); locateInfoLine removed (fn + export + test, orphaned this session); the redundant pkgbody guard dropped (buildPkgTable self-guards); displayHex/displayName closures inlined; paintUI now calls worstCellHtml; generate.py's two nerd-icons loaders share _load_nerd_icons_artifact (sentinel keeps the null-file edge exact); face_coverage.classify rewritten with named locals (with a new characterization test). Two agent findings were wrong and skipped on verification: LOCATE_REG is live (read by previewSpan), and normalizePaletteEntryCore doesn't exist (hallucinated). Skipped on judgment: a RELEASED_BOX constant (mutable-dict aliasing hazard, only ~10 sites) and inlining apply_hover_box_default (its why-docstring earns the named function). Open for Craig: previewFaceAttrs (app-core.js) is test-only with a stale "the gate calls it" docstring — confirm delete vs keep.
-*** TODO [#D] theme-studio app.js module split (tier 2) :refactor:studio:
-Optional structural change, navigability-only. The highest-value extraction landed (see below): controls.js. The remaining clusters (picker, locate, io, tables) are further optional splits with diminishing returns — do them only if scrolling app.js is still real friction, following the same token-at-position pattern controls.js proved.
+*** 2026-06-24 Wed @ 21:53:39 -0400 app.js split — controls.js extracted, remaining splits declined
+The highest-value extraction landed (controls.js, see below). Craig's call (2026-06-24): stop there — the remaining clusters (picker, locate, io, tables) are diminishing navigability gain for more churn, so they're declined. The token-at-position pattern is proven and documented if any one is ever wanted.
**** 2026-06-24 Wed @ 19:16:47 -0400 Extracted the control factories to controls.js
Cut the contiguous dropdown / detail-editor / expander cluster (the custom color dropdown state + closeColorDropdown + mkColorDropdown through mkExpander, 205 lines) from app.js into controls.js, spliced back at a CONTROLS_J token via generate.py. app.js dropped 927 to 721 lines. The token sits at the exact extraction point, so the assembled page is byte-identical (just relocated source) — full suite green with no gate changes. mkBoxControl (a lone factory elsewhere in app.js) stayed put; it can join controls.js later.
*** TODO [#A] theme-studio: consistent assignment-view table columns :feature:studio:next:
@@ -493,8 +493,8 @@ Package faces model =inherit= explicitly, but UI faces currently expose only fg/
The calibre package preview has no elements to theme in the search list, and coloring switches to the string color on mismatched quotes. Investigate, then record a diagnosis and solution in this task before fixing. From the roam inbox 2026-06-15.
*** TODO [#C] theme-studio: break org-mode preview into grouped subsections :feature:studio:
Rather than cramming all org-mode preview into one pane, split into groups so each element is shown in a common, context-rich environment. From the roam inbox.
-*** TODO [#C] theme-studio: converter drops :inherit on UI faces :bug:studio:
-build-theme.el's UI tier passes inherit=nil to --attrs, so a UI face that relies only on its inherit field (no explicit fg/bg) loses the inheritance in the generated theme, while the studio preview shows the inherited color via resolveUiAttr. The package tier already emits :inherit; the UI tier should match. Surfaced while diagnosing why mode-line-inactive looked off in Emacs versus the preview (that case had explicit colors and turned out to be a stale deploy, but the inherit gap is real for any inherit-only UI face).
+*** 2026-06-24 Wed @ 22:30:00 -0400 converter :inherit on UI faces — verified already correct, not reproducible
+The reported bug (build-theme.el's UI tier dropping :inherit for inherit-only UI faces) does not reproduce in the current code. uiFaceBlank carries an inherit field, exportObj dumps the full UIMAP (inherit included), and build-theme/--attrs reads it. Direct test: a theme.json with ui face {inherit: mode-line, fg: null, bg: null} fed to build-theme/--ui-face-specs emits ((mode-line-inactive ((t (:inherit mode-line))))) — the :inherit survives. Closed as already-fixed / stale.
*** TODO [#C] theme-studio: elfeed ignores theme assignments :studio:studio:
The preview shows theme colors, but elfeed itself renders all-white with no variation. Note: this may be the shr-rendered entry/article view (elfeed-show), where color often comes from the document rather than the theme — confirm whether the symptom is in the search list or the article view. From the roam inbox.
*** VERIFY [#C] theme-studio face-consistency check :feature:studio:next:
@@ -3756,8 +3756,8 @@ These may override useful defaults - review and pick better bindings:
:END:
Display slack.el message and thread buffers in a dedicated popup window (side or bottom) and reuse that one window instead of spawning a new window per buffer. Likely a =display-buffer-alist= rule (or popper integration) in =modules/slack-config.el=.
-** TODO [#D] Evaluate google-keep Emacs package :quick:
-From the roam inbox. Look at the google-keep Emacs package — worth adding for in-editor Keep, or does the existing google-keep MCP cover it? Triage / shortlist, not a commitment.
+** TODO [#C] google-keep in-editor integration — build, module-to-package :feature:
+No in-editor Emacs google-keep package exists (researched 2026-06-24); only a one-shot Takeout-to-org importer, and the live API is unofficial (gkeepapi reverse-engineers the private mobile endpoint, with auth fragility). The existing google-keep MCP already gives agent-driven read/write. Craig wants a custom integration built here instead: surface Keep notes either as an org-capture-style popup or as a separate org-mode page with each note rendered as an org header. Build in =.emacs.d=, eventually extract to a standalone package (the VAMP / pearl module-to-package pattern). Data source: the google-keep MCP (or gkeepapi directly, accepting the unofficial-API risk). Spec it before building — decide the shape (popup vs org page), read-only vs read-write, and the auth/data path.
** TODO [#D] Theme Studio nerd-icons vNext follow-ups :feature:
Deferred from [[file:docs/specs/theme-studio-nerd-icons-colors-spec.org][theme-studio-nerd-icons-colors-spec.org]]: extend the legend to
buffer-mode and command/symbol categories if the file set proves insufficient;