v0.39.0 — decision-grounding
Topic-anchored decisions with read-time grounding, doc≠graph drift detection, a gated capture flow, and heal.
New
topicanchor on decisions + the query contract (current/history/rejected/collisions) — the join key for drift detection. Defaulted, so existing graphs need no migration.- Read-time grounding — the PreToolUse hook now surfaces a file's topic-anchored decisions with doc-precedence framing ("follow the graph, not a stale doc") + what they rejected.
- doc≠graph drift — a deterministic
anchor-stalecheck (a file orphaned to a superseded decision) inhunch drift(CI-gateable) anddoctor. - Capture —
hunch_capture_decision(grilling protocol + capture-session token) andhunch_current_decision. The existinghunch_record_decisionis now gated: a store-scoped uniqueness guard refuses a second live decision per topic (a cross-store supersede that can't close its target is refused, never silently leaving two live), with an optional capture token. hunch reconcile-topics— surfaces >1-live-per-topic collisions a git merge can introduce.hunch heal+/capture/healslash commands (scaffolded byhunch init).
Compatibility: fully additive and backward-compatible — topic defaults to null, no schema-version bump, existing decisions load unchanged.