WIP: profiling

This commit is contained in:
2026-03-07 14:02:03 -05:00
parent d71d82bafb
commit fcff00f750
5 changed files with 208 additions and 141 deletions

View File

@@ -3,21 +3,22 @@
> **Reference:** [Spec](./spec.md) | [Architecture Guide](../../../docs/guide_architecture.md)
## Phase 1: Instrumentation
Focus: Add profiling hooks to gui_2.py
Focus: Add profiling hooks to core application paths
- [x] Task 1.1: Wrap `_render_log_management` with profiling calls. (f27b971)
- [x] Task 1.2: Wrap `_render_discussion_panel` with profiling calls. (f27b971)
- [x] Task 1.3: Wrap `_render_mma_dashboard` with profiling calls. (f27b971)
- [x] Task 1.4: Wrap core `_gui_func` logic with profiling calls. (f27b971)
- [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`. (f27b971)
- [x] Task 2.2: Implement 10ms threshold highlighting in the table. (f27b971)
- [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
- [ ] Task 3.1: Verify timings are accurate via manual walkthrough.
- [ ] Task 3.2: Identify components consistently > 10ms and propose optimizations.
- [x] Task 3.1: Verify timings are accurate via manual walkthrough. (1f760f2)
- [x] Task 3.2: Identify components consistently > 10ms and propose optimizations. (1f760f2)