Files
OrbitTv/docs/VERIFICATION-0.101.0.md
pauljdandClaude Opus 5.5 0a90314b4f
pauljd/davidson-ci: Davidson CI / quality (push) Failing after 1m49s
pauljd/davidson-ci: Davidson CI / ai-review (push) Failing after 1m29s
Record the 0.101.0 install
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-11-04 18:28:59 +00:00

4.1 KiB
Raw Permalink Blame History

Orbit TV 0.101.0: Living Network Stage C, spotting what's new (report only)

Paul approved building C1 on 4 November 2026 at 18:14. Installing it needs its own approval. Stage C labels what's new and books nothing: every channel's booking fingerprint is identical to 0.100.1. Later, Stage D will suggest slots, and eventually book them itself within each channel's rules, as Paul wants.

What's in it

  • A light daily library refresh (ChannelScheduler.refreshArrivals).
    • Once a day, after 12:00, in the background while Orbit is open, at the end of the hourly top-up round.
    • It reads only the titles the library gained since the catalogue's last position, at most 5 pages (1,000 titles).
    • It uses the existing read-only catalogue import, and adds new rows to the catalogue.
    • Until the whole library has been read once, what it reads is the baseline, not news.
    • A failure changes nothing and is tried again the next hour. The log shows counts only.
  • Arrivals (arrivals-0.json): each new film or series, with its first-seen time and its work identity (TMDB, TVDB or IMDb id, else title and year). Kept one per work, pruned after 90 days and capped at 2,000.
  • New episodes (newepisodes-0.json): at each pool read, episodes a show already on that channel didn't have before.
    • They're matched by season and episode, never by file, so a pool switching copies (American Dad!'s 399 files) finds nothing.
    • A show new to a pool isn't counted as new episodes.
  • Booked works (booked-0.json): the series id of everything any plan books, added at each top-up. It's only read for the report.
  • Settings › New arrivals: a read-only page with four lists. Each line shows its labels and evidence:
    • New to the library: first seen in the last 14 days.
    • Newly released: premiered in the last 60 days, not in the future, read from the catalogue.
    • New episodes on a channel.
    • Not yet shown on Orbit: on a channel's list, never booked since Stage C began.
  • Unchanged: bookings, pools, channel lists, cursors, What's On and presentation.
  • Version: 0.101.0 (versionCode 150).

Checks before install

  • 467 unit tests pass (2 skipped: hand-run replays that need input files), including the network audit on the box's files. Lint has no errors.
  • Six new tests in NewArrivalsTest:
    • one work whichever copy;
    • new episodes by season and episode, not by file, and not for a new show;
    • arrivals keep their first sighting and are pruned;
    • the refresh runs once a day after noon;
    • each label carries its evidence, including that an old film added recently is new to the library but not newly released, and that a future premiere isn't newly released;
    • nothing in Stage C feeds scheduling.
  • Booking fingerprints: the four-week replay of all 30 channels on 0.101.0 is identical to 0.100.1 on every channel.

Known limits

  • First run: arrivals start from the first refresh after install. Titles the library gained since 1 November (the last catalogue import) are recorded then, with that day as first seen.
  • Removed titles: the refresh reads from a position in the library's date-added order. If titles are removed from the library, a new one can occasionally be missed until a full re-read.
  • Not yet shown on Orbit: this is counted from install onwards. Older bookings aren't known, and only works new to the library or newly released are listed.

Installed on the box (4 November 2026, 18:27)

Paul said "just install" while Orbit was playing, so it was interrupted at his word.

  • The 191 schedule-folder files and orbit_settings.xml were copied off first, to Codex/install-0.101.0-20261104-182709, and on the box to no_backup/schedule-rollback-0.100.1.
  • adb install -r succeeded; versionCode 150, 0.101.0-new-arrivals. Sign-in kept.
  • 30 top-up lines, all added=0 clashes=0.
  • Every booking still to air is identical in all 14 plans that changed; each only dropped its one or two aired programmes. Tails unchanged.
  • New files: arrivals-0.json (126 works, first refresh, logged as pages=1 read=129 baseline=true) and booked-0.json (1,740 ids).
  • Not yet seen on the TV: Settings › New arrivals.