Rationale: Bag is a fundamental data type, not a utility
Changes:
- Moved utils/bag/ → types/bag/
- Updated imports in error_propagation_test.go
- Updated imports in network_test.go
- Updated package documentation
Why types/ over utils/:
- Bag is a multiset data structure (fundamental type)
- SetThreshold/Threshold methods are type-level features
- More semantic: types contain data structures, utils contain helpers
Canonical import: github.com/luxfi/consensus/types/bag
All tests passing:
- ✅ Chain engine: 28 tests (0.438s)
- ✅ Integration: all tests (59s)
Next: Node should kill utils/bag and import consensus/types/bag