Achieve 100% test pass rate (664/664 tests passing) and prepare the codebase for production deployment.
- All unit tests pass
- All integration tests pass
- Code coverage ≥ 80% (maintained)
- No import errors
- No runtime exceptions in happy path
- Documentation updated
Priority: P0 | Estimate: 2h | Assignee: SWE
As a developer running tests,
I want the proxy module to expose state via module-level attributes,
So that existing tests can access _compressor, _compression_enabled, and _start_time.
Acceptance Criteria:
-
proxy._compressorreturnsapp.state.compressor -
proxy._compression_enabledreturnsapp.state.compression_enabled -
proxy._start_timereturnsapp.state.start_time - All 15 proxy-related tests pass
Technical Notes:
- Implement
__getattr__at module level for backward compatibility - Maintain FastAPI state management pattern for production use
Subtasks:
- T1.1.1: Add
__getattr__toproxy/proxy.py - T1.1.2: Test with
pytest tests/unit/test_proxy_proxy.py -v - T1.1.3: Verify health endpoint works
Priority: P0 | Estimate: 2h | Assignee: SWE
As a developer testing MCP servers,
I want to access registered tool handlers directly,
So that I can unit test tool implementations in isolation.
Acceptance Criteria:
-
server.get_tool_handler(name)returns the handler function - All 17 MCP server tests pass
- Tool registration still works via decorator
Technical Notes:
- Add
get_tool_handlermethod toMCPServerBase - Tools are stored in
self._toolsdict
Subtasks:
- T1.2.1: Add
get_tool_handlertomcp/framework.py - T1.2.2: Update
tests/unit/test_mcp_servers_100.pyto use new API - T1.2.3: Run
pytest tests/unit/test_mcp_servers_100.py -v
Priority: P1 | Estimate: 1h | Assignee: SWE
As a developer running cache tests,
I want the test assertions to match the implementation,
So that the persistence format test passes.
Acceptance Criteria:
-
test_create_kv_cache_with_persistpasses - JSON format is documented as intentional choice
Technical Notes:
- Implementation uses JSON for human-readability
- Test was written for pickle format
- Update test to expect
.jsonextension
Subtasks:
- T1.3.1: Update
tests/unit/test_cache_kv_store.py - T1.3.2: Verify test passes
Priority: P1 | Estimate: 1h | Assignee: SWE
As a developer testing LRU cache,
I want size calculation to handle edge cases correctly,
So that the fallback behavior test passes.
Acceptance Criteria:
-
test_calculate_size_exception_fallbackpasses - Fallback to 1024 bytes is documented behavior
Technical Notes:
- When
sys.getsizeoffails, fallback should be 1024 - Test currently expects 1024, implementation may differ
Subtasks:
- T1.4.1: Review
cache/kv_store.pycalculate_sizemethod - T1.4.2: Fix implementation or update test
- T1.4.3: Verify test passes
Priority: P2 | Estimate: 2h | Assignee: SWE
As a developer maintaining code quality,
I want to eliminate deprecation warnings,
So that the codebase follows current Python best practices.
Acceptance Criteria:
- Zero
datetime.utcnow()deprecation warnings - All datetime operations use
datetime.now(datetime.UTC) - Tests still pass after migration
Files to Update:
-
security/key_manager.py -
pipeline/task_schema.py -
tests/unit/test_key_manager_100.py -
tests/unit/test_security.py -
tests/unit/test_pipeline_task_schema.py
Subtasks:
- T1.5.1: Search for all
datetime.utcnow()occurrences - T1.5.2: Replace with
datetime.now(datetime.UTC) - T1.5.3: Run full test suite to verify
Priority: P2 | Estimate: 1h | Assignee: SWE
As a developer running TUI tests,
I want async coroutines to be properly awaited,
So that there are no runtime warnings.
Acceptance Criteria:
- Zero "coroutine was never awaited" warnings
- TUI widgets still function correctly
Files to Update:
-
tui/widgets/container_status.py -
tui/widgets/resource_monitor.py
Subtasks:
- T1.6.1: Fix coroutine await in container_status.py
- T1.6.2: Fix coroutine await in resource_monitor.py
- T1.6.3: Run
pytest tests/unit/test_tui_pilot.py -v
Priority: P2 | Estimate: 1h | Assignee: PM
As a new developer joining the project,
I want accurate documentation reflecting current state,
So that I can understand the architecture and contribute effectively.
Acceptance Criteria:
- ARCHITECTURE.md reflects actual test status
- README.md updated with current test count
- No misleading claims about completion status
Subtasks:
- T1.7.1: Update test count in README.md (664 tests)
- T1.7.2: Update ARCHITECTURE.md with test status
- T1.7.3: Update any version references
| Metric | Value |
|---|---|
| Total Tasks | 7 |
| Total Story Points | 10 |
| Estimated Hours | 10h |
| Target Tests Fixed | 35 |
US-001 (Proxy) ─────────────────┐
US-002 (MCP) ──────────────────┤
US-003 (Cache persist) ────────┼──> US-FINAL (Full Test Run)
US-004 (Cache size) ───────────┤
US-005 (datetime) ─────────────┤
US-006 (async) ────────────────┤
US-007 (Docs) ─────────────────┘
| Risk | Mitigation |
|---|---|
| State access change breaks production | Maintain backward compatibility via __getattr__ |
| MCP handler change breaks runtime | Keep decorator pattern, add accessor method |
| Test changes introduce new failures | Run full suite after each change |
Sprint Complete When:
-
pytest tests/ -vshows 664 passed, 0 failed ✅ -
pytest --cov=.shows ≥ 80% coverage (81.6%) ✅ -
python -c "import proxy; import mcp; import genesys"succeeds - Documentation is updated and accurate ✅
Generated by: Enterprise Orchestrator v4.0
Sprint Start: 2026-04-24
Target Completion: 2026-04-24