-
-
Notifications
You must be signed in to change notification settings - Fork 16
Description
Agent Orchestration Tab
Goal
Add a third tab to DevOps Settings called "Orchestration" that provides a unified pipeline view of the Issue → Agent → PR workflow, serving as the central command center for managing automated development work.
Work Repository: KBVE/Handy
Success Metrics
- Pipeline visibility: Can see all active work at a glance
- Issue assignment: Can assign agents to issues from one place
- PR traceability: Every PR links back to its originating issue
- Reduced context switching between tabs
- Successful dogfooding: Use this Epic to test the DevOps ecosystem
Phases
Phase 1: Core Infrastructure
Build backend infrastructure for pipeline state tracking and issue assignment flow. - Create PipelineItem struct linking issue → session → worktree → PR - Add list_pipeline_items command to aggregate current state - Add get_pipeline_history command for completed items - Store pipeline state in persistent storage - Add assign_issue_to_agent command (creates worktree, spawns tmux session) - Add skip_issue command (removes agent-todo label, adds agent-skipped) - Detect when agent creates a PR and auto-link to pipeline item - Track PR status (draft, ready, needs-review, approved, merged) - src-tauri/src/devops/pipeline.rs (new) - src-tauri/src/devops/orchestration.rs (new) - src-tauri/src/commands/devops.rs (add commands)
Approach: agent-assisted
Status: 🔄 In Progress (0/3 issues)
Phase 2: Frontend - Orchestration Tab
Build the Orchestration tab UI with three sections: Active Pipeline, Queued Issues, and Completed Work. - Add "Orchestration" tab to DevOpsLayout - Create OrchestrationTab component - Create ActivePipeline component with flow visualization (Issue → Session → PR) - Show agent type, duration, and status - Add action buttons (View Session, Cancel, Complete) - Create QueuedIssues component with agent selection dropdown - Add Assign and Skip buttons for issues - Create CompletedWork component showing merged PRs with linked issues - src/components/settings/devops/DevOpsLayout.tsx - src/components/settings/devops/OrchestrationTab.tsx (new) - src/components/settings/devops/orchestration/ActivePipeline.tsx (new) - src/components/settings/devops/orchestration/PipelineCard.tsx (new) - src/components/settings/devops/orchestration/QueuedIssues.tsx (new) - src/components/settings/devops/orchestration/IssueCard.tsx (new) - src/components/settings/devops/orchestration/CompletedWork.tsx (new)
Approach: agent-assisted
Status: 🔄 In Progress (0/1 issues)
Phase 3: Store Integration
Create Zustand store for pipeline state management and integrate with existing DevOps store. - Create pipelineStore.ts with Zustand - Track active pipeline items - Track queued issues - Track completed history - Implement polling for updates (or event-driven) - Integrate pipeline state with existing devopsStore - Ensure sessions and pipeline stay in sync - src/stores/pipelineStore.ts (new) - src/stores/devopsStore.ts (update)
Approach: agent-assisted
Status: ⏸️ Not Started
Phase 4: Polish & Integration
Add real-time updates, error handling, and translations. - Add Tauri events for pipeline state changes - Update UI reactively when state changes - Handle agent failures gracefully - Allow retry/reassign on failure - Show error state in pipeline card - Add all i18n keys for Orchestration tab - Update translation.json for en/es/fr/vi - src/i18n/locales/*/translation.json
Approach: agent-assisted
Status: ⏸️ Not Started
Progress
0/4 sub-issues completed (0%)
Notes
Created via Handy DevOps Epic Workflow