docs: retrieval-quality documentation sweep + live footer wrong-tool fix#86
Merged
Conversation
…nking, evidence receipts Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The SessionStart bootstrap footer (services/session_bootstrap.py _FOOTER, rendered into both the legacy and deferred render paths) told Claude to call memory_record_use on injected memories -- but bootstrap only ever injects reflections/semantic memories, and record_use only writes to the observations table, so the instruction silently no-op'd every session. Same wrong-tool class as the docs sweep in the prior commit, except this one is live prompt text, not documentation. Replaced with the credit form (memory_credit(kind, id, class, evidence)) and updated the one test that pinned the old footer substring. Also reworded the matching leftover row in memory-write.md that instructed record_use for a retrieved memory. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
🟢 Claude BugBot Analysis
This PR is almost entirely documentation/prose updates (README, website docs, skill markdown, hooks-setup docs) describing new ranking/injection/rating behavior; the only source change is a footer string constant in session_bootstrap.py, which matches the existing unprefixed 'memory_credit' naming convention already used elsewhere in the codebase (services/relevant.py), so no genuine logic errors, security issues, or defects were found in the added/modified lines.
No bugs were detected in this PR.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Brings all non-superpowers documentation in line with the shipped retrieval-quality stack (PRs #83/#84/#85), and fixes a live prompt-text bug the sweep surfaced.
BETTER_MEMORY_INJECT_MODE/CONTEXT_VEC_FLOOR(MIN_HITS marked deprecated); tool tables updated (retrieve(query, ...)Wilson-ranked with exploration slot,credit(..., evidence)required,apply_session_ratingsevidence contract, deferred bootstrap + drift sentinel); new "Retrieval-quality layer" architecture section.memory.record_use(id), which silently no-ops on reflection/semantic ids (correct tool:memory.credit);website/architecture.mdclaimed reflections carryreinforcement_score(they don't);docs/hooks-setup.md's example still showed the async Stop-hook registration that the decision doc documents as the 0%-rated bug; stale retrieve signature/defaults.aea6ddb): the SessionStart bootstrap_FOOTER— injected into every session's first-turn context in both modes — instructed the same silent-no-oprecord_usecall. Now credits viamemory_credit(kind, id, class, evidence). Pinning test updated.Validation
Reviewer verified every new claim against live code (retrieve schema/defaults, Wilson formula, evidence contract, sync Stop hook, sentinel, record_use no-op confirmed at services/observation.py); canary + bootstrap/hook tests green (125 passed).
🤖 Generated with Claude Code