Supervisor UI failures pane 500: template crashes on NULL run.output #35
Labels
No labels
blocked:needs-decision
bug
chore
cron
design
in-progress
infra
milestone
module-o
needs-decompose
needs-research
ops-task
pm
quickfix
security/medium
triage-approved
vikunja
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/org_mode#35
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
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?
Supervisor UI failures pane returns HTTP 500 (pre-existing, unrelated to forgejo pane config).
GET /ui/api/failures -> 500 Internal Server Error
{{ run.output[:500] | e }} TypeError: 'NoneType' object is not subscriptableTraceback: failures_partial.html:47
Ledger has 3010 failed runs with NULL output out of 3012 total failed runs, so any failed run without captured output crashes the pane render. Pane has never returned 200 in journal history since template shipped (commit
05b254e'feat: Created runs_partial.html and failures_partial.html').Fix: guard run.output with default (e.g. run.output or '') in the template.
Found while verifying Supervisor UI Forgejo pane (vikunja#116, kanban t_9f3f8d9c).
Launcher preflight blocked Mark/org_mode#35:
.gsd/gates/pre-dispatch.sh 35exited 1 because the worktree has uncommitted changes outside.gsd/,.venv/, and.kilo/. No kilo-gsd run was started. The launcher will not stash, revert, or edit unrelated work.Correction to the preflight comment: the gate was re-run from
/home/b/Projects/org_mode. It still exits 1 because of three unrelated uncommitted paths:docs/operational/2026-09-11-ops-review.md,docs/triage-aware-runner-proposal.md, andworkers/lib/hermes-gateway-log-scan.py. No kilo-gsd worker was started.Fixed in commit. Closing.
Fixed by commit
d8b01caon main. failures_partial.html line 47 now binds run.output through a default-empty local so NULL output no longer crashes the pane render. /ui/api/failures should return 200 for the 3010 failed runs with NULL output in the ledger.