feat(commands): wire @gittensory pause dispatch to record the autoreview-paused marker (#2164) - #4067
Conversation
…iew-paused marker (JSONbored#2164) Adds maybeProcessPauseCommand, the dispatch handler for the @gittensory pause PR-comment verb (already a registered parse target + authorization policy from JSONbored#1960). It pauses AUTO-REVIEW for a single PR by recording a per-PR github_app.autoreview_paused audit marker the sweep/webhook re-review path can honor, and posts a public-safe confirmation. Auto-review scope only: it records nothing on the Gate check-run, flips no AgentActionMode, and builds no advisory, so the one-shot gate disposition and its enforcement are left intact. Mirrors maybeProcessResolveCommand's classify -> authorize -> record shape (classifyPrCommandRequest + authorizePrActionActor + the gate-override skip/denied/completed recording convention). Unlike gate-override it does not consult resolveAgentActionMode: the pause is itself the stop-auto-reviewing instruction, so the marker + confirmation are recorded unconditionally on an authorized pause. Closes JSONbored#2164
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4067 +/- ##
=======================================
Coverage 93.59% 93.59%
=======================================
Files 380 380
Lines 35596 35622 +26
Branches 13050 13056 +6
=======================================
+ Hits 33316 33342 +26
Misses 1618 1618
Partials 662 662
🚀 New features to boost your workflow:
|
|
Warning 🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨 ⏸️ Gittensory review result - manual review recommendedReview updated: 2026-07-07 23:04:22 UTC
⏸️ Suggested Action - Manual Review
Review summary Nits — 6 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.
|
Wires the dispatch handler for the
@gittensory pausePR-comment verb — the parse target and authorization policy already landed with #1960, so this is the follow-up dispatch bounty (mirroringmaybeProcessGateOverrideCommand/maybeProcessResolveCommand).What it does
maybeProcessPauseCommand+recordAutoreviewPausedSkipinsrc/queue/processors.tsand wires it into theissue_commentdispatch chain afterexplain.@gittensory pause, records a per-PRgithub_app.autoreview_pausedaudit marker (keyed torepo#pr) that the sweep/webhook re-review path can honor, and posts a public-safe confirmation viasanitizePublicComment.classifyPrCommandRequestpreamble +authorizePrActionActorand the gate-override skip/denied/completed recording convention.Auto-review scope only (#1960 hard constraint)
Pause touches neither the Gate check-run, the AgentActionMode, nor any advisory — the one-shot gate disposition and its enforcement are left intact; the gate-enforcement side and any
repository_settingskill-switch stay maintainer-owned. Unlikegate-overrideit deliberately does not consultresolveAgentActionMode: the pause is the stop-auto-reviewing instruction, so gating the marker behind the execution mode would make an already-paused/dry-run agent impossible to pause — the marker + confirmation are therefore recorded unconditionally on an authorized pause.Tests
test/unit/queue.test.ts: authorized pause (records marker + posts confirmation), authorized-with-no-reason, non-maintainer denied, cached-PR-missing skip, bot-authored classifier skip, and non-pause non-interception — plus an explicit invariant asserting no Gate check-run write and no gate-disposition audit (proving no gate/AgentActionMode mutation). The #2160 scaffold test's example verb is moved from the now-wiredpauseto the still-unwiredresume.Closes #2164