Streams the Ollama response token-by-token and stores the full LLM
prompt in the jobs table. A Debug button on each analysis job opens
a modal with two tabs: the sent prompt and the live-updating answer
(polls /jobs/{id}/debug-data every 500 ms while streaming, badge
shows "● live"). Response is persisted to llm_response after the job
completes so it stays viewable afterwards.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Upload page accepts multiple audio files at once
- Project field is a combobox: pick existing or type new name (auto-created)
- Document titles derived from filename without extension
- Files uploaded sequentially with progress bar
- New POST /projects/create-api endpoint (idempotent: returns existing if name matches)
- POST /upload now returns JSON {job_id} instead of HTML redirect
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds an edit mode to the document view: click "Bearbeiten" to switch
from rendered Markdown to a monospace textarea, save via POST
/document/{id}/edit, or cancel to discard changes.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
sqlite3.Row does not support .get() — converting to dict at the source
fixes all current and future call sites uniformly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace static server-rendered job cards with JS-driven polling of
/jobs/data every 3s (active jobs) or 10s (all idle). Cards are
re-rendered client-side, preserving checkbox selection. Polling
accelerates when queued/running jobs exist and resumes on tab focus.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- New tab layout on /run: single-document vs. project-batch mode
- POST /run/project enqueues one analysis job per transcript in a project
- Optional user_prompt field on both modes for extra context to the LLM
- DB migration: adds user_prompt column to jobs table
- LLM prompt builder includes ZUSATZINFOS block when user_prompt is set
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add checkboxes to each row, select-all/deselect-all controls, and a
bulk action bar for moving or deleting multiple documents at once.
New endpoints: POST /documents/bulk-move and /documents/bulk-delete.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>