fix(agents): align agent definitions with intended behavior
- Corrects stale agent names in config files. - Removes duplicate supervisor from product-builder. - Updates session naming conventions for consistency. - Aligns label usage with . - Implements mandatory merge verification protocol.
This commit is contained in:
@@ -11,13 +11,13 @@ models:
|
||||
cost_rank: 1 # Lowest cost
|
||||
|
||||
codex:
|
||||
id: anthropic/claude-codex-4-20241022
|
||||
id: openai/gpt-5-codex
|
||||
max_tokens: 200000
|
||||
use_for: implementation
|
||||
cost_rank: 2
|
||||
|
||||
sonnet:
|
||||
id: anthropic/claude-sonnet-4-20241022
|
||||
id: anthropic/claude-sonnet-4-6
|
||||
max_tokens: 200000
|
||||
use_for: complex_reasoning
|
||||
cost_rank: 3
|
||||
@@ -33,7 +33,7 @@ models:
|
||||
# Implementation agents
|
||||
implementer: codex # Core implementer inherits model from tier
|
||||
implementation-worker: codex
|
||||
implementation-orchestrator: sonnet # Needs good planning
|
||||
implementation-pool-supervisor: sonnet # Needs good planning
|
||||
|
||||
# Testing agents
|
||||
behave-tester: codex # Core tester inherits model from tier
|
||||
@@ -44,19 +44,19 @@ models:
|
||||
coverage-improver: codex
|
||||
|
||||
# Review agents
|
||||
pr-self-reviewer: sonnet # Needs nuanced judgment
|
||||
pr-reviewer: sonnet # Needs nuanced judgment
|
||||
implementation-reviewer: sonnet
|
||||
continuous-pr-reviewer: sonnet
|
||||
pr-review-pool-supervisor: sonnet
|
||||
|
||||
# Architecture & Planning
|
||||
architect: opus # Most critical - bad architecture cascades
|
||||
architecture-guard: opus # Enforces architectural coherence
|
||||
epic-planner: sonnet # Complex planning
|
||||
architecture-pool-supervisor: sonnet # Architecture decisions
|
||||
architecture-guard-pool-supervisor: sonnet # Enforces architectural coherence (uses gemini-2.5-pro at runtime)
|
||||
epic-planning-pool-supervisor: sonnet # Complex planning
|
||||
milestone-reviewer: sonnet
|
||||
|
||||
# System agents
|
||||
system-watchdog: opus # Critical system health monitoring
|
||||
human-liaison: sonnet # Nuanced human interaction
|
||||
system-watchdog-pool-supervisor: sonnet # Critical system health monitoring
|
||||
human-liaison-pool-supervisor: sonnet # Nuanced human interaction
|
||||
product-builder: sonnet # Overall orchestration
|
||||
product-verifier: sonnet
|
||||
|
||||
@@ -65,15 +65,15 @@ models:
|
||||
spec-reader: haiku
|
||||
issue-finder: haiku
|
||||
issue-analyzer: haiku
|
||||
pr-status-checker: haiku
|
||||
pr-status-analyzer: codex
|
||||
|
||||
# Specialized agents
|
||||
agent-evolver: opus # Modifies other agents - critical
|
||||
spec-updater: sonnet # Updates architecture docs
|
||||
timeline-updater: haiku
|
||||
docs-writer: sonnet
|
||||
backlog-groomer: haiku
|
||||
project-owner: sonnet # Strategic decisions
|
||||
agent-evolution-pool-supervisor: sonnet # Modifies other agents
|
||||
spec-update-pool-supervisor: sonnet # Updates architecture docs
|
||||
timeline-update-pool-supervisor: sonnet
|
||||
documentation-pool-supervisor: sonnet
|
||||
backlog-grooming-pool-supervisor: sonnet
|
||||
project-owner-pool-supervisor: sonnet # Strategic decisions
|
||||
|
||||
# Quality agents
|
||||
lint-fixer: codex
|
||||
@@ -82,9 +82,9 @@ models:
|
||||
quality-gate-escalator: sonnet
|
||||
|
||||
# Infrastructure
|
||||
bug-hunter: sonnet # Needs deep analysis
|
||||
uat-tester: sonnet # User perspective testing
|
||||
test-infra-improver: sonnet
|
||||
bug-hunt-pool-supervisor: sonnet # Needs deep analysis (uses gemini-2.5-pro at runtime)
|
||||
uat-test-pool-supervisor: sonnet # User perspective testing
|
||||
test-infra-pool-supervisor: sonnet # (uses gemini-2.5-pro at runtime)
|
||||
|
||||
# Escalation paths
|
||||
escalation:
|
||||
|
||||
@@ -13,28 +13,28 @@ resources:
|
||||
# Based on fraction of max_parallel_workers
|
||||
worker_allocation:
|
||||
# Full tier (N) - Maximum throughput
|
||||
implementation-orchestrator: 1.0
|
||||
implementation-pool-supervisor: 1.0
|
||||
|
||||
# Half tier (N/2) - Moderate parallelism
|
||||
continuous-pr-reviewer: 0.5
|
||||
pr-review-pool-supervisor: 0.5
|
||||
|
||||
# Quarter tier (N/4) - Limited parallelism to prevent scope explosion
|
||||
uat-tester: 0.25
|
||||
bug-hunter: 0.25
|
||||
test-infra-improver: 0.25
|
||||
uat-test-pool-supervisor: 0.25
|
||||
bug-hunt-pool-supervisor: 0.25
|
||||
test-infra-pool-supervisor: 0.25
|
||||
|
||||
# Singleton agents (no parallelism)
|
||||
architect: 0
|
||||
epic-planner: 0
|
||||
human-liaison: 0
|
||||
agent-evolver: 0
|
||||
architecture-guard: 0
|
||||
spec-updater: 0
|
||||
backlog-groomer: 0
|
||||
docs-writer: 0
|
||||
timeline-updater: 0
|
||||
project-owner: 0
|
||||
system-watchdog: 0
|
||||
architecture-pool-supervisor: 0
|
||||
epic-planning-pool-supervisor: 0
|
||||
human-liaison-pool-supervisor: 0
|
||||
agent-evolution-pool-supervisor: 0
|
||||
architecture-guard-pool-supervisor: 0
|
||||
spec-update-pool-supervisor: 0
|
||||
backlog-grooming-pool-supervisor: 0
|
||||
documentation-pool-supervisor: 0
|
||||
timeline-update-pool-supervisor: 0
|
||||
project-owner-pool-supervisor: 0
|
||||
system-watchdog-pool-supervisor: 0
|
||||
|
||||
# Timeout configurations (in seconds)
|
||||
timeouts:
|
||||
@@ -119,7 +119,7 @@ resources:
|
||||
|
||||
# Session management
|
||||
sessions:
|
||||
naming_pattern: "[{tag}] {type}: {target}"
|
||||
naming_pattern: "[{tag}] {display_name}"
|
||||
tag_prefixes:
|
||||
implementation: AUTO-IMP
|
||||
pr_review: AUTO-REV
|
||||
|
||||
@@ -56,7 +56,7 @@ If these are not provided in your context, invoke `ref-reader` IMMEDIATELY to ob
|
||||
|
||||
#### Issue and Project Management (CONTRIBUTING.md Section: Issue and Project Management)
|
||||
- **Label System**: Apply correct State/, Type/, Priority/, MoSCoW/ labels
|
||||
- **Ticket Lifecycle**: Issues start at State/Needs Verification
|
||||
- **Ticket Lifecycle**: Issues start at State/Unverified
|
||||
- **Issue Format**: Follow the exact format in CONTRIBUTING.md
|
||||
- **Milestone Assignment**: Every issue must belong to a milestone
|
||||
- **Dependencies**: Properly link blocking/blocked by relationships
|
||||
|
||||
@@ -128,7 +128,10 @@ Based on CONTRIBUTING.md, these label patterns exist at the organization level:
|
||||
### Special Labels
|
||||
- `Blocked` - Cannot proceed due to dependency
|
||||
- `Duplicate` - Duplicate of existing issue
|
||||
- `Signed-off:` - Formal reviewer sign-off
|
||||
- `Signed-off` - Formal reviewer sign-off
|
||||
- `Automation Tracking` - Identifies agent tracking and announcement issues
|
||||
- `needs feedback` - Signals that automated work needs human decision
|
||||
- `Priority/CI-Blocker` - Breaks CI pipeline; absolute highest priority
|
||||
|
||||
## Label Operations You Provide
|
||||
|
||||
|
||||
@@ -390,7 +390,7 @@ initial_tracking_body="
|
||||
- timeline-updater (singleton)
|
||||
- project-owner (singleton)
|
||||
- system-watchdog (singleton)
|
||||
- pr-merge (singleton)
|
||||
- pr-merge-pool-supervisor uses tracking prefix AUTO-MERGE for Forgejo issues
|
||||
|
||||
**Next Steps:**
|
||||
- Bootstrap project structure if needed
|
||||
@@ -907,12 +907,8 @@ launch_supervisor("system-watchdog-pool-supervisor", "system-watchdog", "AUTO-WD
|
||||
When creating tracking issues, ALWAYS include these labels:
|
||||
Type/Automation, State/In Progress, Priority/Medium")
|
||||
|
||||
launch_supervisor("pr-merge-pool-supervisor", "pr-merge", "AUTO-MERGE",
|
||||
"You are the PR merge supervisor.
|
||||
Repo: <owner>/<repo>. Instance ID: pr-merge-1.
|
||||
Forgejo PAT: <PAT>. Username: <username>.
|
||||
When creating tracking issues, ALWAYS include these labels:
|
||||
Type/Automation, State/In Progress, Priority/Medium")
|
||||
# NOTE: pr-merge-pool-supervisor is already launched above with tag AUTO-PRMRG-SUP.
|
||||
# The tracking prefix AUTO-MERGE is used for Forgejo tracking issues (see tag_map).
|
||||
|
||||
# ── PHASE C.2 VALIDATION ────────────────────────────────────────
|
||||
# Verify all 18 sessions were created successfully.
|
||||
|
||||
@@ -55,13 +55,13 @@ SERVER = "http://localhost:4096"
|
||||
ALL_SESSIONS = bash("curl -s ${SERVER}/session", timeout=30000)
|
||||
|
||||
# Step 2: Find all automated sessions (supervisors and workers)
|
||||
# Automated sessions have titles starting with "[CA-AUTO]"
|
||||
# Automated sessions have titles starting with "[AUTO-" (the standard tag prefix)
|
||||
AUTOMATED = bash("echo '${ALL_SESSIONS}' | python3 -c \"
|
||||
import sys, json
|
||||
sessions = json.loads(sys.stdin.read())
|
||||
for s in sessions:
|
||||
title = s.get('title', '')
|
||||
if title.startswith('[CA-AUTO]'):
|
||||
if '[AUTO-' in title:
|
||||
print(s['id'] + ' | ' + title)
|
||||
\"", timeout=30000)
|
||||
|
||||
@@ -93,7 +93,7 @@ Output: "You can now start a fresh product-builder session."
|
||||
## Important Rules
|
||||
|
||||
- **This is a one-shot agent.** Run it once, it cleans up, it exits.
|
||||
- **It kills EVERYTHING with [CA-AUTO] in the title.** Both supervisors
|
||||
- **It kills EVERYTHING with [AUTO-] in the title.** Both supervisors
|
||||
and workers. There is no selective cleanup.
|
||||
- **Do NOT run this while the product-builder is actively running.** It
|
||||
will kill all its supervisors and workers.
|
||||
|
||||
@@ -366,7 +366,7 @@ def verify_branch_protection(owner, repo, branch='master'):
|
||||
'protected_file_patterns': '',
|
||||
'enable_merge_whitelist': False,
|
||||
'enable_status_check': True, # CI must pass
|
||||
'status_check_contexts': ['CI / CI'], # Required checks
|
||||
'status_check_contexts': ['status-check'], # Required checks (must match CI pipeline config)
|
||||
'enable_approvals_whitelist': False,
|
||||
'dismiss_stale_approvals': True,
|
||||
'require_signed_commits': False,
|
||||
|
||||
Reference in New Issue
Block a user