Refactoring: Separate Learner API and types from Policy Box
- New: core/box/smallobject_learner_v7_box.h
- SmallLearnerStatsV7 type definition
- Learner recording API (record_refill, record_retire)
- Learner evaluation and stats snapshot
- Learner configuration constants
- Updated: core/box/smallobject_policy_v7_box.h
- Removed Learner API (moved to Learner Box)
- Removed SmallLearnerStatsV7 type (moved to Learner Box)
- Added include of smallobject_learner_v7_box.h
- Kept small_policy_v7_update_from_learner() (L3 integration)
- Updated: core/smallobject_policy_v7.c
- Added include of smallobject_learner_v7_box.h
Benefits:
- Clearer module boundaries (Policy vs Learner)
- Easier testing and debugging (stats isolation)
- Reduced coupling between components
Performance: No regression (v7+Learner: 41M ops/s on C5/C6)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>