This commit is contained in:
2026-03-06 14:04:50 -05:00
parent 5a484c9e82
commit 0de50e216b
5 changed files with 113 additions and 43 deletions

View File

@@ -3,24 +3,24 @@
> **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. Use purely in-process mocks to verify concurrency logic.
## Phase 1: Engine Refactoring
- [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator`
- [ ] Task: Refactor `mcp_client.py` for async execution
- [ ] WHERE: `mcp_client.py`
- [ ] WHAT: Convert tool execution wrappers to `async def` or wrap them in thread executors.
- [ ] HOW: Use `asyncio.to_thread` for blocking I/O bound tools.
- [ ] SAFETY: Ensure thread safety for shared resources.
- [ ] Task: Update `ai_client.py` dispatcher
- [ ] WHERE: `ai_client.py` (around tool dispatch loop)
- [ ] WHAT: Use `asyncio.gather` to execute multiple tool calls concurrently.
- [ ] HOW: Await the gathered results before proceeding with the AI loop.
- [ ] SAFETY: Handle tool execution exceptions gracefully without crashing the gather group.
- [ ] Task: Conductor - User Manual Verification 'Phase 1' (Protocol in workflow.md)
- [x] Task: Initialize MMA Environment `activate_skill mma-orchestrator`
- [x] Task: Refactor `mcp_client.py` for async execution (60e1dce)
- [x] WHERE: `mcp_client.py`
- [x] WHAT: Convert tool execution wrappers to `async def` or wrap them in thread executors.
- [x] HOW: Use `asyncio.to_thread` for blocking I/O bound tools.
- [x] SAFETY: Ensure thread safety for shared resources.
- [x] Task: Update `ai_client.py` dispatcher (87dbfc5)
- [x] WHERE: `ai_client.py` (around tool dispatch loop)
- [x] WHAT: Use `asyncio.gather` to execute multiple tool calls concurrently.
- [x] HOW: Await the gathered results before proceeding with the AI loop.
- [x] SAFETY: Handle tool execution exceptions gracefully without crashing the gather group.
- [x] Task: Conductor - User Manual Verification 'Phase 1' (Protocol in workflow.md)
## Phase 2: Testing & Validation
- [ ] Task: Implement async tool execution tests
- [ ] WHERE: `tests/test_async_tools.py`
- [ ] WHAT: Write a test verifying that multiple tools run concurrently (e.g., measuring total time vs sum of individual sleep times).
- [ ] HOW: Use a mock tool with an explicit sleep delay.
- [ ] SAFETY: Standard pytest setup.
- [ ] Task: Full Suite Validation
- [ ] Task: Conductor - User Manual Verification 'Phase 2' (Protocol in workflow.md)
- [x] Task: Implement async tool execution tests (eddc245)
- [x] WHERE: `tests/test_async_tools.py`
- [x] WHAT: Write a test verifying that multiple tools run concurrently (e.g., measuring total time vs sum of individual sleep times).
- [x] HOW: Use a mock tool with an explicit sleep delay.
- [x] SAFETY: Standard pytest setup.
- [x] Task: Full Suite Validation (3bc900b)
- [x] Task: Conductor - User Manual Verification 'Phase 2' (Protocol in workflow.md)