generated from john/python-template
Pure remediation; no behavior change. Every item traces to a finding in docs/architecture_code_review_2026-08-17.md. Deletions - Delete app_state.py, which had zero importers and whose get_session_factory raised TypeError at runtime [HIGH-01]. - Delete services/transcription.py and point build_prompt_execution imports at services/sources.py; drop the store.py compatibility aliases [MED-05]. - Delete ServiceBase.queue and its unparameterized asyncio.Queue [MED-07]. - Delete db/operations.get_next_queued_job, a divergent duplicate [CRIT-01]. - Drop the discarded load_docs parameter from list_jobs [LOW-03]. Config - Delete worker_retry_backoff_seconds; no backoff behavior existed anywhere, so wiring it would have been a new feature [MED-02]. - Wire sqlite_check_same_thread through get_engine. The engine hardcoded the setting's own default, so this preserves behavior exactly [MED-02]. - Replace DATABASE_URL in docker-compose.yml with the nested DATABASE__DRIVER / DATABASE__PATH names. Settings uses env_nested_delimiter with extra="ignore", so DATABASE_URL was silently discarded [MED-10]. UI - Move the 23KB inline VIBESCRIBE_LOGO_SVG to ui/static/vibescribe_logo.svg and load it through a cached read_svg sibling of read_css [MED-09]. - Route the portrait upload failure through error_presenter.show_error [LOW-07]. - Cancel the job detail auto-refresh timer instead of only deactivating it, and name its interval constant [LOW-06]. Worker - Make WorkerNotifier runtime_checkable and validate the resolved object in resolve_worker_notifier, which previously returned any non-None attribute unchecked [LOW-04]. Docs and lint - Fix two stale paths in services.instructions.md, one of which pointed at the module deleted here [LOW-02]. - ruff check --fix to zero [LOW-01]. Verified: 264 passed, 4 skipped; ruff check clean. Co-authored-by: Copilot App <[email protected]>
25 lines
646 B
YAML
25 lines
646 B
YAML
services:
|
|
transcription:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: transcription-app
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
# Database configuration uses nested settings names (env_nested_delimiter="__").
|
|
# DATABASE_URL is NOT read by the application and must not be used here.
|
|
DATABASE__DRIVER: sqlite
|
|
DATABASE__PATH: /app/data/transcription.db
|
|
UPLOAD_DIR: /app/uploads
|
|
PROMPT_DIR: /app/prompts
|
|
ports:
|
|
- "8002:8000"
|
|
volumes:
|
|
- ./uploads:/app/uploads
|
|
- transcription_data:/app/data
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
transcription_data:
|