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:
@@ -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
|
||||
|
||||
@@ -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`
|
||||
|
||||
@@ -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`
|
||||
|
||||
Reference in New Issue
Block a user