# Implementation Plan: Agent Personas - Unified Profiles ## Phase 1: Core Model and Migration - [ ] Task: Audit `src/models.py` and `src/app_controller.py` for all existing AI settings. - [ ] Task: Write Tests: Verify the `Persona` dataclass can be serialized/deserialized to TOML. - [ ] Task: Implement: Create the `Persona` model in `src/models.py` and implement the `PersonaManager` in `src/personas.py` (inheriting logic from `PresetManager`). - [ ] Task: Implement: Create a migration utility to convert existing `active_preset` and system prompts into an "Initial Legacy" Persona. - [ ] Task: Conductor - User Manual Verification 'Phase 1: Core Model and Migration' (Protocol in workflow.md) ## Phase 2: Granular MMA Integration - [ ] Task: Write Tests: Verify that a `Ticket` or `Track` can hold a `persona_id` override. - [ ] Task: Implement: Update the MMA internal state to support per-epic, per-track, and per-task Persona assignments. - [ ] Task: Implement: Update the `WorkerContext` and `ConductorEngine` to resolve and apply the correct Persona before spawning an agent. - [ ] Task: Implement: Add "Persona" metadata to the Tier Stream logs to visually confirm which profile is active. - [ ] Task: Conductor - User Manual Verification 'Phase 2: Granular MMA Integration' (Protocol in workflow.md) ## Phase 3: Hybrid Persona UI - [ ] Task: Write Tests: Verify that changing the Persona Selector updates the associated UI fields using `live_gui`. - [ ] Task: Implement: Add the Persona Selector dropdown to the "AI Settings" panel. - [ ] Task: Implement: Refactor the "Manage Presets" modal into a full "Persona Editor" supporting model sets and linked tool presets. - [ ] Task: Implement: Add "Persona Override" controls to the Ticket editing panel in the MMA Dashboard. - [ ] Task: Conductor - User Manual Verification 'Phase 3: Hybrid Persona UI' (Protocol in workflow.md) ## Phase 4: Integration and Advanced Logic - [ ] Task: Implement: Logic for "Preferred Model Sets" (trying next model in set if provider returns specific errors). - [ ] Task: Implement: "Linked Tool Preset" resolution (checking for the preset ID and applying its tool list to the agent session). - [ ] Task: Final UI polish, tooltips, and documentation sync. - [ ] Task: Conductor - User Manual Verification 'Phase 4: Integration and Advanced Logic' (Protocol in workflow.md)