Skip to content

fix: raise the patchrail floor to 0.5.0 so the action stops annotating wrong answers - #7

Merged
PabloCodes7 merged 1 commit into
mainfrom
fix/patchrail-range-0.5.0
Jul 14, 2026
Merged

fix: raise the patchrail floor to 0.5.0 so the action stops annotating wrong answers#7
PabloCodes7 merged 1 commit into
mainfrom
fix/patchrail-range-0.5.0

Conversation

@PabloCodes7

Copy link
Copy Markdown
Contributor

The default range >=0.3.1,<0.5.0 pins every consumer of this action to 0.4.0 — the last release that reads a tool the job merely named as the cause of death. A GRADLE_HOME= line in an environment table was enough to diagnose a Java build failure in an apache/kafka job that compiled nothing; pip's Collecting mypy was enough to diagnose a type-check failure in a job that never type-checked.

This action writes a confident one-line verdict into a pull request. That is the worst place to be confidently wrong, so the floor moves to 0.5.0, which judges a signal by the line it lands on and says unknown rather than inventing a cause.

The <0.6.0 cap stays: 0.4.0 moved the ci classes JSON from v1 to v2 in a minor bump, which is precisely what the cap holds back.

Verified against PyPI (not a local build)

  • patchrail>=0.5.0,<0.6.0 resolves to 0.5.0
  • 23 tests pass against that resolve
  • ci explain --format json still emits patchrail.ci_result.v1, the contract annotate.py reads
  • Same real kafka log: 0.4.0 → java_build_failure @ 0.53 (wrong) · 0.5.0 → unknown @ 0.15 (honest). A real gradle failure still classifies as java_build_failure @ 0.71.

…g wrong answers

The default range was `>=0.3.1,<0.5.0`, so every consumer of this action installs
0.4.0 — the last release that reads a tool the job merely *named* as the cause of
death. On real logs that is not rare: a `GRADLE_HOME=` line in a Windows
environment table diagnosed a Java build failure in an apache/kafka job that
compiled nothing, and pip's `Collecting mypy==1.17.1` diagnosed a type-check
failure in a job that never type-checked. This action's whole output is a
confident one-line verdict written into someone's pull request, which is the worst
possible place to be confidently wrong.

patchrail 0.5.0 judges a signal by the line it lands on and answers `unknown`
rather than inventing a cause. Floor raised to 0.5.0; the `<0.6.0` cap stays and
keeps doing its job — 0.4.0 moved the `ci classes` JSON from v1 to v2 in a minor
bump, which is exactly what the cap exists to hold back.

Verified against PyPI, not a local build: `patchrail>=0.5.0,<0.6.0` resolves to
0.5.0, the suite passes against it, and `ci explain --format json` still emits
`patchrail.ci_result.v1` — the contract annotate.py reads.
@PabloCodes7
PabloCodes7 merged commit cc6f67d into main Jul 14, 2026
9 of 10 checks passed
@PabloCodes7
PabloCodes7 deleted the fix/patchrail-range-0.5.0 branch July 14, 2026 10:37
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.

1 participant