13 Commits

Author SHA1 Message Date
9133532ae8 docs: add BP-10 ntfy notifications blueprint 2026-07-06 22:00:07 -03:00
40adedd82b docs: add local testing guide 2026-07-06 21:53:23 -03:00
63919dd6c3 feat: implement BP-09 web interface 2026-07-06 21:51:12 -03:00
213f16bdbf feat: implement BP-08 library scan and convert 2026-07-06 21:27:06 -03:00
0915c689fe feat: implement BP-07 webhook trigger 2026-07-06 21:18:02 -03:00
27abb91ff3 feat: implement BP-06 lidarr integration 2026-07-06 21:10:12 -03:00
6cf1058107 feat: implement BP-05 job pipeline 2026-07-06 21:04:30 -03:00
b3a7956e98 feat: implement BP-04 audio conversion core 2026-07-06 20:53:16 -03:00
a856850451 feat: implement BP-03 runtime configuration 2026-07-06 20:41:20 -03:00
2dbb0b54a0 feat: implement BP-02 structured logging to SQLite 2026-07-06 20:34:42 -03:00
6ffa161d5f feat: implement BP-01 persistence and models
Add SQLite persistence layer with domain types for jobs, logs, and config.
- internal/models: Job, LogEntry, JobStatus, JobSource types
- internal/store: Store with WAL pragmas, idempotent migrations
- JobRepository, LogRepository, ConfigRepository with full CRUD
- Wire store.New into main.go server startup
- 15 passing tests covering all repositories
2026-07-06 20:27:48 -03:00
83dc242a49 docs: add implementation blueprints for remaining features
Break the remaining work into 9 sequential, self-contained blueprints
for AI agents. Each blueprint covers one feature (mapped to requirements),
with context, dependencies, constraints, tasks and tests, and leaves the
app building, testable and runnable.

- 01 persistence & models (SQLite store, migrations, repositories)
- 02 structured logging to SQLite
- 03 runtime configuration (env + SQLite overrides)
- 04 audio conversion core (transcoder + validator)
- 05 job pipeline (queue + scheduler + worker pool)
- 06 Lidarr integration (rescan client)
- 07 webhook trigger
- 08 library scan & manual convert
- 09 web interface
- README index with order, dependencies and shared DoD
2026-07-06 20:21:23 -03:00
e1a262fec0 feat: scaffold Coda transcoder with docs, dev tooling and web base
Add the initial foundation for Coda, a Go/Docker service that converts
FLAC albums to MP3 320 kbps CBR, triggered by Lidarr webhooks or manually
from the web UI.

- docs: requirements and architecture (SQLite persistence, media volume,
  work window, manual FLAC search, env + web config)
- config: .env loader with env precedence
- web: embed/dev asset split, chi server, index template (DaisyUI + htmx)
- build: Makefile (setup/css/run/build/test/lint), Dockerfile (Tailwind
  standalone CLI + DaisyUI, no Node), .env.example, ignore rules
- docs: AGENTS.md and README for the project
2026-07-06 20:06:25 -03:00