Emit core HNSW index properties in extract summary#1
Conversation
|
Addressed the review follow-ups in commit 5e1ff08:
Validation rerun:
|
|
Addressed the review follow-ups in commit 5e1ff08:
Validation rerun:
|
|
@claude review |
|
Claude finished @tazarov's task in 1m 55s —— View job Code Review
|
| Go field | Go type | Rust type | Match |
|---|---|---|---|
M |
uint64 |
u64 |
✓ |
EfConstruction |
uint64 |
u64 |
✓ |
CurElementCount |
uint64 |
u64 |
✓ |
MaxElements |
uint64 |
u64 |
✓ |
PersistedVersion |
int32 |
i32 |
✓ |
WordSizeBytes |
uint32 |
u32 |
✓ |
All JSON tag names match the Rust serde snake_case output. ✓
hnswtoolbox_test.go:
- Covers JSON deserialization roundtrip for all six new fields ✓
- Uses
t.Fatalffor every assertion — this stops at the first failure rather than reporting all mismatches. Usingt.Errorffor non-fatal assertions would give a fuller picture on failure, but this is a minor style point for a new-struct deserialization test.
Documentation (README.md)
- New
index_propertiesblock is added to both the "What It Extracts" summary (README.md:23-30) and the example Response JSON (README.md:114-123) ✓ - Field list matches the struct definition exactly ✓
Test Fixture Sanity (src/extractor.rs:941-1010)
The write_fixture_with_capacity function produces a 100-byte header (U64 word size), which is correctly detected as HeaderWordSize::U64 by PersistentHeader::from_bytes. The written values (m=4, ef_construction=100, word_size_bytes=8) are consistent with all test assertions. ✓

Summary
Validation