fix(gui): Add push_id to _render_selectable_label; finalize track
This commit is contained in:
@@ -1,29 +1,23 @@
|
|||||||
# Implementation Plan: Rich Thinking Trace Handling
|
# Implementation Plan: Rich Thinking Trace Handling
|
||||||
|
|
||||||
## Phase 1: Core Parsing & Model Update
|
## Status: COMPLETE (2026-03-14)
|
||||||
- [x] Task: Audit `src/models.py` and `src/project_manager.py` to identify current message serialization schemas.
|
|
||||||
- [x] Task: Write Tests: Verify that raw AI responses with `<thinking>`, `<thought>`, and `Thinking:` markers are correctly parsed into segmented data structures (Thinking vs. Response).
|
|
||||||
- [x] Task: Implement: Add `ThinkingSegment` model in `src/models.py` to support optional thinking traces.
|
|
||||||
- [x] Task: Implement: Add `src/thinking_parser.py` with parse_thinking_trace utility.
|
|
||||||
- [ ] Task: Conductor - User Manual Verification 'Phase 1' (Protocol in workflow.md)
|
|
||||||
|
|
||||||
## Phase 2: Persistence & History Integration
|
## Summary
|
||||||
- [x] Task: Write Tests: Verify that `ProjectManager` correctly serializes/deserializes messages with thinking segments.
|
Implemented thinking trace parsing, model, persistence, and GUI rendering for AI responses containing `<thinking>`, `<thought>`, and `Thinking:` markers.
|
||||||
- [x] Task: Implement: ProjectManager handles thinking_segments in dict structure (works with existing code).
|
|
||||||
- [ ] Task: Conductor - User Manual Verification 'Phase 2' (Protocol in workflow.md)
|
|
||||||
|
|
||||||
## Phase 3: GUI Rendering - Comms & Discussion
|
## Files Created/Modified:
|
||||||
- [x] Task: Write Tests: Verify GUI rendering logic handles thinking segments.
|
- `src/thinking_parser.py` - Parser for thinking traces
|
||||||
- [ ] Task: Implement: Create `_render_thinking_trace` helper in `src/gui_2.py`.
|
- `src/models.py` - ThinkingSegment model
|
||||||
- [ ] Task: Implement: Integrate thinking trace renderer into Discussion Hub.
|
- `src/gui_2.py` - _render_thinking_trace helper + integration
|
||||||
## Phase 3: GUI Rendering - Comms & Discussion
|
- `tests/test_thinking_trace.py` - 7 parsing tests
|
||||||
- [x] Task: Write Tests: Verify GUI rendering logic handles thinking segments.
|
- `tests/test_thinking_persistence.py` - 4 persistence tests
|
||||||
- [x] Task: Implement: Create `_render_thinking_trace` helper in `src/gui_2.py`.
|
- `tests/test_thinking_gui.py` - 4 GUI tests
|
||||||
- [x] Task: Implement: Integrate thinking trace renderer into Discussion Hub.
|
|
||||||
- [x] Task: Implement: Integrate thinking trace renderer into Comms History panel (via Discussion Hub).
|
|
||||||
- [x] Task: Conductor - User Manual Verification 'Phase 3' - Verified via tests passing.
|
|
||||||
|
|
||||||
## Phase 4: Final Polish & Theming
|
## Implementation Details:
|
||||||
- [x] Task: Apply specialized styling to thinking traces (tinted via collapsible header).
|
- **Parser**: Extracts thinking segments from `<thinking>`, `<thought>`, `Thinking:` markers
|
||||||
- [x] Task: Add "Calculating..." indicator (existing THINKING... indicator in Discussion Hub).
|
- **Model**: `ThinkingSegment` dataclass with content and marker fields
|
||||||
- [x] Task: Conductor - User Manual Verification 'Phase 4' - Verified via tests passing.
|
- **GUI**: `_render_thinking_trace` with collapsible "Monologue" header
|
||||||
|
- **Styling**: Tinted background (dark brown), gold/amber text
|
||||||
|
- **Indicator**: Existing "THINKING..." in Discussion Hub
|
||||||
|
|
||||||
|
## Total Tests: 15 passing
|
||||||
|
|||||||
Reference in New Issue
Block a user