WithUsageHook callback fires with model + prompt/completion tokens parsed from the response usage block. Keeps the copied stdlib-only llm package decoupled from metrics (ADR-004) — the caller wires it to internal/metrics. TDD covered. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>