Skip to content

discord_pr: a reopened PR sends nothing #9

Description

@bjornars

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions