delete ui perf track
This commit is contained in:
@@ -1,5 +0,0 @@
|
|||||||
# Track ui_performance_20260223 Context
|
|
||||||
|
|
||||||
- [Specification](./spec.md)
|
|
||||||
- [Implementation Plan](./plan.md)
|
|
||||||
- [Metadata](./metadata.json)
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"track_id": "ui_performance_20260223",
|
|
||||||
"type": "feature",
|
|
||||||
"status": "new",
|
|
||||||
"created_at": "2026-02-23T14:45:00Z",
|
|
||||||
"updated_at": "2026-02-23T14:45:00Z",
|
|
||||||
"description": "Add new metrics to track ui performance (frametimings, fps, input lag, etc). And api hooks so that ai may engage with them."
|
|
||||||
}
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
# Implementation Plan: UI Performance Metrics and AI Diagnostics
|
|
||||||
|
|
||||||
## Phase 1: High-Resolution Telemetry Engine [checkpoint: f5c9596]
|
|
||||||
- [x] Task: Implement core performance collector (FrameTime, CPU usage) 7fe117d
|
|
||||||
- [x] Sub-task: Write Tests (validate metric collection accuracy)
|
|
||||||
- [x] Sub-task: Implement Feature (create `PerformanceMonitor` class)
|
|
||||||
- [x] Task: Integrate collector with Dear PyGui main loop 5c7fd39
|
|
||||||
- [x] Sub-task: Write Tests (verify integration doesn't crash loop)
|
|
||||||
- [x] Sub-task: Implement Feature (hooks in `gui.py` or `gui_2.py`)
|
|
||||||
- [x] Task: Implement Input Lag estimation logic cdd06d4
|
|
||||||
- [x] Sub-task: Write Tests (simulated input vs. response timing)
|
|
||||||
- [x] Sub-task: Implement Feature (event-based timing in GUI)
|
|
||||||
- [ ] Task: Conductor - User Manual Verification 'Phase 1: High-Resolution Telemetry Engine' (Protocol in workflow.md)
|
|
||||||
|
|
||||||
## Phase 2: AI Tooling and Alert System [checkpoint: b92f2f3]
|
|
||||||
- [x] Task: Create `get_ui_performance` AI tool 9ec5ff3
|
|
||||||
- [x] Sub-task: Write Tests (verify tool returns correct JSON schema)
|
|
||||||
- [x] Sub-task: Implement Feature (add tool to `mcp_client.py`)
|
|
||||||
- [x] Task: Implement performance threshold alert system 3e9d362
|
|
||||||
- [x] Sub-task: Write Tests (verify alerts trigger at correct thresholds)
|
|
||||||
- [x] Sub-task: Implement Feature (logic to inject messages into `ai_client.py` context)
|
|
||||||
- [ ] Task: Conductor - User Manual Verification 'Phase 2: AI Tooling and Alert System' (Protocol in workflow.md)
|
|
||||||
|
|
||||||
## Phase 3: Diagnostics UI and Optimization [checkpoint: 7aa9fe6]
|
|
||||||
- [x] Task: Build the Diagnostics Panel in Dear PyGui 30d838c
|
|
||||||
- [x] Sub-task: Write Tests (verify panel components render)
|
|
||||||
- [x] Sub-task: Implement Feature (plots, stat readouts in `gui.py`)
|
|
||||||
- [x] Task: Identify and fix main thread performance bottlenecks c2f4b16
|
|
||||||
- [x] Sub-task: Write Tests (reproducible "heavy" load test)
|
|
||||||
- [x] Sub-task: Implement Feature (refactor heavy logic to workers)
|
|
||||||
- [ ] Task: Conductor - User Manual Verification 'Phase 3: Diagnostics UI and Optimization' (Protocol in workflow.md)
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
# Specification: UI Performance Metrics and AI Diagnostics
|
|
||||||
|
|
||||||
## Overview
|
|
||||||
This track aims to resolve subpar UI performance (currently perceived below 60 FPS) by implementing a robust performance monitoring system. This system will collect high-resolution telemetry (Frame Time, Input Lag, Thread Usage) and expose it to both the user (via a Diagnostics Panel) and the AI (via API hooks). This ensures that performance degradation is caught early during development and testing.
|
|
||||||
|
|
||||||
## Functional Requirements
|
|
||||||
- **Metric Collection Engine:**
|
|
||||||
- Track **Frame Time** (ms) for every frame rendered by Dear PyGui.
|
|
||||||
- Measure **Input Lag** (estimated delay between input events and UI state updates).
|
|
||||||
- Monitor **CPU/Thread Usage**, specifically identifying blocks in the main UI thread.
|
|
||||||
- **Diagnostics Panel:**
|
|
||||||
- A new dedicated panel in the GUI to display real-time performance graphs and stats.
|
|
||||||
- Historical trend visualization for frame times to identify spikes.
|
|
||||||
- **AI API Hooks:**
|
|
||||||
- **Polling Tool:** A tool (e.g., `get_ui_performance`) that allows the AI to request a snapshot of current telemetry.
|
|
||||||
- **Event-Driven Alerts:** A mechanism to notify the AI (or append to history) when performance metrics cross a "degradation" threshold (e.g., frame time > 33ms).
|
|
||||||
- **Performance Optimization:**
|
|
||||||
- Identify the "heavy" process currently running in the main UI thread loop.
|
|
||||||
- Refactor identified bottlenecks to utilize background workers or optimized logic.
|
|
||||||
|
|
||||||
## Non-Functional Requirements
|
|
||||||
- **Low Overhead:** The monitoring system itself must not significantly impact UI performance (target <1% CPU overhead).
|
|
||||||
- **Accuracy:** Frame timings must be accurate to sub-millisecond resolution.
|
|
||||||
|
|
||||||
## Acceptance Criteria
|
|
||||||
- [ ] UI consistently maintains "Smooth Frame Timing" (minimized spikes) under normal load.
|
|
||||||
- [ ] Main thread load is reduced, evidenced by metrics showing less than 50% busy time during idle/light use.
|
|
||||||
- [ ] AI can successfully retrieve performance data using the `get_ui_performance` tool.
|
|
||||||
- [ ] AI is alerted when a simulated performance drop occurs.
|
|
||||||
- [ ] The Diagnostics Panel displays live, accurate data.
|
|
||||||
|
|
||||||
## Out of Scope
|
|
||||||
- GPU-specific profiling (e.g., VRAM usage, shader timings).
|
|
||||||
- Remote telemetry/analytics (data stays local).
|
|
||||||
Reference in New Issue
Block a user