Root Cause
brick_scores_from_profiler() in gguf.rs hardcodes all scoring fields:
actual_us = per_token_us (total_ns / profiler.total_tokens where total_tokens=952K brick elements, not ~3K decoded tokens)
budget_us = same as actual (self-referential)
score: 100, grade: "R" (not even a valid grade), gap_factor: 1.0
Impact
JSON output reports all bricks as perfect. LmHead shows 1.9µs instead of real 595µs.
Fix
- Use
stats.avg_us() for actual_us
- Derive
decoded_tokens from LmHead.count
- Compute real score/grade/gap via
compute_brick_score()
Refs GH-420 (parent)
Root Cause
brick_scores_from_profiler()ingguf.rshardcodes all scoring fields:actual_us=per_token_us(total_ns / profiler.total_tokens where total_tokens=952K brick elements, not ~3K decoded tokens)budget_us= same as actual (self-referential)score: 100,grade: "R"(not even a valid grade),gap_factor: 1.0Impact
JSON output reports all bricks as perfect. LmHead shows 1.9µs instead of real 595µs.
Fix
stats.avg_us()foractual_usdecoded_tokensfromLmHead.countcompute_brick_score()Refs GH-420 (parent)