Skip to content

feat: add Honcho session-write dedup and metadata stripping - #9422

Draft
NewTurn2017 wants to merge 1 commit into
NousResearch:mainfrom
NewTurn2017:feat/honcho-dedup-metadata-9404
Draft

feat: add Honcho session-write dedup and metadata stripping#9422
NewTurn2017 wants to merge 1 commit into
NousResearch:mainfrom
NewTurn2017:feat/honcho-dedup-metadata-9404

Conversation

@NewTurn2017

Copy link
Copy Markdown

Summary

Planned implementation

  • add a persisted dedup cursor / equivalent write guard
  • prevent replayed or restored sessions from duplicating Honcho writes
  • strip platform-only metadata before Honcho storage
  • add restart/retry coverage tests

Status

  • Draft PR created to reserve branch/PR scope
  • Implementation commits will be added sequentially

Refs #9404

@teknium1

Copy link
Copy Markdown
Contributor

Thanks for reserving a focused scope. There is not yet an implementation to review: gh pr view 9422 reports zero changed files, and gh pr diff 9422 contains no patch.

Problems

  • Current main still writes each locally unsynced item using only peer.message(msg["content"]) before add_messages() (plugins/memory/honcho/session.py:436-448); no source-event identity or persisted watermark is present.
  • HonchoMemoryProvider.sync_turn() appends chunks from user/assistant content and flushes them (plugins/memory/honcho/__init__.py:1214-1239), so the proposed replay-safe behavior needs concrete wiring and coverage.

Suggested changes

  • Add source-event idempotence rather than content-hash deduplication, so identical text in separate turns remains valid evidence.
  • Include restart/retry/backfill tests once the implementation is added.

Automated hermes-sweeper review.

@teknium1 teknium1 added sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users area/sessions Session lifecycle, resume, persistence, history area/memory Memory subsystem: store, providers, sync, background reviews labels Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/memory Memory subsystem: store, providers, sync, background reviews area/sessions Session lifecycle, resume, persistence, history comp/plugins Plugin system and bundled plugins P3 Low — cosmetic, nice to have sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants