Conversation
…a real conclusion id honcho_conclude's delete action was unreachable in practice: no tool ever surfaced a real conclusion id for the model to pass as delete_id. honcho_search only searches the separate Message resource space, and the SDK's ConclusionScope.list()/.query() (which do return real Conclusion.id values) were never wired into any tool. Adds an optional list mode to honcho_conclude (query to search, omit to browse recent conclusions), backed by a new HonchoSessionManager.list_conclusions(). No new tool, no changes to the create/delete signatures or their conclusions_of() routing.
This was referenced Jul 10, 2026
Collaborator
|
Thanks for tracing the inaccessible deletion-ID path. The current-main premise is confirmed: Problems
Suggested changes
Automated hermes-sweeper review. |
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.
What does this PR do?
Adds a
listmode to thehoncho_concludetool so the model can retrieve a real conclusionidbefore deleting one. Previously
honcho_conclude's delete action was unreachable in practice: themodel had no tool that ever surfaced a conclusion's server-generated
id—honcho_searchonlysearches the separate Message resource space, and Honcho's own conclusion-list/search endpoints
(
ConclusionScope.list()/.query()in the SDK) were never wired into any tool.This lands as a bug fix (top contribution priority per CONTRIBUTING.md) and adds no new tool — it
extends the existing
honcho_concludetool with a third mode, alongside create and delete.Related Issue
Fixes #59794
Type of Change
Changes Made
plugins/memory/honcho/session.py:create_conclusionanddelete_conclusion) into a shared_conclusions_scope()helper.list_conclusions(session_key, query=None, peer="user", limit=20), which calls theSDK's
ConclusionScope.query()(semantic search) whenqueryis given, or.list()(recentconclusions) otherwise, and maps results to
{"id": ..., "content": ...}.plugins/memory/honcho/__init__.py:CONCLUDE_SCHEMA: added optionallist(boolean) andquery(string) parameters; updatedthe tool description to document the intended list → copy id → delete flow and to clarify
that conclusion ids are opaque, server-generated strings no other tool can surface.
(conclusion / delete_id / list), and added dispatch to
list_conclusions().tests/honcho_plugin/test_session.py: added manager-level tests forlist_conclusions(query path, list path, exception handling, no-cached-session), provider-level tests for the
new
listdispatch path, a rejection test forlistcombined withconclusion, and extendedthe schema smoke test to cover the new params. Updated the existing exactly-one-of error-message
assertions to match the new three-way wording.
How to Test
uv run --extra dev --extra messaging python -m pytest tests/honcho_plugin/test_session.py -q— all tests pass (125 total, including the new ones).
python scripts/check-windows-footguns.py plugins/memory/honcho/__init__.py plugins/memory/honcho/session.py tests/honcho_plugin/test_session.py— clean.
honcho_conclude(conclusion="...")tocreate →
honcho_conclude(list=true)to confirm a realidcomes back →honcho_conclude(delete_id=<id>)to confirm deletion succeeds →
honcho_conclude(list=true)again to confirm it's gone.Checklist
Code
pytest tests/ -q(via the isolateduv runvenv;scripts/run_tests.shcurrently can't locate a venv on this Windows/Git-Bash checkout — pre-existing,
unrelated
bin/activatevs.Scripts/path assumption, not touched by this PR) andall tests pass
Documentation & Housekeeping
cli-config.yaml.examplechangesCONCLUDE_SCHEMAupdated for the newlist/queryparams
Screenshots / Logs
N/A (memory-tool backend change, no UI surface).