Pushes to main already trigger a full run, so code changes were covered. What was not: the live tests depend on external state that drifts with no commit at all — the LiteLLM budget filling up, a model withdrawn from the proxy, a token revoked or expired. A nightly run against the default branch surfaces that the morning it happens instead of mid-task. workflow_dispatch adds a manual trigger, which also removes the need for the empty-commit trick used earlier to pick up new secrets. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>