Repository navigation
fix(app): keep cell chat identities separate - #1965
Closed
santoshkumarradha wants to merge 2 commits into
Closed
santoshkumarradha wants to merge 2 commits into
santoshkumarradha wants to merge 2 commits into
Conversation
Cell transcripts live at <id>/.cell/transcript.jsonl. appAgentID used the immediate parent, so every cell was .cell and later creates overwrote the held record. Use the existing layout-aware FolderOf and Place.ID. Legacy and flat fallback behavior stay intact. Laziness Protocol keeps the fix in the existing helper. Test Behavior Not Implementation covers real mint/open/send, independent transcripts, close/reopen and separate follow-ups with legacy and cell layouts. Prove It Works: the cell test failed with duplicate .cell before the fix; four focused backend tests now pass. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014ybUTo9ro1p9yNGyPHawz7
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014ybUTo9ro1p9yNGyPHawz7
Collaborator
|
Thanks for isolating the cell chat identity collision and writing up the two-chat reproduction. The identity fix shipped in #1973 and is on current app/v3, with permanent cell and legacy identity coverage. Your original independent-chat test also passes unchanged against today's desktop engine in both layouts, including close/reopen and separate follow-ups. Closing this as shipped; the existing-tab migration limitation is still as described here. |
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
Desktop chats using cell storage all received the ID
.cell. Opening another chat overwrote the first chat's backend record and mixed transcript and ownership state.The fix reuses the existing layout API and preserves legacy identities.
Evidence
TestAppIndependentChatsKeepTheirOwnTranscriptsfailed withtwo new chats share identity ".cell"using the real in-process engine and cell minting.go test ./cmd/codeaf -run '^(TestAppIndependentChatsKeepTheirOwnTranscripts|TestAppHoldsARealConversationInProcess|TestAppLetsAnIdleConversationGoAndTheNextSendReopensIt|TestAppCreateWithTextStartsTheTurnAndNamesTheAgent)$' -count=1 -timeout=90smake buildat exact baseline1aa12a7ffreproduced two.cellIDs and the exact reported ownership conflict.make buildat patched87535613dpassed two separate chats, billing close/reopen, four successful OpenRouter turns, and exactly each chat's own two messages. Fresh homes selecteddeepseek/deepseek-v4.1-flashfor every role and tier. Both temporary worktrees were removed afterward.Merge Danger
Door: two-way
Blast Radius: desktop identity
No migration or deletion. Existing desktop tabs saved as
.cellare not repaired. Patched macOS binary acceptance has not run. Vague and overlong title behavior is outside this fix.