- Default refresh interval is now 10s (configurable via -refresh / MTA_REFRESH_SEC)
- Press a line key (1-7, A-Z, I for SI) to view stations with trains or arrivals
- Fetches GTFS-RT trip updates per line group for live station activity
- Embeds GTFS stops.txt for station names and line ordering
Co-authored-by: Jason Hall <imjasonh@users.noreply.github.com>
Go SSH server that fetches MTA GTFS-RT subway alerts and renders a
live-updating service status board with official per-line colors.
Uses the MTA service status box algorithm (highest sort_order wins per
route). Includes test fixture for offline dev and -render-once flag.
Co-authored-by: Jason Hall <imjasonh@users.noreply.github.com>
When CI is pending, the reconciler now returns RequeueAfterSeconds: 60
to poll for CI completion every minute, instead of relying on check_run
events which are difficult to route through the workqueue.
- Remove check-run-workqueue from trigger.tf
- Remove processCheckRunEvent and related parsing code
- Add requeue when CIFixPending is true
- Update agent.md to remove check_run event documentation
The github-events trampoline sets event.SetSubject(repoFullName) which
becomes ce-subject attribute, but does NOT set a 'repo' extension.
- Change extension_key from 'repo' to 'subject' for check-run-workqueue
- Rename parseRepoURL to parseRepoKey to handle both URL and subject formats
- Add tests for subject format (owner/repo)
This allows check_run completion events to flow through the workqueue
and trigger CI fixer reconciliation.
When a push event triggers reconciliation, the GitHub workflow may not
have started yet, resulting in 0 checks. Previously this was treated
as 'all checks passing'. Now we treat it as pending and wait for checks
to start.
- Show 'Waiting for CI to complete' when pending instead of success
- Distinguish 'CI passing after fix' from 'CI is passing' (no fix needed)
- Show turns attempted for all states
- Clearer messaging overall
The github-events module doesn't set pullrequesturl for check_run events,
so they don't trigger the PR workqueue. This adds a separate workqueue that
listens for check_run completion events keyed by repo URL.
When a check_run event is received, the reconciler:
1. Lists open PRs with the ci-autofix label
2. Processes each one to re-evaluate CI status
Also keeps check run status as in_progress while waiting for CI.