feat(tui): implement Plan Detail, Project Detail, and Persona Editor modals #874

Open
opened 2026-03-13 22:58:59 +00:00 by freemo · 0 comments
Owner

Metadata

  • Commit Message: feat(tui): implement Plan Detail, Project Detail, and Persona Editor modals
  • Branch: feature/m8-tui-modals

Background and Context

The specification defines three modal dialogs for the TUI: Plan Detail Modal, Project Detail Modal, and Persona Editor Modal. ADR-044 (TUI Architecture), ADR-045 (Persona System), and ADR-046 (Reference/Command System) have been accepted.

Issue #694 covers the MainScreen and sidebar, and #695 covers the persona system and input modes. However, no ticket exists for the three modal dialogs that provide drill-down views into plans, projects, and persona configuration.

Expected Behavior

  • Plan Detail Modal: Displays plan status, phase, decision tree summary, diff preview, cost estimate, and action controls (execute, apply, cancel). Launched via plan selection or @plan reference.
  • Project Detail Modal: Shows linked resources, context configuration, invariants, and validation attachments. Launched via project selection or @project reference.
  • Persona Editor Modal: CRUD interface for personas — create new personas, edit existing ones (actor, base args, scoped projects/plans, argument presets, display metadata). Launched via persona bar interaction.

All modals use Textual widgets and follow the Dracula theme established in #694.

Acceptance Criteria

  • Plan Detail Modal renders plan status, decision tree, diff, and action buttons
  • Project Detail Modal renders resources, context policies, and invariants
  • Persona Editor Modal allows create, edit, and delete of personas
  • Modals are dismissible (Escape key, close button)
  • Modals integrate with the A2A communication layer for live data
  • All modals have Behave BDD tests

Subtasks

  • Implement PlanDetailModal Textual widget
  • Implement ProjectDetailModal Textual widget
  • Implement PersonaEditorModal Textual widget
  • Wire modals to MainScreen navigation (sidebar selection, @ references)
  • Connect modals to A2A facade for live plan/project data
  • Tests (Behave): Add scenarios for modal launch, interaction, and dismissal
  • Verify coverage >= 97% via nox -s coverage_report
  • Run nox (all default sessions), fix any errors

Definition of Done

This issue is complete when:

  • All subtasks above are completed and checked off.
  • A Git commit is created where the first line of the commit message matches the Commit Message in Metadata exactly, followed by a blank line, then additional lines providing relevant details about the implementation.
  • The commit is pushed to the remote on the branch matching the Branch in Metadata exactly.
  • The commit is submitted as a pull request to master, reviewed, and merged before this issue is marked done.
## Metadata - **Commit Message**: `feat(tui): implement Plan Detail, Project Detail, and Persona Editor modals` - **Branch**: `feature/m8-tui-modals` ## Background and Context The specification defines three modal dialogs for the TUI: Plan Detail Modal, Project Detail Modal, and Persona Editor Modal. ADR-044 (TUI Architecture), ADR-045 (Persona System), and ADR-046 (Reference/Command System) have been accepted. Issue #694 covers the MainScreen and sidebar, and #695 covers the persona system and input modes. However, no ticket exists for the three modal dialogs that provide drill-down views into plans, projects, and persona configuration. ## Expected Behavior - **Plan Detail Modal**: Displays plan status, phase, decision tree summary, diff preview, cost estimate, and action controls (execute, apply, cancel). Launched via plan selection or `@plan` reference. - **Project Detail Modal**: Shows linked resources, context configuration, invariants, and validation attachments. Launched via project selection or `@project` reference. - **Persona Editor Modal**: CRUD interface for personas — create new personas, edit existing ones (actor, base args, scoped projects/plans, argument presets, display metadata). Launched via persona bar interaction. All modals use Textual widgets and follow the Dracula theme established in #694. ## Acceptance Criteria - [ ] Plan Detail Modal renders plan status, decision tree, diff, and action buttons - [ ] Project Detail Modal renders resources, context policies, and invariants - [ ] Persona Editor Modal allows create, edit, and delete of personas - [ ] Modals are dismissible (Escape key, close button) - [ ] Modals integrate with the A2A communication layer for live data - [ ] All modals have Behave BDD tests ## Subtasks - [ ] Implement `PlanDetailModal` Textual widget - [ ] Implement `ProjectDetailModal` Textual widget - [ ] Implement `PersonaEditorModal` Textual widget - [ ] Wire modals to MainScreen navigation (sidebar selection, @ references) - [ ] Connect modals to A2A facade for live plan/project data - [ ] Tests (Behave): Add scenarios for modal launch, interaction, and dismissal - [ ] Verify coverage >= 97% via `nox -s coverage_report` - [ ] Run `nox` (all default sessions), fix any errors ## Definition of Done This issue is complete when: - All subtasks above are completed and checked off. - A Git commit is created where the **first line** of the commit message matches the Commit Message in Metadata exactly, followed by a blank line, then additional lines providing relevant details about the implementation. - The commit is pushed to the remote on the branch matching the **Branch** in Metadata exactly. - The commit is submitted as a **pull request** to `master`, reviewed, and **merged** before this issue is marked done.
freemo added this to the v3.8.0 milestone 2026-03-13 23:00:09 +00:00
freemo self-assigned this 2026-03-14 04:27:38 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
cleveragents/cleveragents-core#874
No description provided.