roadmap_version: '1.0'
github_enabled: true
github_repo: null
roadmap:
- id: Fix SATD false positive and validate Known Defects scoring
  github_issue: null
  item_type: task
  title: 'New task: Fix SATD false positive and validate Known Defects scoring'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T06:53:20.226128437+00:00
  updated: 2025-11-21T14:08:25.475620550+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: Rebuild pmat binary with Known Defects v2.1 and validate scoring
  github_issue: null
  item_type: task
  title: 'New task: Rebuild pmat binary with Known Defects v2.1 and validate scoring'
  status: inprogress
  priority: medium
  assigned_to: null
  created: 2025-11-21T07:02:24.965876204+00:00
  updated: 2025-11-21T07:02:24.965876204+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: 'Complete Known Defects v2.1: TDG auto-fail + analyze defects CLI'
  github_issue: null
  item_type: task
  title: 'New task: Complete Known Defects v2.1: TDG auto-fail + analyze defects CLI'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T07:57:49.728723346+00:00
  updated: 2025-11-21T14:24:04.062035530+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: 'Fix rust-project-score defects: unwrap() elimination and tooling compliance'
  github_issue: null
  item_type: task
  title: 'New task: Fix rust-project-score defects: unwrap() elimination and tooling compliance'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T12:16:58.839751300+00:00
  updated: 2025-11-21T13:29:14.376866345+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: Implement comprehensive test exclusion for defect detection
  github_issue: null
  item_type: task
  title: 'New task: Implement comprehensive test exclusion for defect detection'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T12:35:11.477596058+00:00
  updated: 2025-11-21T12:53:32.963867227+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: GH-84
  github_issue: 84
  item_type: task
  title: 'Issue #84'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T18:37:55.293231075+00:00
  updated: 2025-11-22T09:06:36.558847171+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: 'Phase 1: Update dependencies (aprender v0.4.1 + trueno-db v0.2.0)'
  github_issue: null
  item_type: task
  title: 'New task: Phase 1: Update dependencies (aprender v0.4.1 + trueno-db v0.2.0)'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T19:26:18.513154754+00:00
  updated: 2025-11-21T19:32:40.879382381+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: 'Phase 2: ML migration - Replace custom ML with aprender (RandomForest, KMeans, DBSCAN)'
  github_issue: null
  item_type: task
  title: 'New task: Phase 2: ML migration - Replace custom ML with aprender (RandomForest, KMeans, DBSCAN)'
  status: completed
  priority: medium
  assigned_to: null
  created: 2025-11-21T21:45:30.594578470+00:00
  updated: 2025-11-22T08:58:46.307264515+00:00
  spec: null
  acceptance_criteria: []
  phases: []
  subtasks: []
  estimated_effort: null
  labels: []
- id: ML-PHASE-4-GRAPH
  github_issue: null
  item_type: task
  title: 'Phase 4: Graph Migration - Implement aprender graph algorithms'
  status: completed
  priority: high
  assigned_to: null
  created: 2025-11-22T11:10:00.000000000+00:00
  updated: 2025-11-22T11:32:00.000000000+00:00
  spec: docs/specifications/integrate-ml-trueno-latest-spec.md
  acceptance_criteria:
  - Create PMAT → aprender graph adapter (convert DependencyGraph to aprender::graph::Graph)
  - Replace src/graph/centrality.rs placeholders with aprender calls
  - Replace src/graph/structure.rs placeholders with aprender calls
  - Implement PageRank using aprender::graph::pagerank()
  - Implement Betweenness Centrality using aprender::graph::betweenness_centrality()
  - Implement Louvain community detection using aprender::graph::louvain()
  - Add comprehensive integration tests (≥80% coverage)
  - Benchmark performance vs previous placeholder implementations
  phases: []
  subtasks:
  estimated_effort: 1 week
  labels:
  - ml-integration
  - graph-algorithms
  - aprender
- id: ML-PHASE-3-STATS
  github_issue: null
  item_type: task
  title: 'Phase 3: Statistics Migration - Replace custom stats with aprender'
  status: completed
  priority: high
  assigned_to: null
  created: 2025-11-22T11:35:00.000000000+00:00
  updated: 2025-11-22T12:05:00.000000000+00:00
  spec: docs/specifications/integrate-ml-trueno-latest-spec.md
  acceptance_criteria:
  - Add Gini coefficient to aprender stats module
  - Replace variance_scalar/variance_simd with aprender
  - Replace gini_scalar/gini_simd with aprender
  - Replace mean_and_std in analytics_backend
  - Add property-based tests for statistical equivalence
  - Remove ~200 LOC of custom stats code
  phases: []
  subtasks:
  estimated_effort: 3 days
  labels:
  - ml-integration
  - statistics
  - aprender
- id: ML-PHASE-5-OLAP
  github_issue: null
  item_type: task
  title: 'Phase 5: OLAP Analytics - Integrate trueno-db for Top-K and Aggregations'
  status: blocked
  priority: high
  assigned_to: null
  created: 2025-11-22T12:20:00.000000000+00:00
  updated: 2025-11-22T14:00:00.000000000+00:00
  spec: docs/specifications/integrate-ml-trueno-latest-spec.md
  acceptance_criteria:
  - Implement trueno-db Top-K query acceleration (5-28x faster)
  - Implement OLAP-only storage backend for analytics
  - Add hybrid SQLite + Trueno storage strategy
  - Benchmark Top-K: 1M rows with SIMD/GPU backends
  - Add aggregation acceleration (SUM, AVG, MIN, MAX)
  - Performance target: SIMD 2.78x, GPU 33.3x faster
  phases: []
  subtasks:
  estimated_effort: 7 days
  labels:
  - ml-integration
  - olap
  - trueno-db
  - performance-issue
  notes: |
    **Progress (2025-11-22)**:
    - ✅ Task 5.1: Arrow adapter for Top-K (33 LOC thin adapter, 2/2 tests passing)
    - ✅ Task 5.4: Criterion benchmarks COMPLETE - CRITICAL FINDING
    - 🚫 Tasks 5.2/5.3: BLOCKED on trueno-db SQL support (https://github.com/paiml/trueno-db/issues/3)

    **⚠️ CRITICAL PERFORMANCE ISSUE (Task 5.4)**:
    Arrow backend is 2.5-4.2x SLOWER than heap baseline (opposite of 5-28x speedup target):
    - 1K rows: Heap 938ns vs Arrow 2.4µs → 2.5x slower
    - 10K rows: Heap 3.7µs vs Arrow 12.6µs → 3.4x slower
    - 100K rows: Heap 32µs vs Arrow 118µs → 3.7x slower
    - 1M rows: Heap 304µs vs Arrow 1.3ms → 4.2x slower

    **Root Cause**: Conversion overhead (Vec → RecordBatch → TopKSelection → RecordBatch → Vec)
    dominates any SIMD benefits. trueno-db TopKSelection doesn't provide expected acceleration.

    **Impact**: Current Arrow integration does NOT meet performance requirements.
    Tasks 5.2/5.3 implementation strategy needs revision. Need Bitonic Top-K in trueno-db.

    **Commits**:
    - 6b1683ef: feat(olap): Add trueno-db Arrow backend for Top-K selection
    - 6a2d3d6b: feat(bench): Add Top-K benchmarks for heap vs Arrow backends

    **Dependencies**:
    - trueno-db v0.2.1 (QueryBuilder API needed for Tasks 5.2/5.3)
    - Issue: https://github.com/paiml/trueno-db/issues/3
    - Need: Bitonic Top-K implementation in trueno-db for performance target
