mirror of
https://github.com/garrytan/gbrain.git
synced 2026-07-31 04:07:52 +00:00
`detail` is result-affecting by design — it gates dedup, chunk-source filtering, and the compiled_truth boost — but was absent from knobsHash, the only thing that varies the query-cache key. A `--detail low` write (compiled-truth-only result set) was served to a default `medium` lookup for the whole TTL (3600s), silently, looking like a relevance problem. Same contamination class as [CDX-4], the v=2→3 floor_ratio/col/prov additions, and the v=9→10 relationalRetrieval fold. Fix: append `det=` to the knobsHash parts list (append-only, per the list's own convention) and bump KNOBS_HASH_VERSION 13→15. detail is a per-call SearchOpts value, not a mode knob, so it threads through KnobsHashContext the way col=/prov= do; hybridSearchCached passes the EFFECTIVE level (opts.detail ?? autoDetectDetail(query)) so an auto-detected `high` query keys like an explicit `high` one. Undefined falls back to 'medium' (the documented default). v=14 is claimed by in-flight PR #3514 (#3430); this lands as v=15 per the established D8 sequencing convention. All five KNOBS_HASH_VERSION pin sites updated. One-time cache cold-miss on upgrade, refills within cache.ttl_seconds — same as every prior bump. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>