fix(review): approval-gate manual review labels - #3623
Conversation
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
|
Tip 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 ✅ Gittensory review result - approve/merge recommendedReview updated: 2026-07-06 00:35:51 UTC
✅ Suggested Action - Approve/Merge
Review summary Nits — 5 non-blocking
Review context
Contributor next steps
Signal definitions
🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
834d84c to
16b6e09
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3623 +/- ##
=======================================
Coverage 93.28% 93.28%
=======================================
Files 314 314
Lines 32054 32054
Branches 11747 11747
=======================================
Hits 29903 29903
Misses 1517 1517
Partials 634 634
🚀 New features to boost your workflow:
|
…e (1d/1e)
The rebase onto main surfaced two more manual-review label call sites
(unlinkedIssueMatchHold/unlinkedIssueMatchClose fallbacks) added by the
credibility-gate-farming guardrail after this PR branched, which had the
same hardcoded requiresApproval: false bug this PR already fixes elsewhere.
Apply the same approval("merge") derivation and pin it with a test.
16b6e09 to
8131241
Compare
Motivation
requiresApproval: false, which allowedauto_with_approvalrepos to apply public labels immediately and bypass the maintainer approval gate. This restores the intended approval boundary.Closes #3661
Description
requiresApprovalfor the guardrail manual-review label from the governing autonomy usingapproval("merge")instead of hard-codingfalse.requiresApprovalfor the migration-collision manual-review fallback fromapproval("merge")instead of hard-codingfalse.requiresApprovalfor the two unlinked-issue-match manual-review fallbacks (added by the credibility-gate-farming guardrail after this PR branch was originally cut, surfaced while resolving the rebase conflict with main) fromapproval("merge")as well — same bug, same fix.mergevsclose) and setrequiresApprovalviaapproval(manualHoldAutonomyClass)so close-governed holds respectauto_with_approvalas well.test/unit/agent-actions.test.tsthat assert manual-review labels are emitted withrequiresApproval: truewhen the governing class is configured asauto_with_approval, and remainfalseunder plainautowhere appropriate — including new coverage for the two unlinked-issue-match fallbacks.Testing
npx vitest run test/unit/agent-actions.test.ts— 233/233 passing (was 203; +2 new test cases covering all 5 fixed call sites)npm run typecheck— cleannpx vitest run test/unit/agent-actions.test.ts --coverage --coverage.include='src/settings/agent-actions.ts'— every changed line is 100% line+branch covered (verified by diffing changed hunks against the v8 uncovered-line report; the file's overall 98.3% branch figure is a pre-existing, unrelated gap elsewhere in this large file)Codex Task