Development summary
v1.8 — Quality, Reach & Decisions shipped.
All ten proposed candidates were approved and shipped in one wave on June 11, 2026: deeper signal quality (prosody, glossary, claim guard), a semantic layer over the catalogue (Atlas search), more reach from every video (quote cards, best-time, prompt A/B, Shorts Direct), and stronger decision support (Helm Briefing, client report links). Every card was tracked through the Threlmark board with started/done reports.
typecheck + lint + tests + build cleanVerification
pnpm typecheck # tsc --noEmit — clean pnpm lint # biome — clean pnpm test # full unit suite green pnpm build # production build — clean pnpm db:migrate # migrations 0028 + 0029 applied + verified
What shipped
Quality & intelligence
- Prosody: real energy + emphasis per window (pure TS, no new Python).
- Brand glossary fixes Whisper mishearings everywhere downstream.
- Claim guard: per-claim fact-check verdicts + Studio warning badge.
- Atlas v2: local embeddings → "Ask your catalogue" semantic search.
Reach & publishing
- Quote cards: strongest lines as branded 1080×1080 images.
- Best-time-to-post: learned posting windows pre-fill the schedulers.
- Prompt-version A/B: prompts compete on real view signals.
- YouTube Direct Shorts: per-clip upload via the brand's own OAuth.
Business & decisions
- Helm Briefing: deterministic weekly digest per brand at /briefing.
- Client report links: expiring read-only performance page per brand.
- Costs and budgets stay operator-only — never in client reports.
Data model
Migration
0028_v18_wave.sql: brands.glossary, atlas_embeddings (emb_), briefings (brf_). Migration 0029_prompt_experiments.sql: nullable experiments.package_id/video_id + new asset_type. New job kinds: quote_cards, weekly_briefing.Operational rules preserved
Prosody and embedding syncs are best-effort and never fail their producing workers. The glossary rewrites transcript text only — timings are immutable. Prompt-A/B winners are reported, never auto-applied. Shorts Direct falls back to Zernio rather than failing silently. Client reports never read the Helm Ledger.