Skip to content

fix: show a merge request whose pipeline failed, was canceled or never ran as on you - #18

Merged
TomyCesaille merged 2 commits into
mainfrom
failed-pipeline-on-you
Oct 29, 2026
Merged

TomyCesaille merged 2 commits into
mainfrom
failed-pipeline-on-you

Conversation

@TomyCesaille

@TomyCesaille TomyCesaille commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

Closes #15.

GitLab (prtop/forges/gitlab.py): on ci_must_pass, the status comes from head_pipeline.status in the merge request _hydrate already fetches. No extra call.

  • failed reads as ❌ CI failed, canceled and canceling as 🛑 CI canceled, and a missing pipeline as 💤 no pipeline. All three are marked !.
  • created, scheduled and the running statuses read as ⏳ CI running, marked .. GitLab reports a pipeline that is still running as ci_still_running, so these cover a pipeline about to start.
  • Any other status, such as manual or skipped, shows as ❔ pipeline <status>, marked ?, like any state prtop does not map.

GitHub (prtop/forges/github.py): it had the same gap. A blocked pull request whose required checks report FAILURE or ERROR now reads as ❌ CI failed, marked !. EXPECTED, a required check that has not reported yet, stays CI running: GitHub cannot tell a check about to start from one that never will.

  • CI must pass leaves the vocabulary (model.CI_MUST_PASS).
  • ❌ keeps a single meaning, a run that failed, now in three scopes. test_a_glyph_never_carries_two_meanings_in_the_status_column lists model.CI_FAILED beside the two deploy states.
  • examples/claude-code/commands/prs.md tells an agent what to do with each new status, with the glab and gh calls. It reads the failed job's log, fixes what the change broke or retries a flaky job, retries a canceled pipeline, and starts a missing one.

Docs: AGENTS.md's conventions ask every pull request that changes what a user sees or runs for its CHANGELOG.md line, under [Unreleased], in the same pull request. Until now only CONTRIBUTING.md said so. CHANGELOG.md gets back the blank line after ### Changed.

@TomyCesaille TomyCesaille self-assigned this Oct 28, 2026
@TomyCesaille
TomyCesaille marked this pull request as ready for review October 29, 2026 09:29
@TomyCesaille
TomyCesaille merged commit 4c42b03 into main Oct 29, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GitLab: a merge request whose pipeline failed or never ran shows as a machine state

1 participant