thomas.kopp
|
478a1ac9d0
|
feat: GET /audio/devices, POST /audio/combined — PipeWire source management
|
2026-04-01 20:36:27 +02:00 |
|
thomas.kopp
|
ef4aa2a840
|
feat: AudioRecorder accepts device param — reads audio.device from config
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 20:32:44 +02:00 |
|
thomas.kopp
|
8300851e77
|
feat: remote Whisper via whisper.base_url — OpenAI-compatible upload
|
2026-04-01 20:28:31 +02:00 |
|
thomas.kopp
|
d8c6fc790b
|
fix: define _guest_user() for tray/hotkey-triggered recording
|
2026-04-01 16:00:33 +02:00 |
|
thomas.kopp
|
33ae9dc1d8
|
feat: reprocess existing transcript via Ollama — modal button + POST /transcripts/{filename}/reprocess
|
2026-04-01 14:27:15 +02:00 |
|
thomas.kopp
|
ae3ae61593
|
feat: DELETE /transcripts/{filename} — delete transcript with path-confinement check
|
2026-04-01 14:13:02 +02:00 |
|
thomas.kopp
|
aa3eef8fb1
|
feat: GET /transcripts/{filename} — serve transcript content
|
2026-04-01 14:12:30 +02:00 |
|
thomas.kopp
|
b63f5d59a9
|
fix: read WebSocket token from query_params directly, not function arg
|
2026-04-01 13:22:20 +02:00 |
|
thomas.kopp
|
6e317a9c67
|
fix: error state resettable via mic click, debug logging, pipeline traceback
|
2026-04-01 12:41:45 +02:00 |
|
thomas.kopp
|
6574481647
|
fix: web-based first-run setup — removes terminal input(), works under systemd
|
2026-04-01 12:26:17 +02:00 |
|
thomas.kopp
|
1466a1529f
|
feat: multi-user auth — per-user spaces, pbkdf2 passwords, session tokens, login page
|
2026-04-01 08:39:16 +02:00 |
|
thomas.kopp
|
319db8c788
|
feat: API router + pipeline — toggle, status, transcripts, WebSocket, auth stub
|
2026-04-01 02:26:47 +02:00 |
|
thomas.kopp
|
ad84ad5aa3
|
feat: app state module with status enum and subscriber pattern
|
2026-04-01 02:25:39 +02:00 |
|