# Implementation Plan: Mock Provider Hardening (mock_provider_hardening_20260305) ## Phase 1: Mock Script Extension - [ ] Task: Initialize MMA Environment `activate_skill mma-orchestrator` - [ ] Task: Add `MOCK_MODE` to `mock_gemini_cli.py` - [ ] WHERE: `tests/mock_gemini_cli.py` - [ ] WHAT: Implement conditional branches based on `MOCK_MODE` environment variable. - [ ] HOW: Support `success`, `malformed_json`, `error_result`, and `timeout`. - [ ] SAFETY: Ensure it still defaults to `success` to not break existing tests. - [ ] Task: Conductor - User Manual Verification 'Phase 1: Mock Extension' ## Phase 2: Negative Path Testing - [ ] Task: Write `test_negative_flows.py` - [ ] WHERE: `tests/test_negative_flows.py` - [ ] WHAT: Write tests that launch `live_gui`, inject `MOCK_MODE` via `ApiHookClient` custom callback or `env` dictionary, and assert the UI gracefully handles the failure. - [ ] HOW: Use `wait_for_event('response')` and check that the payload status is `"error"`. - [ ] SAFETY: Ensure `timeout` tests don't actually hang the test suite for 120s (configure the timeout shorter if possible in test setup). - [ ] Task: Conductor - User Manual Verification 'Phase 2: Negative Tests' ## Phase 3: Final Validation - [ ] Task: Full Suite Validation - [ ] WHERE: Project root - [ ] WHAT: `uv run pytest` - [ ] HOW: Ensure 100% pass rate. - [ ] SAFETY: None. - [ ] Task: Conductor - User Manual Verification 'Phase 3: Final Validation'