A private chat rewrites stored memories: update_memory runs although the composer promises the chat 'won't be saved to m
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 62/100
Research direction
The reported suspect is src/gaia/agents/base/memory.py: remember() already checks mixin._incognito and refuses writes in a private chat, while update_memory() (and possibly forget) does not. Start by comparing those three functions and confirm which of them write to memory.db. Done when update_memory is refused in a private chat with the same kind of message as remember, forget is covered the same way, and a test shows that stored rows stay unchanged.
Written by the indexing model from the issue text.
Description
A private chat rewrites stored memories: update_memory runs although the composer promises the chat 'won't be saved to memory'.
Steps
- rc24 desktop app, cloud model, a few facts already in memory from normal chats (here: 'Project budget is 73,904 euros', 'Project codename is ...', 'Project launch date is ...').
- New chat, click the eye button 'Turn on private chat' (composer shows 'Private'; tooltip 'Turn off private chat. This chat won't be saved to memory.'; sessions.private=1).
- Send: 'Remember that my favourite tree code is GINKGO-4417.' -> correctly refused ('this chat is private, so memory writes are skipped'), nothing stored.
- Same chat: 'Correction: my project budget is now 81,000 euros. Update what you have stored about the budget.'
- Read memory.db knowledge / Memory page.
Expected: No memory write from a private chat (Settings > Memory: 'Private chats ... are never remembered'): update_memory refused like remember, or not offered.
Actual: The turn runs recall then update_memory(knowledge_id=04218b32..., content='Project budget is 81,000 euros') -> 'updated'; memory.db row now reads 81,000 euros and the answer says 'That one went through, unlike the tree code earlier.' Seen first in a private chat whose turn 1 stated three new project facts: the model called update_memory three times and overwrote the codename, launch date and budget rows with the private chat's values, unasked.
Build: v0.26.0-rc24 packaged Windows app (isolated profile, chat on a cloud model)
Found by: the v0.26.0-rc24 final release test, finding F68
🔍 Technical details
- Suspected area: src/gaia/agents/base/memory.py: remember() checks mixin._incognito, update_memory() (and likely forget) has no incognito guard
- Dominant language
- Python
- Stars
- 1.6k
- Forks
- 169
- Avg merge
- 12h 19m
- Merged PRs (30d)
- 777
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from amd/gaia
-
agent-ui bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
bug cli p2
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Maintainers usually reply within 1 day
-
agent-ui bug needs-human p3
Difficulty 1/5 Under an hour Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
bug cli needs-human p3
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
agent-ui bug p3
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day
Similar issues
-
area:core-platform effort:S priority:P3 risk:night-safe status:ready type:test
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
randomparity/kdive#3620 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
FinanceFlash/unvibecode#760 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
google-research/google-research#3470 ·
Maintainers usually reply within 21 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
mrvautin/ha-workouts#11 ·