Repository navigation
fix(triage): close the release review's sift findings - #258
Merged
Merged
Conversation
…e's own base A class-1 finding counted as checked at the base on any `git show <ref>:` or the bare word merge-base, so `git show HEAD:x` turned a defect the PR introduced into a deferral and an issue filed without asking. The premise must now name `git show <base>:<path>` for the base the triage was given; with no base, class 1 always goes to a human. The validator prompt names the exact base.
…maintainer's rejection The self-dismissal guard compared logins only, so an outside PR author with a second account could post a remark under one and reject it under the other, and the rejection became a project-wide decision. In a non-craft thread the rejecting reply must now come from an OWNER, MEMBER or COLLABORATOR; the PR author's word still counts in a craft-finding thread.
… reject A batch repeat's ledger row was `reject`, and the fix loop wrote it to the review ledger as `rejected`, so when the twin's fix missed the repeat's line the next re-review carried a real defect as dismissed. The row now names its twin in `repeat_of` (restored over a plan agent that drops it), and the skill maps a repeat by its twin's disposition and never maps a sifted row by its own reject.
Keeps the function under the complexity ceiling after the base check was added.
…alidation pin `base` is the ref the findings were generated against, usually the reviewed head, so citing it showed the PR's own code. A new `prBase` argument names the commit the PR forks from; class 1 counts as checked only on `git show <prBase>:<path>`, and with no prBase it goes to a human. The skill's triage dispatch passes prBase = git merge-base origin/<trunk> <reviewed head>.
…arentheses The prompt asks for `git show <prBase>:<path>` in backticks, and the check refused that form. A backtick, quote or parenthesis may now stand before git; another ref, or one that merely starts with prBase, is still refused.
The develop skill's triage dispatch, the engine's whenToUse and the README now name prBase = git merge-base origin/<trunk> <reviewed head>, so class-1 findings can be deferred outside the addressing-findings flow too.
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.
Closes the Medium findings the full review of release 0.34.0 raised in the triage sift (realm @nick/craft, case №37):
git show <prBase>:path— a newprBaseargument (the PR's fork point; HEAD, other refs and the validation pin do not count; backticked/quoted forms accepted). WithoutprBasethe finding goes to the human. addressing-findings, develop, the engine's docs and README pass/document it (#303, #309).repeat_ofand takes its twin's disposition in the review ledger instead of its own reject (#312)..vitest/ignored.Dropped Low findings:
prBase(fails safe: class 1 goes to the human).prBaseis matched as an exact string, so an abbreviated SHA in the premise reads as unchecked (fails safe).repeat_ofsurvives the plan.