Skip to content

Latest commit

 

History

History
244 lines (182 loc) · 7.91 KB

File metadata and controls

244 lines (182 loc) · 7.91 KB

Phase 2 Testing Initiative - Recommendation

Prepared for: aeon project leadership
Date: 2026-04-18
Status: Ready for approval


Executive Summary

Phase 1 delivered 102 comprehensive MCP integration tests covering all 25 aeon tools with 100% pass rate. This elevated test coverage from 1 smoke test to 102 targeted tests across success paths, error handling, and multi-tool workflows.

Phase 2 recommendation: Focus on Workstream 1 token-efficient topology implementation while simultaneously fixing 8 known aeon_jit test failures. This dual approach:

  • ✅ Unblocks critical agent capability (function skeleton + data flow slices)
  • ✅ Resolves framework issues (100% aeon_jit test pass rate)
  • ✅ Delivers 95+ new tests with coverage analysis
  • ✅ Maintains momentum on roadmap execution

What We Know

Phase 1 Outcomes

  • ✅ 102 MCP tests (all passing)
  • ✅ 25/25 tools covered
  • ✅ Success + error + edge case scenarios
  • ✅ Multi-tool workflow validation
  • ✅ State persistence verification

aeon_jit Current Status

  • 77/85 unit tests passing (91%)
  • 8 known failures:
    • 7 flag-conditional branch tests (branch target = 0 instead of address)
    • 1 bridge callback test (invoked 3x instead of 1x)
  • 2 integration test files (roundtrip, native_smoke)
  • 1 example file (dump_printf_bridge_asm)

Roadmap Context

  • 6 workstreams defined (Token Topology → Deterministic Engine → Blackboard → Experimentation → Orchestration → Evaluation)
  • Workstream 1 highest priority for enabling agent efficiency
  • Workstream 1 requirements: Function summaries + data flow slices

Three Options Evaluated

Option 1: Workstream 1 Testing ⭐ RECOMMENDED

Objective: Implement token-efficient topology features + tests

Deliverables:

  • get_function_skeleton(addr) tool - Dense function metadata
  • get_data_flow_slice(addr, reg) tool - Backward/forward value slices
  • 40+ tests for both tools
  • 8 aeon_jit failures fixed

Timeline: 2 weeks
Value: Very High (enables agent triage, unblocks Workstream 2)
Test count: 40 new tests
Impact: Agent can now summarize functions without reading full IL/assembly


Option 2: Coverage Metrics Analysis

Objective: Measure test coverage for Phase 1 tests

Deliverables:

  • Code coverage percentage report (lines, branches)
  • Tool coverage matrix (25 tools × test scenarios)
  • Gap analysis (untested paths)

Timeline: 1 week
Value: High (quality assurance, identifies gaps)
Test count: 0 new tests
Impact: Understand test depth; identify missing scenarios


Option 3: aeon_jit Boundary Cases

Objective: Systematically test edge cases in JIT instruction compilation

Deliverables:

  • Register pressure tests (all regs, spillage)
  • Memory edge case tests (alignment, boundaries)
  • Control flow extremes (deep nesting, large switches)
  • 40 new boundary case tests
  • 15 integration tests for complex scenarios

Timeline: 2 weeks
Value: Medium-High (prevents regressions, discovers bugs)
Test count: 55 new tests
Impact: Improved test robustness; confidence in framework


Recommended Approach: Dual Focus

Phase 2A (Weeks 1-2): Priority 1 - Workstream 1 + Failures

  • Investigate and fix 8 aeon_jit failures
  • Implement get_function_skeleton tool (15 tests)
  • Implement get_data_flow_slice tool (25 tests)
  • Total: 40 new tests, 100% aeon_jit pass rate

Phase 2B (Weeks 3-4): Priority 2 - Coverage & Boundaries

  • Generate coverage metrics for Phase 1 tests
  • Implement boundary case tests (40 tests)
  • Implement integration tests for complex control flow (15 tests)
  • Total: 55 new tests, coverage report

Total Phase 2 Deliverables:

  • 95+ new tests (all passing)
  • 8 aeon_jit failures fixed ✅
  • 2 Workstream 1 features implemented ✅
  • Coverage metrics generated ✅
  • Test matrix created ✅

Why This Order?

Part A First (Workstream 1 + Failures)

  1. Highest strategic value - Workstream 1 enables agent efficiency (roadmap critical path)
  2. Unblocks other work - Data flow slices enable Datalog queries (Workstream 2)
  3. Framework stability - Fixing 8 failures improves confidence
  4. Clear dependencies - Build on Phase 1 MCP test infrastructure
  5. Quick wins - Function skeleton/slice implementation relatively straightforward

Part B Second (Coverage + Boundaries)

  1. Foundation ready - aeon_jit stable after Part A
  2. Quality measure - Coverage metrics useful after fixing failures
  3. Comprehensive testing - Boundary cases more useful after features stabilized
  4. Lower risk - These are additive tests, don't block other work

Risk Analysis

Risk Probability Impact Mitigation
aeon_jit failures hard to debug 30% Medium Root-cause analysis first; may need to defer one failure
Workstream 1 design needs refinement 20% Low Design already in roadmap.md; validate before coding
Coverage gaps are larger than expected 40% Low Expected finding; identifies priority areas
New tests uncover additional bugs 50% Medium Normal; fix bugs as found; increases test value

Success Metrics

Phase 2A Success

  • ✅ 8/8 aeon_jit failures fixed
  • ✅ 40 new tests passing (15 skeleton + 25 slice)
  • ✅ Both tools integrated into MCP
  • ✅ Tools ready for agent use

Phase 2B Success

  • ✅ Coverage report generated
  • ✅ 55 new tests passing (40 boundary + 15 integration)
  • ✅ Test matrix created
  • ✅ Coverage improved to 95%+ for Phase 1 tests

Overall Phase 2 Success

  • ✅ 95+ new tests (all passing)
  • ✅ aeon_jit at 100% (85/85)
  • ✅ Workstream 1 ready
  • ✅ Quality metrics generated
  • ✅ Roadmap progress documented

Resource Estimate

Phase Effort Duration FTE
2A: Workstream 1 + Fixes 2 weeks Weeks 1-2 1.0
2B: Coverage + Boundaries 2 weeks Weeks 3-4 0.5
Total 4 weeks 1 month ~0.75 FTE

(Note: 0.75 FTE assumes some parallel work with other projects)


Approval Requested

We recommend proceeding with Phase 2A immediately:

  1. ✅ Fix 8 aeon_jit failures
  2. ✅ Implement Workstream 1 tools
  3. ✅ Add 40 comprehensive tests

Questions for approval:

  1. Should we prioritize Part A (Workstream 1) first? ← YES, recommended
  2. Is the 2-week timeline acceptable? ← Confirm
  3. Should Part B (coverage/boundaries) proceed after Part A? ← YES, recommended
  4. Any concerns about focusing on Workstream 1 before other workstreams? ← Discuss

Next Steps (Upon Approval)

Week 1:

  • Create plan task list
  • Debug aeon_jit failures (root cause analysis)
  • Design get_function_skeleton API
  • Implement skeleton tool
  • Write skeleton tests

Week 2:

  • Design get_data_flow_slice API
  • Implement slice tool
  • Write slice tests
  • Integration testing
  • README updates

Week 3:

  • Coverage measurement and reporting
  • Boundary case test design
  • Implement boundary tests

Week 4:

  • Integration test implementation
  • Final validation
  • Comprehensive documentation
  • Commit and close Phase 2

Conclusion

Phase 2 dual-focus approach balances:

  • ✅ Strategic value (Workstream 1 critical for agents)
  • ✅ Framework stability (fix known failures)
  • ✅ Test quality (coverage metrics + boundary cases)
  • ✅ Roadmap progress (concrete features + solid foundation)

This positions aeon to:

  1. Enable agents to triage binaries efficiently (token-saving)
  2. Provide deterministic analysis (not guesswork)
  3. Support sophisticated agent workflows (summary → slice → query → experiment)
  4. Maintain high test quality (95%+ coverage)

Recommended decision: Proceed with Phase 2A immediately, followed by Phase 2B.


For questions or clarifications, refer to the detailed plan at PHASE_2_TESTING_PLAN.md.