From 1d4dfedab796cf948291b4f609eaac195faa5f19 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Mon, 2 Mar 2026 22:42:17 -0500 Subject: [PATCH] chore(conductor): Add Manual UX Validation & Polish track to the strict execution queue --- TASKS.md | 4 ++ conductor/tracks.md | 4 ++ .../manual_ux_validation_20260302/index.md | 5 +++ .../metadata.json | 8 ++++ .../manual_ux_validation_20260302/plan.md | 41 +++++++++++++++++++ .../manual_ux_validation_20260302/spec.md | 22 ++++++++++ 6 files changed, 84 insertions(+) create mode 100644 conductor/tracks/manual_ux_validation_20260302/index.md create mode 100644 conductor/tracks/manual_ux_validation_20260302/metadata.json create mode 100644 conductor/tracks/manual_ux_validation_20260302/plan.md create mode 100644 conductor/tracks/manual_ux_validation_20260302/spec.md diff --git a/TASKS.md b/TASKS.md index 15fe729..67329bd 100644 --- a/TASKS.md +++ b/TASKS.md @@ -127,4 +127,8 @@ To ensure smooth execution, execute the tracks in the following order: **Priority:** Low **Goal:** Replace `time.sleep()` with deterministic polling or `threading.Event()` triggers. Mark exceptionally heavy tests with `@pytest.mark.slow`. +### 9. `manual_ux_validation_20260302` +**Priority:** Medium +**Goal:** Highly interactive human-in-the-loop track to review and adjust GUI UX, animations, popups, and layout structures based on slow-interval simulation feedback. + diff --git a/conductor/tracks.md b/conductor/tracks.md index bfdafc8..9692ab0 100644 --- a/conductor/tracks.md +++ b/conductor/tracks.md @@ -5,6 +5,7 @@ This file tracks all major tracks for the project. Each track has its own detail --- ## Current Tracks (Strict Execution Queue) + *The following tracks MUST be executed in this exact order to safely resolve tech debt before feature development.* 1. [ ] **Track: Test Suite Stabilization & Consolidation** (Active/Next) @@ -31,6 +32,9 @@ This file tracks all major tracks for the project. Each track has its own detail 8. [ ] **Track: Test Suite Performance & Flakiness** *Link: [./tracks/test_suite_performance_and_flakiness_20260302/](./tracks/test_suite_performance_and_flakiness_20260302/)* +9. [ ] **Track: Manual UX Validation & Polish** +*Link: [./tracks/manual_ux_validation_20260302/](./tracks/manual_ux_validation_20260302/)* + --- ## Completed / Archived diff --git a/conductor/tracks/manual_ux_validation_20260302/index.md b/conductor/tracks/manual_ux_validation_20260302/index.md new file mode 100644 index 0000000..057295b --- /dev/null +++ b/conductor/tracks/manual_ux_validation_20260302/index.md @@ -0,0 +1,5 @@ +# Track manual_ux_validation_20260302 Context + +- [Specification](./spec.md) +- [Implementation Plan](./plan.md) +- [Metadata](./metadata.json) \ No newline at end of file diff --git a/conductor/tracks/manual_ux_validation_20260302/metadata.json b/conductor/tracks/manual_ux_validation_20260302/metadata.json new file mode 100644 index 0000000..5b03351 --- /dev/null +++ b/conductor/tracks/manual_ux_validation_20260302/metadata.json @@ -0,0 +1,8 @@ +{ + "track_id": "manual_ux_validation_20260302", + "type": "feature", + "status": "new", + "created_at": "2026-03-02T22:40:00Z", + "updated_at": "2026-03-02T22:40:00Z", + "description": "Highly interactive human-in-the-loop track to review and adjust GUI UX, animations, popups, and layout structures based on slow-interval simulation feedback." +} \ No newline at end of file diff --git a/conductor/tracks/manual_ux_validation_20260302/plan.md b/conductor/tracks/manual_ux_validation_20260302/plan.md new file mode 100644 index 0000000..a88d84a --- /dev/null +++ b/conductor/tracks/manual_ux_validation_20260302/plan.md @@ -0,0 +1,41 @@ +# Implementation Plan: Manual UX Validation & Polish (manual_ux_validation_20260302) + +## Phase 1: Observation Harness Setup +- [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator` +- [ ] Task: Create Slow-Mode Simulation + - [ ] WHERE: `simulation/` directory + - [ ] WHAT: Create `ux_observation_sim.py` that executes a standard workflow but with forced 3-5 second delays between actions to allow the user to watch the GUI respond. + - [ ] HOW: Use `ApiHookClient` with heavy `time.sleep()` blocks specifically designed for human observation (exempt from the fast-test rule). + - [ ] SAFETY: Keep this script strictly separate from the automated test suite. +- [ ] Task: Conductor - User Manual Verification 'Phase 1: Observation Harness' (Protocol in workflow.md) + +## Phase 2: Structural Layout & Organization +- [ ] Task: Interactive Layout Iteration + - [ ] WHERE: `gui_2.py` + - [ ] WHAT: Work live with the user to shift UI elements between Tabs, Panels, and Collapsing Headers. Focus on logical grouping of AI settings, operations, and logs. + - [ ] HOW: Rapidly apply changes requested by the user and re-render. + - [ ] SAFETY: Avoid breaking data bindings during structural moves. +- [ ] Task: Conductor - User Manual Verification 'Phase 2: Layout Finalization' (Protocol in workflow.md) + +## Phase 3: Animations, Knobs & Visual Feedback +- [ ] Task: Tune Blinking & State Animations + - [ ] WHERE: `gui_2.py` + - [ ] WHAT: Adjust `math.sin(time.time() * X)` frequencies, color vectors, and trigger conditions for "streaming", "working", and "error" states. + - [ ] HOW: Modify rendering loops based on user feedback. + - [ ] SAFETY: None. +- [ ] Task: Refine Controls & Knobs + - [ ] WHERE: `gui_2.py` + - [ ] WHAT: Evaluate the placement and feel of sliders, combo boxes, and buttons. + - [ ] HOW: Adjust ImGui spacing, item widths, and same-line alignments. + - [ ] SAFETY: None. +- [ ] Task: Conductor - User Manual Verification 'Phase 3: Visual Polish' (Protocol in workflow.md) + +## Phase 4: Popup Behavior & Final Sign-off +- [ ] Task: Implement Auto-Close Popups + - [ ] WHERE: `gui_2.py` + - [ ] WHAT: Review existing popups. Implement a timer mechanism (e.g., comparing `time.time()` against a trigger time) to automatically close specific informational popups after N seconds. + - [ ] HOW: Add timer state to `app_instance` and use `imgui.close_current_popup()` conditionally. + - [ ] SAFETY: Do not auto-close critical confirmation dialogs (like file write approvals). +- [ ] Task: Final UX Sign-off + - [ ] Ask the user for a final comprehensive review of the application's feel. +- [ ] Task: Conductor - User Manual Verification 'Phase 4: Final Sign-off' (Protocol in workflow.md) \ No newline at end of file diff --git a/conductor/tracks/manual_ux_validation_20260302/spec.md b/conductor/tracks/manual_ux_validation_20260302/spec.md new file mode 100644 index 0000000..997dad1 --- /dev/null +++ b/conductor/tracks/manual_ux_validation_20260302/spec.md @@ -0,0 +1,22 @@ +# Track Specification: Manual UX Validation & Polish (manual_ux_validation_20260302) + +## Overview +This track is an unusual, highly interactive human-in-the-loop review session. The user will act as the primary QA and Designer, manually using the GUI and observing it during slow-interval simulation runs. The goal is to aggressively iterate on the "feel" of the application: analyzing blinking animations, structural decisions (Tabs vs. Panels vs. Collapsing Headers), knob/control placements, and the efficacy of popups (including adding auto-close timers). + +## Architectural Constraints: The "Immediate Mode Iteration Contract" +- **Rapid Prototyping**: This track bypasses strict TDD for layout changes to allow the user to rapidly see and "feel" UI adjustments. +- **View-Only Changes**: Refactoring MUST remain confined to the GUI layer (`gui_2.py` or the future `app_controller.py` if decoupled). State machine logic should not be altered unless directly required for a visual effect (like an animation timer). +- **Simulation Harness**: Changes must be observable via a specialized slow-mode simulation that gives the user time to watch state transitions. + +## Functional Requirements +- **Slow-Mode Observation**: Create or modify a simulation script to run with deliberately long delays (e.g., 3-5 seconds between AI actions) so the user can observe UI states. +- **Layout Restructuring**: Adjust the hierarchy of Tabs, Panels, and Collapsing Headers iteratively based on user feedback during the session. +- **Animation & Feedback**: Tune blinking animations (frequency, color) and visual cues for AI activity and user input. +- **Popup Behavior**: Review all error and confirmation popups. Implement timed auto-close logic for non-critical informational popups. + +## Acceptance Criteria +- [ ] A slow-interval observation simulation exists and functions. +- [ ] Structural layout (Tabs/Panels/Headers) is finalized and explicitly approved by the user. +- [ ] Animations and visual feedback triggers feel responsive and intuitive to the user. +- [ ] Popup behaviors (including any new auto-close timers) are implemented and approved. +- [ ] Final explicit sign-off from the user on the overall GUI UX. \ No newline at end of file