Skip to content

Phase 1: Add /squad review workflow (advisory) #1733

Closed

Description

@bradygaster

Parent: #1729
Depends on: #1730, #1731, #1732

Goal

Add workflows/squad-review.md — an independent reviewer for agent-authored pull requests. Advisory only in this phase: it comments, it does not block.

This is a separate workflow rather than a mode in workflows/squad.md because the trigger set (pull_request) and the authority boundary (no write access of any kind) both differ from the router. gh-aw also disallows combining slash_command and pull_request triggers in a single workflow.

Triggers

  • slash_command: /squad review — manual, usable on any PR
  • pull_request: [ready_for_review, synchronize] — filtered to recognized agent PRs only

Provenance detection

Priority order:

  1. Worker provenance marker from Phase 0b: Add PR provenance marker and tighten implement-worker merge relay #1731 → Squad-authored
  2. Head branch squad/implement-* → Squad-authored
  3. Author copilot-swe-agent[bot] or head branch copilot/* → Copilot-authored
  4. Otherwise → unattributed; manual invocation only, no automatic review

Reviewer independence invariants

These are structural, not prompt-level. A reviewer that can edit is not a reviewer.

  • No edit: tool
  • No dispatch_workflow and no typed dispatch safe-output
  • No create-issue
  • Safe outputs limited to add-comment, PR review comments, and a single review verdict
  • Verdict is COMMENT or REQUEST_CHANGES only — the default GITHUB_TOKEN cannot APPROVE
  • Human approval remains mandatory
  • Per-PR concurrency with cancel-in-progress: true
  • SHA-based dedup marker in the review body so synchronize does not re-review an unchanged head
  • Forks blocked (gh-aw default retained)

Review content

  • Diff scope checked against the linked issue's acceptance criteria
  • Charter and routing compliance — did the change land in the expected specialist domain?
  • Protected-file and allowlist violations
  • Test presence for changed behavior
  • Changeset requirement for changes under packages/*/src/

Tests

New test/gh-aw-review-workflow.test.ts, following the structure established in #1732. Must assert the absence of edit: and dispatch outputs, not just the presence of expected fields — the negative assertions are the ones that protect the independence invariant.

Out of scope

Enforcement (#next), remediation, and docs. This phase ships advisory-only so the review quality can be observed before it gates anything.

Activity

  1. added
    squadSquad triage inbox — Lead will assign to a member
    on Aug 17, 2026
  2. github-actions commented on Aug 23, 2026

    @github-actions
    Contributor

    📋 Assigned to FIDO (Quality Owner)

    Issue: #1733 — Phase 1: Add /squad review workflow (advisory)

    FIDO will pick this up in the next Copilot session.

    For Copilot coding agent: If enabled, this issue will be worked automatically.
    Otherwise, start a Copilot session and say:
    FIDO, work on issue #1733

  3. bradygaster commented on Aug 23, 2026

    @bradygaster
    CollaboratorAuthor

    Procedures triage brief — Phase 1 advisory review

    Owner & rationale

    Owner: FIDO (squad:fido). This is the first actual review gate surface. FIDO owns whether the advisory reviewer catches wrong work without acquiring authoring authority.

    Files in scope

    Verified existing paths:

    • workflows\
    • workflows\squad-implement-worker.md
    • workflows\shared\squad.md
    • est\gh-aw-quality.test.ts
    • est\gh-aw-implement-workflow.test.ts

    New target path to create during implementation: workflows\squad-review.md inside the verified workflows\ directory.

    Prompt-budget impact

    No expected workflows\squad.md growth. The issue correctly scopes review as a separate workflow because the trigger/authority boundary differs. Budget impact to the router should be +0 KB, preserving 37,602 B headroom after #1731 or ~35.6 KB after #1730.

    Dependencies

    Verification bar

    Tests must fail if squad-review.md exposes �dit:, any dispatch output, or create-issue; they must also fail if unchanged-head dedupe is absent. A green compile with no negative authority assertions is not enough.

    Out of scope

    Required checks, relay gating, auto-remediation, and docs/install distribution.

    Session-stall guard

    Before starting: this repo has phantom CRLF diffs (#1793). If git status shows files modified that you did not touch, run git diff --ignore-cr-at-eol. If that output is empty, the diff is line-ending churn, not real edits — run git add --renormalize . and continue. Do not halt and ask for confirmation; halting on phantom diffs is the documented cause of stuck sessions in this repo.

  4. added 2 commits that reference this issue on Aug 25, 2026
    30be615
    0d4abb0
  5. added a commit that references this issue on Aug 25, 2026
    721ad52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    gh-awGitHub Agentic Workflows integrationgo:spec-readyReady for formal spec/proposalpriority:p1This sprintsquadSquad triage inbox — Lead will assign to a membertriagedIssue has been triagedtype:featureNew capabilitywave:3-laterWave 3 — backlog, future

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions