nightly_resolution_job() is called with 1 argument and needs 2 — VYNDR Nightly Resolution dies on every run #1
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Pre-existing defect. Not caused by anything outside this repo, and nothing outside this repo fixes it.
It surfaced on 2026-08-13, when a Gitea Actions runner came online on the forge for the first time and VYNDR's dormant cron workflows became live. That runner has since been re-scoped to
builtbykev/colyraonly, so VYNDR's schedules will not execute again until VYNDR has a runner of its own — at which point this fails on the first nightly. Filing it now so it is not rediscovered as a mystery then.The defect
.github/workflows/vyndr-nightly.yml:32calls the job with one argument:The function takes two required parameters —
src/services/python/blueprints/resolution.py:245:Observed at
2026-08-13T07:00:43Z(Actions task 8, commit0657b71):It writes no data
The call fails before the function body runs, so no Supabase client is built and no row is touched. Independently of that, the step's env arrived empty — the log shows bare
SUPABASE_URL:,SUPABASE_SERVICE_KEY:,ODDS_API_KEY:,SHADOW_MODE:, because no repository secrets are set for this repo on this forge. There is nothing to clean up.It is not a one-line fix
There is nothing at the call site to pass. The repo has no Python-side query for unresolved grades; the equivalent read is JS —
src/routes/grading.js:231pulls unresolved props for a game from Supabase. So the fix is a decision about where the Python job gets its input:if __name__ == '__main__') instead of an inlinepython -c, orRelated, and worth deciding in the same pass: the call passes no
get_odds_fn, which defaults toNone, so CLV and model/market alignment would be skipped silently on every run even once the signature is satisfied.The other five schedules are in the same position
security-scan,vyndr-morning-odds,vyndr-pregame,vyndr-reporter-pollandvyndr-weatherall live under.github/workflows/— Gitea reads that directory as well as.gitea/workflows/. Whatever runner VYNDR is given will fire all six on their crons, with no repository secrets set. Worth deciding whether these schedules should be live on this forge at all before pointing a runner at it.