summaryrefslogtreecommitdiff
path: root/todo.org
AgeCommit message (Collapse)Author
2025-11-16chore: Mark org-appear toggle task as DONECraig Jennings
Completed implementation of cj/org-appear-toggle with C-c C-a keybinding. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-16chore: Updated tasksCraig Jennings
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14chore: updated tasksCraig Jennings
2025-11-14fix: Reapply dashboard, weather config fixes and todo updatesCraig Jennings
- dashboard-config.el: Change "Ebooks" to "Books" label - weather-config.el: Fix variable name to wttrin-favorite-location - todo.org: Add music player and mousetrap investigation tasks - history: Update command history 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14Revert "checking in modified/removed tests and other misc changes"Craig Jennings
This reverts commit 9d55ed149e100b4fb3ef6f5a79d263dcb26ce835.
2025-11-14checking in modified/removed tests and other misc changesCraig Jennings
2025-11-14feat(mousetrap): Add profile-based architecture and clickable lighterCraig Jennings
Implement comprehensive profile-based system for selective mouse event control with dynamic lighter and interactive toggling. Features: - Profile-based architecture (7 profiles: disabled, scroll-only, primary-click, scroll+primary, read-only, interactive, full) - Mode-specific configuration (dashboard, pdf-view, nov) - Dynamic keymap building based on current major mode - Clickable modeline lighter (🐭 when off, 🪤 when on) - Dynamic reconfiguration without Emacs reload - Mode inheritance support via derived-mode-p Profiles define which event categories are allowed: - primary-click: Left mouse button only - secondary-click: Middle and right buttons - drags: Drag selections - multi-clicks: Double and triple clicks - scroll: Mouse wheel/trackpad scrolling Default configuration: - dashboard-mode: primary-click (left-click only) - pdf-view-mode: full (all events) - nov-mode: full (all events) - Other modes: disabled (all events blocked) Tests: - 66 comprehensive tests across 5 test files - Unit tests for profile lookup and keymap building - Integration tests for mode switching and dynamic config - Lighter functionality and click interaction tests - All tests passing Known issue: - Dashboard-mode clicks blocked despite primary-click profile - Documented in todo.org for investigation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12perf: Merge performance branch - org-agenda cache, tests, and inbox zeroCraig Jennings
This squash merge combines 4 commits from the performance branch: ## Performance Improvements - **org-agenda cache**: Cache org-agenda file list to reduce rebuild time - Eliminates redundant file system scans on each agenda view - Added tests for cache invalidation and updates - **org-refile cache**: Optimize org-refile target building (15-20s → instant) - Cache eliminates bottleneck when capturing tasks ## Test Suite Improvements - Fixed all 18 failing tests → 0 failures (107 test files passing) - Deleted 9 orphaned test files (filesystem lib, dwim-shell-security, org-gcal-mock) - Fixed missing dependencies (cj/custom-keymap, user-constants) - Fixed duplicate test definitions and wrong variable names - Adjusted benchmark timing thresholds for environment variance - Added comprehensive tests for org-agenda cache functionality ## Documentation & Organization - **todo.org recovery**: Restored 1,176 lines lost in truncation - Recovered Methods 4, 5, 6 + Resolved + Inbox sections - Removed 3 duplicate TODO entries - **Inbox zero**: Triaged 12 inbox items → 0 items - Completed: 3 tasks marked DONE (tests, transcription) - Relocated: 4 tasks to appropriate V2MOM Methods - Deleted: 4 duplicates/vague tasks - Merged: 1 task as subtask ## Files Changed - 58 files changed, 29,316 insertions(+), 2,104 deletions(-) - Tests: All 107 test files passing - Codebase: Cleaner, better organized, fully tested 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-11fix: Resolve Google Calendar password prompts via adviceCraig Jennings
Fixed oauth2-auto.el caching bug using Emacs advice system (survives updates). Root Cause: - oauth2-auto version 20250624.1919 has `or nil` on line 206 - This completely disables the internal hash-table cache - Every org-gcal sync requires decrypting oauth2-auto.plist from disk - GPG passphrase prompted every ~15 minutes (violated "Frictionless" value) The Fix (via advice): - Created cj/oauth2-auto--plstore-read-fixed with cache enabled - Applied as :override advice to oauth2-auto--plstore-read - Survives package updates (unlike direct modification) - Can be easily removed if upstream fixes the bug Changes: - modules/auth-config.el: * Added cj/oauth2-auto--plstore-read-fixed (lines 75-93) * Applied advice on package load (lines 96-98) * Added cj/clear-oauth2-auto-cache helper * Documented fix in commentary (lines 16-22) - todo.org: Mark #A priority task as DONE - docs/oauth2-auto-cache-fix.md: Detailed documentation Result: - Passphrase prompted ONCE per Emacs session (on cold start) - Subsequent org-gcal syncs use cached tokens (no prompts) - Workflow now frictionless as intended - Fix persists across package updates Upstream: - Bug acknowledged in code: "Assume cache is invalidated. FIXME" - Should report to: https://github.com/rhaps0dy/emacs-oauth2-auto - Simple fix: Remove `or nil` on line 206 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09updating tasksCraig Jennings
2025-11-08feat: Fix modeline lag and add org multi-level sort with comprehensive testsCraig Jennings
Performance improvement and new feature with full test coverage. ## Changes ### 1. Fix modeline line/column position lag (#A priority) - Replace expensive line-number-at-pos with cached %l/%c format specifiers - Enable line-number-mode explicitly for caching - Result: Instant modeline updates, zero performance overhead - Files: modules/modeline-config.el:81-83, modules/ui-config.el:53 ### 2. Implement multi-level org sorting - New function: cj/org-sort-by-todo-and-priority - Sorts by TODO status (TODO before DONE) AND priority (A→B→C→D) - Uses stable sorting: priority first, then TODO state - Gracefully handles empty sections (no error) - Bound to C-; o o (ordering → org sort) - Files: modules/org-config.el:278-299, modules/custom-ordering.el:253,267 ### 3. Comprehensive ERT test suite (12/12 passing) - Normal cases: Mixed TODO/DONE, multiple of same type, same priority - Boundary cases: Empty sections, single entries, no priorities - Error cases: Non-org-mode buffer - Test file: tests/test-org-sort-by-todo-and-priority.el ### 4. Testing improvements discovered - Disable org-mode hooks to avoid package dependencies in batch mode - org-sort-entries must be called from parent heading - Preserve priority cookie in org-get-heading (t t nil t) - Add condition-case to handle "Nothing to sort" gracefully ### 5. Minor cleanup - Comment out chime-debug setting (org-agenda-config.el:267) - Mark modeline lag task as DONE in todo.org ## Technical Details Modeline optimization: - line-number-at-pos is O(n) where n = current line - %l and %c are O(1) lookups from cached values Org sorting algorithm uses stable sort: 1. Sort by priority (A, B, C, D, unprioritized) 2. Sort by TODO status (preserves priority order within groups) Result: TODO [#A], TODO [#B], DONE [#A], DONE [#B], etc. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08fix: Resolve flyspell keybinding and mu4e sent folder sync issuesCraig Jennings
Two Method 1 quick wins shipped: 1. Fixed cj/flyspell-then-abbrev keybinding in org-mode - Autoload cookies were comments and never executed - Added explicit keybinding setup when module loads - Override org-mode's C-' binding (org-cycle-agenda-files) - Both C-' and C-c f now work in all buffers 2. Fixed mu4e sent folder not syncing (cmail account) - Root cause: mbsync aborted on Drafts errors before Sent - Changed ~/.mbsyncrc to explicit channels (like Gmail) - Synced 136 missing sent messages (May-Nov 7) - Now syncs 6 folders independently Files modified: - modules/flyspell-and-abbrev.el: Fixed keybindings (lines 235-251) - todo.org: Marked 2 tasks complete with documentation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07chore: Disable automatic syncs and triage inboxCraig Jennings
- Commented out mu4e-update-interval to stop email password prompts - Triaged 5 inbox items against V2MOM framework - Moved 4 items to Method 1 (frictionless improvements) - Split org keymaps task into Method 1 + someday-maybe components - Deleted unclear 'toggle org-agenda' task - Clarified org-appear toggle requirement for long links in tables - Updated Method 1 count from [8/14] to [8/18] - Added transient menu task to SOMEDAY-MAYBE - Cleared inbox for new items Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06chore: Update abbrev corrections and add flyspell TODOCraig Jennings
- Automatic abbrev_defs updates from spell corrections - Added TODO: investigate flyspell-then-abbrev keybinding loss in scratch 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06feat: Add high-priority task for Google Calendar password promptsCraig Jennings
Added comprehensive TODO to Method 1 (priority A) to fix the irritating issue where gcal-sync triggers password prompts every 15 minutes, interrupting workflow and breaking concentration. Task includes: - Current setup documentation (GPG agent, plstore, auth-source config) - Problem analysis (plstore cache, oauth2-auto token refresh) - Six investigation paths to try - File references for debugging - V2MOM alignment (violates "Frictionless" value) This is a daily irritant that needs fixing - password prompts every 15 minutes during calendar sync defeat the purpose of having 400-day GPG cache configured. Related files: - modules/auth-config.el (plstore and GPG configuration) - modules/org-gcal-config.el (org-gcal and oauth2-auto setup) - ~/.gnupg/gpg-agent.conf (GPG agent cache settings) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06feat: Add AssemblyAI transcription backend with speaker diarizationCraig Jennings
Integrated AssemblyAI as the third transcription backend alongside OpenAI API and local-whisper, now set as the default due to superior speaker diarization capabilities (up to 50 speakers). New Features: - AssemblyAI backend with automatic speaker labeling - Backend switching UI via C-; T b (completing-read interface) - Universal speech model supporting 99 languages - API key management through auth-source/authinfo.gpg Implementation: - Created scripts/assemblyai-transcribe (upload → poll → format workflow) - Updated transcription-config.el with multi-backend support - Added cj/--get-assemblyai-api-key for secure credential retrieval - Refactored process environment handling from if to pcase - Added cj/transcription-switch-backend interactive command Testing: - Created test-transcription-config--transcription-script-path.el - 5 unit tests covering all 3 backends (100% passing) - Followed quality-engineer.org guidelines (test pure functions only) - Investigated 18 test failures: documented cleanup in todo.org Files Modified: - modules/transcription-config.el - Multi-backend support and UI - scripts/assemblyai-transcribe - NEW: AssemblyAI integration script - tests/test-transcription-config--transcription-script-path.el - NEW - todo.org - Added test cleanup task (Method 3, priority C) - docs/NOTES.org - Comprehensive session notes added Successfully tested with 33KB and 4.1MB audio files (3s and 9s processing). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05feat: Configure scratch buffer for org-mode with cursor at endCraig Jennings
- Set initial-major-mode to org-mode for *scratch* buffer - Add emacs-startup-hook to position cursor at end of buffer - Update greeting message comment syntax from ;; to # for org-mode - Re-enable debug flag reset on startup in early-init.el This makes the scratch buffer immediately ready for org-mode note-taking with cursor positioned for typing, eliminating manual mode switching and cursor movement. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-04feat: Add LanguageTool integration for comprehensive grammar checkingCraig Jennings
Integrated LanguageTool as an on-demand grammar checker, replacing the previously disabled proselint checker. Changes: - Created scripts/languagetool-flycheck wrapper for flycheck integration - Converts LanguageTool JSON output to flycheck format - Includes suggestions in error messages - 30-second timeout for large files - Updated modules/flycheck-config.el: - Defined languagetool checker for text/markdown/org/gfm modes - Updated cj/flycheck-prose-on-demand to use LanguageTool - Added installation instructions (sudo pacman -S languagetool) - Improved documentation clarity - Usage: Press C-; ? in org/text/markdown files - Enables flycheck with LanguageTool - Shows errors in *Flycheck errors* buffer - On-demand only (no performance impact) - Updated docs/NOTES.org: - Added best practice: Test Emacs launch after non-trivial changes - Example: emacs --eval "(kill-emacs)" - Catches startup errors before committing - Disabled weather debug mode (wttrin-debug nil) - Marked todo.org grammar checker task as DONE LanguageTool catches real grammar issues (subject-verb agreement, tense, punctuation, common mistakes) that proselint missed. Installation: LanguageTool 6.6 (222MB) from Arch repos Dependencies: Python 3 (for wrapper script) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03chore: Update mood-line task in todo.org with actual implementation detailsCraig Jennings
Updated DONE task to reflect that we built a custom modeline instead of just switching to mood-line. Added comprehensive details about features, architecture, and bug fixes. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03feat: Add org-appear and enable org emphasis renderingCraig Jennings
Changes: - Added org-appear package to show emphasis markers only when editing - Changed org-fontify-emphasized-text from nil to t to render bold/italic - Updated comment for org-hide-emphasis-markers to reference org-appear - org-appear reveals markers (* / _) only when cursor is on them - Also shows link markup and sub/superscripts when editing - Updated todo.org to mark org-appear task as DONE (Method 2: 3/5) Result: Cleaner org-mode editing experience with visual emphasis while maintaining clean appearance when not editing. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03test: Add unit tests for music config and org-contacts functionsCraig Jennings
Add comprehensive unit tests for various Emacs Lisp functions, covering M3U file handling, music file validation, and contact capture template finalization: - Tests for appending tracks to M3U files Tests for recursive music - collection Tests for completion table creation Tests for - extracting M3U basenames and files Tests for M3U file parsing - Tests for filename sanitization Tests for directory and file - validity checks Tests for org-contacts capture template - finalization Each test validates normal, boundary, and error conditions. These tests improve code reliability by verifying expected behavior across a range of scenarios.
2025-11-03feat: Upgrade diff-buffer-with-file to ediff and add difftastic for gitCraig Jennings
Two improvements for better diff experience: 1. **Upgraded cj/diff-buffer-with-file to use ediff** (custom-buffer-file.el) - Replaced basic unified diff with ediff-current-file - Now uses existing ediff config (horizontal split, j/k navigation) - C-; b D now launches interactive ediff instead of text diff - Simplified from 17 lines to 5 lines - Removed TODO comment about difftastic integration 2. **Added difftastic for git diffs** (vc-config.el) - Installed binary: difftastic 0.64.0 via pacman - Added difftastic.el package integrated with magit - Keybindings in magit-diff: - D → difftastic-magit-diff (dwim) - S → difftastic-magit-show - Provides structural, language-aware diffs for git changes - Better visualization of code structure changes **Result:** - Buffer vs file: Interactive ediff (can navigate, merge, revert) - Git history: Structural difftastic (language-aware visualization) - Right tool for each job Serves Method 3: "Make Fixing Emacs Frictionless" - Better diffs = easier debugging and code review Updated todo.org: Method 1 progress 7/13 (was 5/13) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03chore: Remove unused go-ts-mode-map forward declarationsCraig Jennings
Cleanup of already-fixed issue from commit 196b289. **Background:** - Bug was already fixed on Nov 2, 2025 (commit 196b289) - Original error: "void-variable go-ts-mode-map" - Fix moved keybindings from :bind clause to hook function - Keybindings now set after mode loads via cj/go-mode-keybindings **This Cleanup:** - Removed unused forward declarations (lines 34-35): - (defvar go-ts-mode-map) - (defvar go-mod-ts-mode-map) - These were artifacts from the original buggy implementation - No longer needed since keybindings use local-set-key in hook **Testing:** - ✓ File compiles cleanly without warnings - ✓ No references to these variables exist in codebase - ✓ Keybindings work correctly via hook function Updated todo.org to mark task as complete, documenting that it was already fixed and today's work was just cleanup. Serves Method 1: "Make Using Emacs Frictionless" - Quick win: ~2 minutes (just cleanup) - Reduces code clutter 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03fix: Implement missing cj/goto-git-gutter-diff-hunks functionCraig Jennings
Fixes void-function error when pressing C-; v d keybinding. **The Problem:** - Keybinding C-; v d referenced undefined function - Caused "Symbol's function definition is void" error - Prevented interactive jumping to git diff hunks **The Solution:** - Added cj/goto-git-gutter-diff-hunks to modules/vc-config.el - Uses consult-line with regex ^[+\-] to find diff markers - Enables interactive selection of any changed line in buffer - Properly documented with descriptive docstring **Function:** ```elisp (defun cj/goto-git-gutter-diff-hunks () "Jump to git-gutter diff hunks using consult. Searches for lines starting with + or - (diff markers) and allows interactive selection to jump to any changed line in the buffer." (interactive) (require 'git-gutter) (consult-line "^[+\\-]")) ``` **Testing:** - ✓ No linting issues (checkdoc clean) - ✓ Compiles cleanly (byte-compile warnings are expected deferred loads) - ✓ Function follows existing code patterns Serves Method 1: "Make Using Emacs Frictionless" - Quick win: estimated 15 min, actual 5 min - Removes error and enables useful git workflow feature Updated todo.org to mark task complete. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03refactor: Replace doom-modeline with mood-line and remove deprecated tree-sitterCraig Jennings
Method 2 improvements for cleaner, faster configuration: 1. **Replaced doom-modeline with mood-line** (modules/modeline-config.el) - Simplified from 70+ lines to ~10 lines (-40 lines net) - mood-line is lightweight, minimal, inspired by doom-modeline - Better performance with no dependencies - Keeps all essential features: buffer status, major mode, VCS, flycheck, cursor position, multiple-cursors counters 2. **Removed deprecated tree-sitter package** (modules/prog-general.el) - Deleted `(use-package tree-sitter)` - Now relies solely on Emacs 29+ built-in treesit with treesit-auto - treesit-auto continues to manage grammars automatically - No functionality lost, cleaner dependency tree Both changes serve Method 2: "Stop Problems Before They Appear" - Simpler code = fewer bugs - Fewer dependencies = less maintenance - Native features = better integration Updated todo.org to mark both tasks complete [2/5 in Method 2]. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03docs: Mark video-audio-recording tasks as complete in todo.orgCraig Jennings
Completed tasks: ✅ Fix video/audio recording module [#B] ✅ Add diagnostic command cj/recording-list-devices [#A] ✅ Add device selection UI [#A] ✅ Improve error messages [#B] ✅ Make device detection more flexible [#B] ✅ Add comprehensive test coverage [#A] Work summary: - Created 2 device selection workflows (manual + quick call setup) - Implemented smart device grouping with Bluetooth MAC normalization - Added diagnostic listing command - Built comprehensive test suite (9 files, 83 tests, 100% pass) - Refactored code for testability - Fixed all linting warnings Remaining open: - Validate recording startup [#B] - Add device testing command [#C] - Recording status display, presets, history (all [#C]) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03feat: Add device selection and diagnostics to recording moduleCraig Jennings
Add interactive device selection to fix recording with multiple audio devices. New features: - cj/recording-list-devices (C-; r d) - Show all available audio sources - cj/recording-select-devices (C-; r s) - Interactively select mic/monitor - cj/recording-parse-sources - Parse pactl output into structured data - Enhanced cj/recording-get-devices with graceful fallback to manual selection Improvements: - Works with PulseAudio and PipeWire - Supports USB devices (Jabra SPEAK 510) - Supports Bluetooth devices - Supports built-in laptop audio - Shows device state (RUNNING, SUSPENDED) during selection - Better error messages with actionable suggestions - Device selection persists across recordings Fixes recording breakage when plugging in external audio interfaces. Addresses Method 1 (Make Using Emacs Frictionless) from V2MOM. Closes #[#B] Fix video/audio recording module sub-tasks: - Add diagnostic command - Add device selection UI - Improve error messages - Make device detection more flexible 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03fix: Swap print keybinding and add confirmation promptCraig Jennings
Print operations are now safer and more intuitive: Keybinding changes: - C-; b p → copy file path (safe, common action) - C-; b P → print to PostScript (dramatic, requires shift) Print function improvements: - Add y-or-n-p confirmation before printing - C-u prefix skips confirmation and enables color printing - Prevents accidental waste of paper/toner Serves V2MOM Values: - Intuitive: Dramatic actions require shift key - Intuitive: Prevents muscle memory mistakes - Simple: Reliability through confirmation Also updated docs/NOTES.org with Makefile availability note. Closes inbox items from emacs-inbox-zero session (2025-11-03). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-01chore: Update todo.org with new inbox items and music-config improvementsCraig Jennings
todo.org updates: - Added 2 new inbox items about printing keybindings - Reordered Method 1 tasks by priority - Removed blank lines (linter formatting) music-config.el improvements: - Added validation checks to cj/music--valid-file-p and cj/music--valid-directory-p - Fixed regex escaping in cj/music--m3u-file-tracks - Added new cj/music--append-track-to-m3u-file function for testing 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-01feat: Add session workflow framework and complete first inbox zeroCraig Jennings
Created emacs-inbox-zero session definition and validated it by executing the workflow. Processed 5 inbox items to zero in 10 minutes. Session Framework: - Created docs/sessions/ directory for session definitions - Added create-session.org (meta-workflow for creating sessions) - Added emacs-inbox-zero.org (weekly inbox processing workflow) - Updated NOTES.org with terminology and session tracking Inbox Zero Results: - Deleted 1 duplicate task (chime fix) - Moved 2 to Method 1: org-capture performance [#B], EMMS keybindings [#D] - Moved 2 to someday-maybe: dashboard icons, persistence files - Recognized perfectionism pattern (V2MOM Obstacle #4) Learnings captured in living documents: - Save Q&A answers incrementally during session creation - Capture useful context during triage (impact estimates, theories) - Validation by execution catches what theory misses Files reorganized: - Renamed docs files to UPPERCASE for consistency - Removed SESSION-HANDOFF-ACTIVE-PROJECT.org (replaced by NOTES.org) V2MOM Metrics fulfilled: - Weekly triage consistency: ✓ (2025-11-01) - Active todo count: 29 items (working toward < 20) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-01admin: adding to inboxCraig Jennings
2025-11-01admin: rework todo to focus on the v2momCraig Jennings
- wrote a v2mom about what the config should deliver - focused the inbox only on tasks related to the v2mom - moved all other tasks to someday-maybe
2025-10-31docs: Add active project handoff documentsCraig Jennings
Introduce detailed session handoff documents for Craig's Emacs configuration project. These provide strategic clarity using the V2MOM framework and outline current progress, project goals, recommended actions, and key insights. This addition aims to streamline handovers and ensure continuity between sessions, facilitating a systematic approach to addressing identified challenges and opportunities for improvement.
2025-10-26updated tasksCraig Jennings
2025-10-26updated tasksCraig Jennings
2025-10-23updated tasksCraig Jennings
2025-10-20updated tasksCraig Jennings
2025-10-18updated tasksCraig Jennings
2025-10-18updated tasksCraig Jennings
2025-10-17updated tasksCraig Jennings
2025-10-15updated tasksCraig Jennings
2025-10-15updated tasksCraig Jennings
2025-10-12updating tasksCraig Jennings
2025-10-12updating tasksCraig Jennings
2025-10-12maint: remaining custom functions grouped into separate modulesCraig Jennings
2025-10-12changing repositoriesCraig Jennings