Skip to content

Implement role-type architecture and all-phase agent mapping #5

Description

@williamthorsen

Description

The orchestration visualizer currently hardcodes 4 agent roles (architect, planner, coder, reviewer) in the mapper, leaving stations 4-6 (simplifier, holistic, summary) unpopulated. Agent visuals are keyed to individual role names, which means every new orchestration agent type would require Factory code changes.

This ticket introduces a RoleType abstraction (5 types: orchestrator, analyst, planner, author, reviewer) and extends the mapper to create agents for all 7 phases. Agent appearance is determined by roleType, making the visualization extensible without code changes when new agent roles are added to the orchestration system.

Part of Phase 4 ("Character sprites and animation") from #1.

Acceptance criteria

Must have

  • RoleType union type defined with 5 values: orchestrator, analyst, planner, author, reviewer
  • Phase-to-roleType mapping constant covering all 7 phases
  • AgentConfig includes roleType and stackOffset fields
  • buildAgents() creates agents for all 7 phases (architecture through summary)
  • Parallel review station creates one agent per entry in parallelReview.reviewers map
  • Agents at the same station stack vertically using stackOffset
  • AgentActor constructor takes RoleType and uses ROLE_TYPE_COLORS for coloring
  • Test fixtures updated with realistic all-phase data (named reviewers, simplifier, holistic)
  • All existing tests updated; new tests for all-phase agent creation, parallel reviewer stacking, edge cases

Should have

  • Simplifier agent only created when codeSimplifier.ran === true
  • Orchestrator agent only created when run status is completed
  • Legacy review format (phases.review) produces single reviewer agent
  • Empty reviewers map produces single generic "reviewer" agent

Nice to have

  • Role-type constants test verifying coverage of all PHASE_NAMES entries

Dependencies

None — this is the foundation ticket.

Metadata

Metadata

Labels

featureAdded or improved external functionalityscope:factory

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions