docs: Update track plans with test architecture debt warnings

- Mark live_gui tests as flaky by design in TASKS.md until stabiliztion tracks complete

- Add test debt notes to upcoming tracks to guide testing strategies
This commit is contained in:
2026-03-05 09:32:24 -05:00
parent e3c6b9e498
commit d863c51da3
4 changed files with 50 additions and 41 deletions

View File

@@ -1,5 +1,7 @@
# Implementation Plan: Hook API UI State Verification (hook_api_ui_state_verification_20260302)
> **TEST DEBT FIX:** This track replaces fragile `time.sleep()` and string-matching assertions in simulations (like `test_visual_sim_mma_v2.py`) with deterministic UI state queries. This is critical for stabilizing the test suite after the GUI decoupling.
## Phase 1: API Endpoint Implementation
- [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator`
- [ ] Task: Implement `/api/gui/state` GET Endpoint

View File

@@ -1,5 +1,7 @@
# Implementation Plan: Robust JSON Parsing for Tech Lead (robust_json_parsing_tech_lead_20260302)
> **TEST DEBT FIX:** Due to ongoing test architecture instability (documented in `test_architecture_integrity_audit_20260304`), do NOT write new `live_gui` integration tests for this track. Rely strictly on in-process `unittest.mock` for the `ai_client` to verify the retry logic.
## Phase 1: Implementation of Retry Logic
- [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator`
- [ ] Task: Implement Retry Loop in `generate_tickets`

View File

@@ -1,6 +1,21 @@
# Implementation Plan: Test Suite Performance & Flakiness (test_suite_performance_and_flakiness_20260302)
## Phase 1: Audit & Polling Primitives
> **TEST DEBT FIX:** This track is responsible for eliminating the `RuntimeError: Event loop is closed` deadlocks and zombie subprocesses discovered during the `test_architecture_integrity_audit_20260304` audit.
## Phase 1: Asyncio Decoupling & Queue Refactor
- [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator`
- [ ] Task: Rip out `asyncio` from `AppController`
- [ ] WHERE: `src/app_controller.py` and `src/events.py`
- [ ] WHAT: Replace `events.AsyncEventQueue` with a standard `queue.Queue`. Convert `_process_event_queue` to a synchronous `while True` loop running in a daemon thread.
- [ ] HOW: Remove all `async`/`await` and `asyncio.run_coroutine_threadsafe` calls related to the internal event queue.
- [ ] SAFETY: Ensures test teardowns no longer violently crash background event loops.
- [ ] Task: Ensure Phantom Processes are Killed
- [ ] WHERE: `tests/conftest.py`
- [ ] WHAT: Verify the `kill_process_tree` implementation added in the audit is fully robust against hanging `sloppy.py` instances.
- [ ] HOW: Test with intentional process hangs.
- [ ] Task: Conductor - User Manual Verification 'Phase 1: Asyncio Decoupling'
## Phase 2: Audit & Polling Primitives
- [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator`
- [ ] Task: Create Deterministic Polling Primitives
- [ ] WHERE: `tests/conftest.py`