fix(memory): align Honcho routing and memory guidance#17186
Open
nepenth wants to merge 4 commits into
Open
Conversation
Ensure Honcho peer-card writes use the same observer/target path as reads so profile card updates land on the card that later lookups return. Increase built-in memory headroom and make overflow guidance route durable facts to the correct persistence layer instead of implying mental retention.
This was referenced May 6, 2026
This was referenced May 18, 2026
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
This PR fixes Honcho memory/profile routing and built-in memory guidance.
honcho_profile(peer="user", card=[...])updates the card thathoncho_profile(peer="user")returns.honcho_profilecard replacement semantics: passingcardoverwrites the whole peer card, so callers MUST include facts they want preserved.honcho_context.queryparameter for now because the handler did not implement query filtering; this avoids a misleading schema until filtering is added deliberately.memory.replace/memory.remove, skills, or canonical workspace artifacts instead of claiming to save exact state “mentally” or relying on semantic memory as the only canonical store.Tests
python -m pytest tests/honcho_plugin/test_session.py tests/tools/test_memory_tool.py tests/tools/test_memory_tool_import_fallback.py -q -o 'addopts='→ 162 passedhoncho_profilehandler empty-card overwrite behaviorhoncho_profileschema warning thatcardoverwrites the entire cardhoncho_contextschema no longer advertising an unimplemented query filtermemory.replace,memory.remove, skills, and canonical artifactsDEFAULT_CONFIG,MemoryStore, and the OpenClaw migration helperpython -m py_compile plugins/memory/honcho/__init__.py plugins/memory/honcho/session.py tools/memory_tool.py hermes_cli/config.py run_agent.py hermes_cli/tips.py optional-skills/migration/openclaw-migration/scripts/openclaw_to_hermes.pygit diff --checkSecurity / platform notes
honcho_context(query=...)filtering; the misleading schema field is removed instead. Query filtering can be a focused follow-up.Review feedback remediation (2026-04-30)
honcho_profile(peer="ai", card=[...])round-tripping through the same observer/target route used by reads.card=[]clearing peer cards instead of being treated as a read.honcho_contextno longer advertises the unimplementedqueryschema parameter.Relationship to context-safety work
Related but independent from the gateway context-safety PRs. This PR fixes Honcho memory/profile routing consistency so long-term context is read and written through the correct observer/target path.
Adjacent PRs: