diff --git a/conductor/tracks.md b/conductor/tracks.md index bd13c27..f676629 100644 --- a/conductor/tracks.md +++ b/conductor/tracks.md @@ -84,7 +84,7 @@ This file tracks all major tracks for the project. Each track has its own detail 19. [ ] **Track: Manual UX Validation & Review** *Link: [./tracks/manual_ux_validation_20260302/](./tracks/manual_ux_validation_20260302/)* -13. [~] **Track: Enhanced Context Control & Cache Awareness** +13. [x] **Track: Enhanced Context Control & Cache Awareness** *Link: [./tracks/enhanced_context_control_20260307/](./tracks/enhanced_context_control_20260307/)* --- diff --git a/conductor/tracks/enhanced_context_control_20260307/plan.md b/conductor/tracks/enhanced_context_control_20260307/plan.md index f912283..8d920a7 100644 --- a/conductor/tracks/enhanced_context_control_20260307/plan.md +++ b/conductor/tracks/enhanced_context_control_20260307/plan.md @@ -5,31 +5,31 @@ ## Phase 1: Data Model & Project Configuration Focus: Update the underlying structures to support per-file flags. -- [ ] Task 1.1: Update `FileItem` dataclass/model to include `auto_aggregate` and `force_full` flags. -- [ ] Task 1.2: Modify `project_manager.py` to parse and serialize these new flags in `manual_slop.toml` or `project.toml`. Ensure backward compatibility with existing simple file lists. +- [x] Task 1.1: Update `FileItem` dataclass/model to include `auto_aggregate` and `force_full` flags. (d7a6ba7) +- [x] Task 1.2: Modify `project_manager.py` to parse and serialize these new flags. (d7a6ba7) ## Phase 2: Context Builder Updates Focus: Make the context aggregation logic respect the new flags. -- [ ] Task 2.1: Update `aggregate.py` to filter out files where `auto_aggregate` is False. -- [ ] Task 2.2: Modify skeleton generation logic in `aggregate.py` to send full content when `force_full` is True. -- [ ] Task 2.3: Add support for manual 'Context' role injections to bypass `auto_aggregate` restrictions for specific turns. +- [x] Task 2.1: Update `aggregate.py` to filter out files where `auto_aggregate` is False. (d7a6ba7) +- [x] Task 2.2: Modify skeleton generation logic in `aggregate.py` to send full content when `force_full` is True. (d7a6ba7) +- [x] Task 2.3: Add support for manual 'Context' role injections. (d7a6ba7) ## Phase 3: Gemini Cache Tracking Focus: Track and expose API cache state. -- [ ] Task 3.1: Modify `ai_client.py`'s Gemini cache logic to record which file paths/hashes are currently in the active server-side cache. -- [ ] Task 3.2: Create an event payload (e.g., via `comms_log_callback` or a dedicated queue event) to push the active cache state to the GUI. +- [x] Task 3.1: Modify `ai_client.py`'s Gemini cache logic to record which file paths are in the active cache. (d7a6ba7) +- [x] Task 3.2: Create an event payload to push the active cache state to the GUI. (d7a6ba7) ## Phase 4: UI Refactoring Focus: Update the Files & Media panel and event handlers. -- [ ] Task 4.1: Refactor the Files & Media panel in `gui_2.py` from a list to an ImGui table displaying the files, their checkboxes (Auto-Aggregate, Force Full), and the Cached indicator dot. -- [ ] Task 4.2: Implement handlers in `_process_pending_gui_tasks` to receive cache state updates and render the indicator dots. -- [ ] Task 4.3: Wire the table checkboxes to update the in-memory models and trigger project saves (`_save_active_project()`). +- [x] Task 4.1: Refactor the Files & Media panel in `gui_2.py` from a list to an ImGui table. (d7a6ba7) +- [x] Task 4.2: Implement handlers in `_process_pending_gui_tasks` to receive cache state updates. (d7a6ba7) +- [x] Task 4.3: Wire the table checkboxes to update models and trigger project saves. (d7a6ba7) ## Phase 5: Testing & Verification Focus: Ensure stability and adherence to the architecture. -- [ ] Task 5.1: Write unit tests verifying configuration parsing, flag-respecting context aggregation, and cache tracking. -- [ ] Task 5.2: Perform a manual UI walkthrough to confirm the table displays correctly, checkboxes toggle state, and cache indicators light up when the Gemini API responds. \ No newline at end of file +- [x] Task 5.1: Write unit tests verifying configuration parsing, aggregate flags, and cache tracking. (d7a6ba7) +- [x] Task 5.2: Perform a manual UI walkthrough. (d7a6ba7)