archiving tracks

This commit is contained in:
2026-03-08 13:29:53 -04:00
parent b44c0f42cd
commit 66338b3ba0
83 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
# Implementation Plan: GUI Performance Profiling & Optimization (gui_performance_profiling_20260307)
> **Reference:** [Spec](./spec.md) | [Architecture Guide](../../../docs/guide_architecture.md)
## Phase 1: Instrumentation
Focus: Add profiling hooks to core application paths
- [x] Task 1.1: Wrap all `_render_*` methods in `gui_2.py` with profiling calls. (7198c87, 1f760f2)
- [x] Task 1.2: Wrap background thread methods in `app_controller.py` with profiling calls. (1f760f2)
- [x] Task 1.3: Wrap core AI request and tool execution methods in `ai_client.py` with profiling calls. (1f760f2)
- [x] Task 1.4: Refactor `PerformanceMonitor` to a singleton pattern for cross-module consistency. (1f760f2)
## Phase 2: Diagnostics UI
Focus: Display timings in the GUI
- [x] Task 2.1: Add "Detailed Component Timings" table to Diagnostics panel in `src/gui_2.py`. (1f760f2)
- [x] Task 2.2: Implement 10ms threshold highlighting in the table. (1f760f2)
- [x] Task 2.3: Implement a global "Enable Profiling" toggle synchronized across modules. (1f760f2)
## Phase 3: Verification & Optimization
Focus: Analyze results and fix bottlenecks
- [x] Task 3.1: Verify timings are accurate via manual walkthrough. (1f760f2)
- [x] Task 3.2: Identify components consistently > 10ms and propose optimizations. (1f760f2)

View File

@@ -0,0 +1,21 @@
# Track Specification: GUI Performance Profiling & Optimization (gui_performance_profiling_20260307)
## Overview
Implement fine-grained performance profiling within the main ImGui rendering loop (`gui_2.py`) to ensure adherence to data-oriented and immediate mode heuristics. This track will provide visual diagnostics for high-overhead UI components, allowing developers to monitor and optimize render frame times.
## Core Requirements
1. **Instrumentation:** Inject `start_component()` and `end_component()` calls from the `PerformanceMonitor` API (`src/performance_monitor.py`) around identified high-overhead methods in `src/gui_2.py`.
2. **Diagnostics UI:** Expand the Diagnostics panel in `gui_2.py` to include a new table titled "Detailed Component Timings".
3. **Threshold Alerting:** Add visual threshold alerts (e.g., color highlighting) in the new Diagnostics table for any individual component whose execution time exceeds 10ms.
4. **Target Methods:**
- `_render_log_management`
- `_render_discussion_panel`
- `_render_mma_dashboard`
- `_gui_func` (as a global wrapper)
## Acceptance Criteria
- [ ] Profiling calls correctly wrap target methods.
- [ ] "Detailed Component Timings" table displays in Diagnostics panel.
- [ ] Timings update in real-time (every 0.5s or similar).
- [ ] Components exceeding 10ms are highlighted (e.g., Red).
- [ ] 1-space indentation maintained.