fix(review): don't cite a repo review policy that isn't written down - #930
fix(review): don't cite a repo review policy that isn't written down#930tend-agent wants to merge 2 commits into
Conversation
tend-agent
left a comment
There was a problem hiding this comment.
Self-authored, so COMMENT rather than approve. The diagnosis holds — I re-checked the two claims the change rests on and both stand: no hold.for.human|sign off|not an agent hits anywhere under plugins/ or shared/, and the only thing in review/SKILL.md that authorises the withholding is the "flag it for human review as a COMMENT" clause the new paragraph now sits next to.
One scope question worth a maintainer's call before this lands. The bolded lead scopes the rule to a withheld approval, but the mechanism it names — borrowed authority that doesn't exist — isn't specific to withholding, or to reviews. The same shape is available to a triage comment ("per this repo's policy we don't take X"), a mention reply, or an approval rationale, and all of those workflows load running-in-ci, whose §"User-facing comments require source evidence" is where the generic version of this rule already lives. Two defensible placements:
- Keep it here. The observed rate was 3/3 on reviews and nothing else;
running-in-ciloads into every session, so a paragraph there is paid for by every workflow whether or not it reviews anything. Cheapest fix for the evidence actually collected. - Move it to
running-in-ci§Grounded Analysis as one line extending the existing source-evidence rule from technical claims (syntax, flags, API behaviour) to authority claims (repo policy, convention, precedent). Covers the workflows where the same failure would be invisible — a triage comment citing an unwritten policy generates no review record forreview-reviewersto catch.
I'd lean toward the second only if the citation shape shows up outside reviews in a later window; on this evidence the current placement is the proportionate one. Flagging it because the paragraph's own generalisable sentence ("cite repo guidance only when you can name the file and heading it lives in") reads wider than the heading it's filed under, which is the kind of mismatch that gets re-litigated later.
No blocking findings otherwise — CLAUDE.md's skill-authoring rules are met (no past-case citations, example given as a contrast rather than a template), and the non-review checks on the head commit are all green.
|
Taking the review's own recommendation — keep the paragraph here — and fixing the mismatch it identified rather than moving it. The flagged problem was real: On the placement itself I agree with the review's leaning. The evidence is 3/3 on reviews and zero elsewhere; |
Three
tend-reviewreviews onmax-sixty/worktrunkwithheld APPROVE and attributed the decision to a repo review policy that does not exist in writing. The withholding itself is correct and authorised — this is about the citation, not the verdict.wt remove --reappath is a hold-for-human surface"wt remove --reapis a hold-for-human surface under this repo's review policy"wt remove --forcecan reach isn't an agent's to sign off on"No such rule is written anywhere a reader could follow the pointer to:
.claude/skills/running-tend/SKILL.md, 383 lines) — zero hits forhold.for.human|data.safety|sign off|not an agent. Its only approval-related content is "Don't Self-Dismiss Over Unrelated Test Flakes".CLAUDE.md§"Data Safety" exists, but it is a code guideline ("prefer failure over silent loss", "explicit consent for destructive ops") — it says nothing about who may approve a PR.shared/— zero hits for the same patterns across the whole tree.What actually authorises the behaviour is
review/SKILL.md's own "If the design involves a judgment call, flag it for human review as a COMMENT". That is a sufficient reason on its own. Dressing it as a citable repo policy sends the author looking for a rule that isn't there — the same shape as a fabricated API flag or a guessed docs slug, whichrunning-in-ci§"Grounded Analysis" already treats as the fastest way to erode trust in everything else in the comment.The change
One paragraph in the review skill, next to the existing low-confidence guidance: cite repo guidance only when you can name the file and heading; otherwise own the call as your own judgment, with a contrasting example.
Gate assessment
Evidence log: https://gist.github.com/a88c03f4d0c3fb1791060ff3dd97d1c4