Skip to content

fix(chat): hybrid dedupe for optimistic rows with plugin-prefixed text#15

Open
grapeot wants to merge 2 commits intomasterfrom
feature/fix-ghost-row-prefix-dedupe
Open

fix(chat): hybrid dedupe for optimistic rows with plugin-prefixed text#15
grapeot wants to merge 2 commits intomasterfrom
feature/fix-ghost-row-prefix-dedupe

Conversation

@grapeot
Copy link
Copy Markdown
Owner

@grapeot grapeot commented Mar 13, 2026

Summary

  • Root-caused the persistent ghost-row duplicate to oh-my-opencode prepending [analyze-mode] system prompt to user message text server-side, making the optimistic row's original text never match the persisted version
  • Replaced exact text comparison with a hybrid strategy: drop the optimistic row when either (a) texts match exactly / server text ends with optimistic text (suffix containment), or (b) timestamps are within 60 s
  • Added two new regression tests: plugin-prefix scenario and timestamp-only dedupe
  • Updated working.md with diagnosis and fix

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant