Skip to content

fix(review): configure review.auto_review (skip_drafts, skip_docs_only, size caps) across gated repos #3999

Description

@JSONbored

Context

An audit of the review/ORB stack (2026-07-07) confirmed a live, ongoing token leak: pushing a new commit to a draft PR still triggers a full fresh AI review today, on all three gated repos. Contributors have been observed opening a PR, waiting for the first AI review/label, converting to draft, then iterating for free while the reviewer keeps re-running on every push.

The fix already exists in code and needs zero engine changes — review.auto_review (src/signals/focus-manifest.ts, evaluateAutoReviewSkipReason) is fully implemented, tested, and wired into resolveAutoReviewSkipForPullRequest (src/queue/processors.ts:6710), but its config block is unset in all three repos' .gittensory.yml (verified live via gh api repos/JSONbored/{gittensory,metagraphed,awesome-claude}/contents/.gittensory.yml, 2026-07-07):

  • skip_drafts (null default ⇒ drafts reviewed as today) — this is the specific field that stops the draft-push token leak.
  • skip_docs_only, max_files, max_added_lines, skip_labels, auto_pause_after_reviewed_commits — all built and dormant, and would cut spend on docs-only/oversized PRs with zero review-quality impact on real changes.

Requirements

  1. Add a review: auto_review: block to .gittensory.yml in JSONbored/gittensory, JSONbored/metagraphed, and JSONbored/awesome-claude.
  2. At minimum set skip_drafts: true (the token-leak fix) and skip_docs_only: true (docs-only PRs never need a full AI review) on all three.
  3. Tune max_files/max_added_lines per-repo if a repo has a very different typical PR size profile — otherwise leave unset (no cap).
  4. No source code change required — config-as-code only, so this ships with none of the coverage/CI overhead of a code PR.

Deliverables

  • Three small PRs (or three commits if opened as one PR against a shared config template, but each repo's .gittensory.yml lives in its own repo so this will be three separate PRs in practice), each adding the review.auto_review block with skip_drafts: true + skip_docs_only: true at minimum.

Expected outcome

A push to a draft PR no longer triggers a fresh AI review pass; a docs-only PR is skipped entirely. Verifiable post-merge by watching gittensory_ai_requests_total / gittensory_reviews_published_total stop firing on draft-PR synchronize events and docs-only PRs.

Non-goals

  • Does not touch reviewEvasionProtection (self-close/draft-dodge enforcement) — that's tracked separately and is already correctly configured on all three repos' public files.

Metadata

Metadata

Assignees

Labels

maintainer-onlyOwner-only work — yields no Gittensor points.orbGittensory Orb related - maintainer self-hosting analytics.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions