discord_pr.yml's message composer has no branch for reopened, so a reopen falls through to:
else
echo "Unhandled event type. Exiting."
echo "send=false" >> "$GITHUB_OUTPUT"
exit 0
fi
The run goes green having sent nothing, which is why this has been invisible.
Consumers already subscribe to the event. novem-code/gaia added reopened to its trigger list in novem-code/gaia#4009 (merged 2026-08-28) after a close-then-reopen left the channel saying a PR was abandoned when it was open. That fixed gaia's half: the workflow now fires. This side never learned to render it, so the outcome is unchanged — and it now costs a workflow run per reopen to still say nothing.
Measured today on novem-code/gaia, same commit, two minutes apart:
12:44 "closed" Send PR notification to Discord: success
12:46 "reopened" Send PR notification to Discord: skipped
Three gaia PRs were reopened over the course of a day and Discord still shows all three as closed.
The fix is one elif beside the others:
elif [[ "$EVENT_ACTION" == "reopened" ]]; then
ACTION_ICON="<:devpropened:1275356590316322858>"
ACTION_TEXT="has been reopened."
Two things worth deciding rather than inheriting:
- Draft state.
opened branches on PR_DRAFT and picks a different icon and wording; a reopened PR can be a draft too, so it may want the same split.
- The
else is silent. It logs to the step and exits 0, so any future unhandled action fails the same way — green, and quiet. Emitting a warning there would have surfaced this on the first reopen after gaia#4009 landed rather than a fortnight later.
discord_pr.yml's message composer has no branch forreopened, so a reopen falls through to:The run goes green having sent nothing, which is why this has been invisible.
Consumers already subscribe to the event. novem-code/gaia added
reopenedto its trigger list in novem-code/gaia#4009 (merged 2026-08-28) after a close-then-reopen left the channel saying a PR was abandoned when it was open. That fixed gaia's half: the workflow now fires. This side never learned to render it, so the outcome is unchanged — and it now costs a workflow run per reopen to still say nothing.Measured today on novem-code/gaia, same commit, two minutes apart:
Three gaia PRs were reopened over the course of a day and Discord still shows all three as closed.
The fix is one
elifbeside the others:Two things worth deciding rather than inheriting:
openedbranches onPR_DRAFTand picks a different icon and wording; a reopened PR can be a draft too, so it may want the same split.elseis silent. It logs to the step and exits 0, so any future unhandled action fails the same way — green, and quiet. Emitting a warning there would have surfaced this on the first reopen after gaia#4009 landed rather than a fortnight later.