Skip to content

🧩 Wave 2 β€” Review features (HELD tracker: comments Β· commands Β· intelligence Β· digests)Β #2012

Description

@JSONbored

Wave 2 β€” Review features (HELD tracker)

Parent tracker for the CodeRabbit-style review features. Not yet open bounties β€” released after Wave 1.

65 planned contributor bounties (decomposed from the #1953/#1499 roadmap + engine audit). Held as this maintainer tracker; released as gittensor:* bounties in a batch once Wave 1 drains.

Review-comment surfaces (#1956/57/58/55) (21)

  • S feat(review): add optional suggestion field to InlineFinding schema + parser
  • S feat(review): render single-line ```suggestion block on inline comments
  • S feat(review): anchor-safety validation drops un-commentable suggested changes
  • S feat(review): multi-line ```suggestion blocks via RIGHT-side range validation
  • XS feat(review): review.suggestions config toggle (default off) gating suggested-change blocks
  • S feat(review): deterministic changed-file classifier (source/test/docs/config/generated)
  • S feat(review): group changed files by class with +/- counts and large-group collapse
  • S feat(review): render changed-files summary as a collapsible table in the unified comment
  • XS feat(review): review.changed_files_summary manifest toggle + docs
  • S feat(review): add category enum to AI finding schema + parser default
  • S feat(review): deterministic fallback categorization for findings (keyword/path heuristics)
  • XS feat(review): show finding category label on inline comments
  • S feat(review): category breakdown line in the unified review comment
  • S feat(review): deterministic review-effort/complexity estimator (1-5 band + minutes)
  • XS feat(review): 'review effort: N/5 (~M min)' line in the unified comment, config-gated
  • S feat(review): replace flat MINUTES_SAVED_PER_PR with per-PR effort estimate in public-stats
  • S feat(review): surface aggregate review-effort in the self-host maintainer stats feed
  • XS feat(review): review.effort_score manifest toggle + config docs
  • XS feat(review): render 'view diff' anchor links per file in the changed-files summary
  • S feat(review): dedupe identical inline findings across dual reviewers before rendering
  • S feat(review): per-category inline-comment cap to prevent one category flooding the review

PR command surface (#1960) (12)

  • S feat(commands): register review/pause/resume/resolve/configuration/explain in the @gittensory action-command registry + parser
  • S feat(commands): shared PR-comment command-handler preamble helper (bot/action/missing-target skip recording)
  • XS feat(commands): default command-authorization policy entries for review/pause/resume/resolve/configuration/explain
  • S feat(commands): @gittensory review / re-review command β€” parse + classify + dispatch to existing re-review action
  • S feat(commands): @gittensory pause command β€” parse + classify + record auto-review-paused state (dispatch scaffold)
  • S feat(commands): @gittensory resume command β€” parse + classify + clear the auto-review-paused marker
  • S feat(commands): @gittensory resolve command β€” parse + classify + mark a review finding resolved (dispatch scaffold)
  • S feat(commands): @gittensory help command β€” action-command help card (currently only Q&A verbs are listed)
  • M feat(commands): @gittensory configuration command β€” post effective resolved review config as a public-safe summary
  • S feat(commands): @gittensory explain command β€” parse + classify + echo a finding's rationale (dispatch scaffold)
  • XS feat(commands): unknown-@gittensory-verb suggestion (did-you-mean) in the help fallback
  • XS docs(commands): document the @gittensory PR command surface (verbs, roles, auto-review-vs-gate boundary)

Review intelligence (#1961/62/64/71/72) (18)

  • S feat(review): pure linked-issue satisfaction assessment builder (advisory finding)
  • S feat(config): add review.linkedIssueSatisfaction config knob (off/advisory/block, default off)
  • S feat(review): render linked-issue satisfaction as an advisory section in the unified comment
  • S feat(review): fix-handoff block renderer for review findings (boundary-safe, content-only)
  • XS feat(config): add review.fixHandoff toggle (default off) for fix-handoff blocks
  • S feat(mcp): follow-up-issue action spec builder for deferred review findings
  • S feat(review): suppression-signal data model + migration for review memory
  • XS feat(config): add review.memory (features flag) for repeat false-positive suppression
  • S feat(review): deterministic finding-fingerprint + suppression matcher for review memory
  • S feat(review): apply review-memory suppression to review findings before surfacing (advisory only)
  • S feat(review): deterministic changed-symbol extraction from the PR diff (impact-map input)
  • S feat(review): compute deterministic impact map from RAG index + changed symbols
  • XS feat(config): add review.impact_map toggle (default off) for the impact map
  • S feat(review): render impact map as a compact section in the unified review comment
  • S feat(review): feed impact map into AI-review grounding as additive reference context
  • S feat(signals): detect the test framework/convention from repo layout (test-gen input)
  • S feat(mcp): boundary-safe test-generation action spec builder
  • XS feat(config): add review.test_generation toggle (default off) for boundary-safe test generation

Notifications & digests (#1963) (14)

  • M feat(notifications): pure maintainer-recap builder β€” aggregate review activity into a RecapReport
  • S feat(notifications): recap markdown/section formatter for the maintainer digest body
  • S feat(notifications): per-repo summary section for the maintainer recap
  • S feat(notifications): gate-outcomes section for the maintainer recap (blocked / overridden / false-positive)
  • S feat(notifications): calibration / reversal-rate section for the maintainer recap
  • S feat(notifications): top-N contributor summary section for the maintainer recap (public-safe)
  • S feat(notifications): Discord delivery for the maintainer recap digest (reuse discord-notify)
  • S feat(notifications): Slack delivery for the maintainer recap digest (reuse notify-discord Slack path)
  • S feat(notifications): recap opt-in flag + wire module (default OFF, mirror ops-wire)
  • S feat(notifications): schedule the recap job on the cron with a configurable cadence knob
  • S feat(notifications): recap queue job type + processor case (idempotent, throttle-claimed)
  • S feat(notifications): config-as-code recap channel/cadence overrides in .gittensory.yml focus manifest
  • XS feat(notifications): audit-event trail for recap generation + delivery outcome
  • XS test(notifications): end-to-end recap orchestration test (build β†’ format β†’ both channels)

Metadata

Metadata

Assignees

No one assigned

    Labels

    maintainer-onlyOwner-only work β€” yields no Gittensor points.roadmapOn the Wave-2 agent-layer roadmap board (project 9)

    Projects

    Status
    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions