heartbeat.yml: a ready label should start a tick on Gitea (the labeled runs are all skipped) #126

Open
opened 2026-10-18 04:59:21 +00:00 by teahubxyz · 0 comments
Owner

heartbeat.yml says it runs "right away when a card gets ready", but on teahub.xyz every issues: labeled run ends skipped (runs 709–718, 752, 828 today), so a card labelled ready waits for the hourly tick or a hand dispatch. The job's if: reads github.event.label.name; Gitea's issues webhook payload for a label change may not carry label at the top level (it sends action: label_updated and the issue's full labels list), so the condition is false and the job skips.

  • Check the payload Gitea sends for a label change (GITHUB_EVENT_PATH in a throwaway step on a workflow_dispatch is the quickest way to see it, or Gitea's webhook docs for issues with action: label_updated).
  • Rewrite the if: so a tick starts when ready or spec is among the issue's labels after the change (contains(join(github.event.issue.labels.*.name, ','), 'ready') or the Gitea equivalent), and still skips other label changes.
  • Workflow files are a CEO/owner merge: open the PR against main and label it needs-human; do not try to merge it.

DONE: PR open with the corrected trigger and a note in the PR body showing the payload field it keys on; CI green.

`heartbeat.yml` says it runs "right away when a card gets `ready`", but on teahub.xyz every `issues: labeled` run ends `skipped` (runs 709–718, 752, 828 today), so a card labelled `ready` waits for the hourly tick or a hand dispatch. The job's `if:` reads `github.event.label.name`; Gitea's `issues` webhook payload for a label change may not carry `label` at the top level (it sends `action: label_updated` and the issue's full `labels` list), so the condition is false and the job skips. - Check the payload Gitea sends for a label change (`GITHUB_EVENT_PATH` in a throwaway step on a `workflow_dispatch` is the quickest way to see it, or Gitea's webhook docs for `issues` with `action: label_updated`). - Rewrite the `if:` so a tick starts when `ready` or `spec` is among the issue's labels after the change (`contains(join(github.event.issue.labels.*.name, ','), 'ready')` or the Gitea equivalent), and still skips other label changes. - Workflow files are a CEO/owner merge: open the PR against `main` and label it `needs-human`; do not try to merge it. DONE: PR open with the corrected trigger and a note in the PR body showing the payload field it keys on; CI green.
teahubxyz added the planned label 2026-10-18 04:59:21 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: teahubxyz/time#126