v0.8.7: update VERSION, README, and code comments

- VERSION bumped to 0.8.7
- README.md: comprehensive update with Gokapi integration, stems radio
  buttons, download button, cost tracking improvements, stepper fixes,
  error recovery, new env vars, new troubleshooting entries
- app.py: updated module docstring with all current routes
- helpers.py: updated module docstring with function group overview,
  added section header for Gokapi integration
- config.py: added Gokapi env vars to docstring
- models.py: updated schema comments for per-version costs and
  stems_link/stems_url distinction
This commit is contained in:
Troll (Hermes Agent) 2026-08-11 21:08:38 +00:00
parent 59d79cd03d
commit 8df735d88c
6 changed files with 119 additions and 40 deletions

View file

@ -10,8 +10,11 @@ Schema overview (see SCHEMA constant):
- requests table stores customer data, generated prompts, file paths,
approval state, email timestamps, payment reference, player token,
vocal gender preference, revision count, revision note, and operator notes.
- MusicGPT integration fields store task/conversion IDs, status, cost, error,
album cover URL, WAV paths, and stems task/cost/URL.
- MusicGPT integration fields store task/conversion IDs, status, per-version
costs (musicgpt_cost_a/b accumulated into musicgpt_cost), error, album cover
URL, WAV paths, and stems task/cost/URL.
- Stems integration: stems_url holds raw CDN URLs from the webhook, stems_link
holds the Gokapi share link (auto-generated on completion or manually uploaded).
- Revisions: when a customer requests changes, the current A/B MP3 files are
renamed to archived "RevN-" copies and new versions are uploaded later.
- operator_notes is an internal column for the booth team and is never shown
@ -54,7 +57,7 @@ CREATE TABLE IF NOT EXISTS requests (
revision_count INTEGER DEFAULT 0,
revision_note TEXT,
operator_notes TEXT,
stems_link TEXT,
stems_link TEXT, -- Gokapi share link for stems (auto-generated, also editable by operator)
stems_interest INTEGER DEFAULT 0,
musicgpt_task_id TEXT, -- MusicGPT Music AI task ID shared by Version A and B
musicgpt_conversion_id_1 TEXT, -- conversion ID for Version A
@ -71,7 +74,7 @@ CREATE TABLE IF NOT EXISTS requests (
stems_task_id TEXT, -- MusicGPT Extraction task ID for optional stems
stems_status TEXT, -- status of the Extraction job
stems_cost REAL, -- API-reported stems cost in USD credits
stems_url TEXT, -- download / share link for stems
stems_url TEXT, -- raw stem URLs from MusicGPT webhook (label: url; label: url)
stems_error TEXT -- error message from stems job
);