A1 Export columns shifted (critical):
- V25 LLM occasionally emits 12/13-col tables with Copy Type/Char Limit prefix
- Parser now anchors on "Option 1" header position; robust to any prefix shift
- Verified with 23/23 unit tests covering 11/12/13-col variants
- Source-line block in prompt no longer uses pipe separators (defence in depth)
A2 Linguistic summary fallback:
- Drop the metadata key/value table fallback on Tab 2
- Show "No linguistic summary was generated" when the agent didn't produce one
A3 Dashboard stuck on "Running":
- useJobs / useJob now poll every 5s while any job/locale is in an active state
- Stops polling once everything is COMPLETED or ERROR
B1 TM auto-config: respect empty selection
- Send no TM files when user unchecks all (was auto-adding campaign channel)
- Backend distinguishes empty list vs missing field
B2 Auto-discover channels from TM registry:
- New GET /api/v1/files/tm/channels endpoint reads distinct channels from registry
- Frontend StepConfigure fetches channels per client; falls back to static list
- Pipeline TM resolution falls back to flat_<Channel>_<lc>.json pattern for any
registered channel (no hardcoded map needed for new channels like PrimeCBM)
B3 Job inputs visible on monitoring:
- New "Inputs sent to the agent" card on /jobs/[id] showing AI model, TM files,
supplementary file list, and context override
- New GET /api/v1/jobs/{id}/supplementary endpoint listing on-disk supplementary files
C1 Context cap (large briefs truncating):
- max_tokens scales with source line count (8k/16k/32k/64k by tier)
- 172-line briefs now have ~64k output budget instead of fixed 16k
D1 Reviewer comments in xlsx export:
- Export endpoint now copies xlsx to temp path on download, queries Feedback
joined with User, and appends "Reviewer (Name): comment" to the rationale
cells of options that have feedback
- Original generated file remains untouched
D2 Hide Clients & Voice from sidebar (page still reachable by URL)
D3 Remove dead notifications + settings icons from header
D4 Cost by Locale table added to Analytics with total + avg cost per brief
Makefile seed target now also runs register_storage_files so TM registry is
populated from disk on first setup (deploy.sh already does this via --init).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
36 lines
696 B
Makefile
36 lines
696 B
Makefile
.PHONY: up down build migrate seed test shell logs
|
|
|
|
up:
|
|
docker compose up -d
|
|
|
|
down:
|
|
docker compose down
|
|
|
|
build:
|
|
docker compose build
|
|
|
|
migrate:
|
|
docker compose exec backend alembic upgrade head
|
|
|
|
seed:
|
|
docker compose exec backend python -m seed.create_default_client
|
|
docker compose exec backend python -m seed.create_test_users
|
|
docker compose exec backend python -m seed.register_storage_files
|
|
|
|
test:
|
|
docker compose exec backend python -m pytest tests/ -v
|
|
|
|
shell:
|
|
docker compose exec backend bash
|
|
|
|
logs:
|
|
docker compose logs -f
|
|
|
|
restart:
|
|
docker compose restart backend celery_worker
|
|
|
|
db-shell:
|
|
docker compose exec db psql -U transcreation
|
|
|
|
redis-cli:
|
|
docker compose exec redis redis-cli
|