Repository navigation
feat(tri pr ready): --why compares what a pre-existing failure printed - #5853
Merged
Merged
Conversation
… missed it `tri pr ready 5826` said CANNOT TELL (exit 3) on fpga-conformance: "did not run on any recent master commit". It had: master's newest run of FPGA E2E Build at e7ed379 failed that job, 21 commits back; the walk reads 15. Only for a failure neither the walk nor the merged-PR baseline observed: details_url -> run -> workflow -> its newest completed default-branch runs (page 10, page-fill guarded), read one at a time until a job of the same name reached success/failure/timed_out. Cancelled and skipped are passed over. Red there is pre-existing, green there is new here, nothing there stays NO BASELINE and says how far it looked. An API error leaves the check without a baseline: CANNOT TELL, never safe. The walk is unchanged. Real run: tri pr ready 5826 -> exit 0, citing e7ed379 and its age. 8 new tests (53 in prcheck), 7 mutations each red. Census: fetches moved 69 -> 72 lines, fetch sites 28 -> 31 (--paginate 7 -> 9, page-fill guarded 10 -> 11) -- the three new reads, every one complete or guarded; unguarded buckets unchanged. Blessed here. Closes #5837 Refs #5786 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A check red on master under the same NAME was called pre-existing, whatever its step printed. A pull request that adds a fifth conflicted type name to the Corpus ratchet read exactly like one that adds nothing. --why (off by default) fetches the failing step's own output from both jobs -- this pull request's and the one the baseline used -- masks timestamps, colour codes, durations, shas and long ids, and compares each side's last 60 lines against the other side's whole output. A line not found as itself is looked for by its shape (digits read as #): it is printed for a person, not judged, because a count moves when the cause does not (#5663: observed 78 vs 81, a subset of master's names). NEW REASON is exit 7; precedence 2 > 3 > 1 > 7 > 0; --merge refuses. Live: #5781 NEW REASON (+ ModuleInterface), exit 7; #5663 SAME REASON, fewer, exit 0; #5812 NEW REASON (another step), exit 7. Tests: 6 new in prcheck::why_tests + the verdict test now calls the real verdict_code (59 in prcheck). 16 mutations, each red. Census: fetches 72 -> 74 lines, 31 -> 33 fetch sites, --paginate 9 -> 11 (failing_jobs_on, failing_job_in_run). Blessed here. Closes #5852 Refs #5837 #5839 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
|
📓 NotebookLM Notebook linked to this PR
This notebook contains session context, decisions, and artifacts for this work. |
This was referenced Oct 4, 2026
Merged
Merged
Merged
This was referenced Oct 4, 2026
#5839 (this branch's base) was squash-merged. This merge takes master as it is and re-applies only this branch's own change over 37836b4, so the PR diff against master is exactly the --why work. tools/census re-blessed with `tri census pin --bless`: fetches 72 -> 74 sites, 31 -> 33 fetch sites, --paginate 9 -> 11, the same numbers this PR pinned over its base. `tri census pin --gate` PASS; `cargo test -p tri prcheck` 59 passed. Refs #5852 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
gHashTag
changed the base branch from
feat/tri-pr-ready-workflow-baseline
to
master
October 4, 2026 08:22
Contributor
|
📓 NotebookLM Notebook linked to this PR
This notebook contains session context, decisions, and artifacts for this work. |
This was referenced Oct 4, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
tri pr ready --why: a failure called pre-existing because a check of the same name is red on master (or a merged PR, or its workflow's newest master run) is now also compared by what its failing step printed. A different step, or a line here whose shape is not printed there, isNEW REASON-- its own verdict, exit 7.Closes #5852
Refs #5837 #5839 (stacked on #5839: base is
feat/tri-pr-ready-workflow-baseline)Why
The Corpus ratchet is red on master for four conflicted type names. A pull request that adds a fifth printed the same four
##[error]lines and read as "pre-existing". The difference is in the step's output above the annotations.How
##[endgroup]to the first##[error].#) and printed as~ here / there, not judged: a count moves when the cause does not.--mergerefuses on 7. A comparison that cannot run (not Actions, log expired) is listed as not established and leaves the verdict alone.Measured (real runs, 2026-10-04, against the committed binary or the same code)
tri pr ready 5781 --repo gHashTag/t27 --why:exit 7.
#5663(one of master's four names,observed 78):SAME REASON, fewer -- its last 5 line(s) are printed there too, the 78/81 line printed under(1 of them with other numbers -- read, not judged:), exit 0. The first draft compared counts as words and would have called this NEW -- found by scanning the 24 open PRs with a failing ratchet before trusting the rule.#5812:NEW REASON,the failing step differs:Run the corpus ratchethere, exit 7.#5849,#5839,#5828,#5824: every comparison SAME (master walk, merged-PR and workflow-fallback paths each exercised on #5839). About 85 s per PR.Tests
prcheck::why_tests, on a fixture shaped like job 111329604306's log; the verdict test now calls the realverdict_code.cargo test -p tri prcheck: 59 passed.tri census pin --gate:fetches72 -> 74 lines, 31 -> 33 fetch sites,--paginate9 -> 11 (failing_jobs_on,failing_job_in_run), blessed in this commit.tri gates tests --gateandtri now checkpass.Not established
##[error]; a reason only in an artifact or summary; logs past retention (read as cannot compare).cargo test -p triwas not run locally (its fpga Lean tests clone mathlib4); CI runs it.🤖 Generated with Claude Code