You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Filler condition rows (#420) — pregame/postgame/idle filler content now supports full condition-row editors with is_final/is_not_final evaluators, per-field selection, and cascade-on-empty; starter templates re-authored natively on the new system
EPG-style timeline preview in the template builder (#416) — see your channel's guide timeline as you edit, with the winning filler condition row rendered in place and fires/outranked badges on every row (#428)
Template builder authoring workflow (#400) — guide-card preview, header preview controls, and a guided create flow
Conditional title & subtitle rows (#370) — conditional rows can now override title and subtitle per-field, not just descriptions
All-Star game matching (#433) — league All-Star events now match in event EPG
Combat live-sample cascade (#260) — template previews prefer a finished card, then scheduled, then static samples
Live stream pinning (#232) — a live event's #1 stream is pinned against re-generation rewrites; new streams append below
🐛 Bug Fixes
Custom extraction patterns now work for tennis groups, and the builtin parser handles Surname, First - Surname, First stream names — thanks @lukenmorris for the detailed report (#439)
No more raw {*.next} braces in guides when a next/last game is missing (#418)
Renamed shadowed combat matchup variable to matchup_combat; duplicate variable registration now fails at import (#411)
Zombie league codes are dropped on subscription save, with stale slugs surfaced in the UI (#408)
Category input no longer swallows text matching checkbox names; 'Sports event' seeded (#423)
Racing matching hardened: matches scoped to the series the stream names, F2/F3/Formula E blocked from binding to F1 events, WEC matchable, session fan-out scoped by stream-name labels, EPG racing matches anchored to the programme's broadcast instant
⚡ Enhancements
Generation-loop performance: parallel EPG index fetch, negative caching, per-run consolidation, EPG plan memoization, and windowed stream re-add — large-library runs are significantly faster
Compact Managed Channels event format — abbreviated matchup + provider event id (#403)
Backup service hardened against path traversal (#397)
🎨 UI/UX
Template builder sidebar disclosures unified on collapsible sections (#414)
Pattern Tester and group-form regex hints aligned — both named-group syntaxes accepted (#439)
🔧 Under the Hood
Starter→XMLTV golden snapshot suite pins end-to-end EPG output for all 10 starter templates (#375)
Registry-driven sweep test proves all 260 template variables and 33 condition evaluators work (#437)