mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-10 18:03:47 +00:00
faca1a1c76
Cuts the risk surface of the run history feature while keeping what it delivers. Stability: - Sidecar writes were happening on every event stop, and each write serialised the project's entire history. That put work proportional to everything that ever ran onto the show critical path, growing without bound. Writes during a run are now coalesced, with immediate writes for anything a user did and a flush on finish, project change and shutdown. - The editor no longer carries any of this feature's code. The per event last run chip is gone, so RundownEventChip, RundownEventInner and useProjectRundowns are back to their previous state. Each rundown row had gained two extra query subscriptions, one of them polling. - closeRun is no longer called from runtime.service, so the timer path is untouched. Ending a run is now explicit, which also means a mid show stop and restart no longer splits one show across two runs. Discovery: - A run indicator in the editor overview appears only while a run is being recorded. It shows when recording started and carries the Finish action, then links to the report. One component with one subscription, rather than anything per row. Smaller: - report.parser drops from exhaustive validation of a file we write ourselves to a shallow shape check; the failure mode is unchanged. - getCombinedReport returns to its original shape, keeping only the snapshot read that report accuracy depends on. - Removes getLatestRun and GET /runs/latest, which only existed for the chip, and hand rolled refetches the api layer already covers. Production diff is down from ~1460 to ~1290 lines, and the four floating promises the previous revision introduced are gone. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019nr3FbLbM8gB8Jm771YgTV