ci(nightly-next): watch and retry stale legacy feed

Merged
TE
6d ago
+187-8

Leo said: “I don’t know if they’re fing fixed because I just don’t have the latest fing nightly.”

The scheduled feed watch checked only cmux NEXT, so the compatibility cmux NIGHTLY appcast could stay behind while the legacy signer failed or was cancelled. This change compares the two Nightly feeds, reports a stale compatibility feed, and retries the earliest unpublished legacy job for the run that produced the missing build. Active runs are left alone, and the existing opt-out disables the legacy check.

The live feeds showed build 4123639147801 published to cmux NEXT at 20:27Z while cmux NIGHTLY remained at 4123304565901 from 20:00Z. The guard now identifies that missing build and keeps the scheduled check red until the legacy feed catches up.

Validation: python3 -m unittest tests/test_nightly_next_feed_watch.py (31 passed).

Agent session: agent session
🤖 Generated with Claude Code