Skip to content

feat: community conductor v2 — external PRs + review requests #125

Description

@Jammy2211

Overview

v2 of the community conductor (the Ears, #119 / PR #122): extend the scan and triage surfaces to hear pull requests — the staged follow-up recorded in the conductor AGENTS.md at birth. External contributors' PRs and review requests currently go unheard by the scan.

Plan

  • community scan gains two PR legs: open PRs authored by non-self humans (bot-filtered, same awaiting-response detection) and open PRs with review requested from a self login; counts + ranked lists on the same CommunityScan surface, so /wake_up's 💬 digest covers them with no new machinery.
  • community triage accepts PR refs (incl. /pull/ URLs) and adds a PR block: draft, changed files/additions/deletions, requested reviewers, mergeable state. Review judgment stays human — this is not the ship-gate review faculty.
  • Same v1 principles: read-only, stdlib-only, never posts; drafts human-gated; no new state.
  • Extend the hermetic stub-gh tests; update conductor AGENTS.md (retire the "out of scope for v1" note), /community skill body, dispatcher description; regenerate the command surface.
Detailed implementation plan

Affected Repositories

  • PyAutoBrain (only)

Branch

feature/community-ears-v2-prs · worktree ~/Code/PyAutoLabs-wt/community-ears-v2-prs/
Concurrency: PyAutoBrain claim held by ic50-assistant-seed (clone/ only, PR #120 open) — small parallel PR, zero file overlap (community/ + tests vs clone/), user-approved pattern.

Implementation Steps

  1. agents/conductors/community/_community.py — generalise the search helper over is:issue/is:pr; entries carry type; scan adds open_external_prs + awaiting_review (query is:pr is:open review-requested:<self>) with counts; PR conversation comments drive awaiting-response (review-thread comments noted as a known v2 limit). parse_issue_ref accepts /pull/ URLs; triage fetches repos/<o>/<r>/pulls/<n> extras when the ref is a PR.
  2. tests/test_community_conductor.py — stub-gh fixtures for the two PR searches + pulls endpoint; tests for PR scan, review-requested leg, PR triage block, and the no-mutation proof over the new calls.
  3. Docs: conductor AGENTS.md (modes table, capability audit, v1-scope note retired), skills/community/community.md, bin/pyauto-brain AGENT_DESC ("issues + PRs"), then bin/install.sh --write-agents-surface.

Key Files

  • agents/conductors/community/_community.py — v1 core to extend
  • tests/test_community_conductor.py — hermetic harness to extend

Prompt: PyAutoMind draft/feature/pyautobrain/community_ears_v2_external_prs.md.

Generated by the PyAutoLabs agent workflow.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions