summaryrefslogtreecommitdiff
path: root/todo.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2025-11-06 00:43:13 -0600
committerCraig Jennings <c@cjennings.net>2025-11-06 00:43:13 -0600
commitafb86d5c559413bddf80ff38260d0cf0debb585f (patch)
treed4cae8599898040f4c41f37741f01957658790fc /todo.org
parentd94fca8f36f26c8288a844a3933f464091b33a6a (diff)
feat: Add AssemblyAI transcription backend with speaker diarization
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>
Diffstat (limited to 'todo.org')
-rw-r--r--todo.org23
1 files changed, 23 insertions, 0 deletions
diff --git a/todo.org b/todo.org
index 8958373a..dfaadec7 100644
--- a/todo.org
+++ b/todo.org
@@ -333,6 +333,29 @@ CLOSED: [2025-11-03 Sun]
Result: Better diffs everywhere - ediff for interactive buffer comparison,
difftastic for understanding git changes.
+** TODO [#C] Remove orphaned dwim-shell-security tests and unused production code
+
+Why: 12 tests in test-dwim-shell-security.el fail because the functions they test
+are inside a use-package :config block (dwim-shell-config.el:101-108) that only
+loads when the dwim-shell-command package is available. During batch testing,
+the package isn't loaded, so functions are never defined (void-function errors).
+
+These are PDF password protection and ZIP encryption functions that likely have
+never been used in practice - they're placeholder code from initial setup.
+
+What to delete:
+1. Test file: tests/test-dwim-shell-security.el (12 failing tests)
+2. Production functions in modules/dwim-shell-config.el (lines ~302-347):
+ - cj/dwim-shell-commands-pdf-password-protect (lines 302-324)
+ - cj/dwim-shell-commands-pdf-password-unprotect (lines 326-347)
+ - cj/dwim-shell-commands-create-encrypted-zip (search for it)
+ - cj/dwim-shell-commands-remove-zip-encryption (search for it)
+
+After deletion: Run "make test-all" to confirm 18 failures → 6 failures
+(only benchmark performance tests remain, which are environment-dependent).
+
+Aligns with: Reducing test failures from 18 to 6, cleaning up unused code.
+
* Method 4: Contribute to the Emacs Ecosystem [0/4]
** TODO [#C] Set up package-lint for elisp linting (chime, org-msg, wttrin)