OpenHands / OpenHands/software-agent-sdk
[Bug]: restarting agent-server quickly loses all historical conversations
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 539
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 137
Description
Is there an existing issue for the same bug?
- I have searched existing issues and this is not a duplicate.
Bug Description
IIRC there is a "lock" that looks to see if conversations were owned by an agent-server in the last ~60s, and doesn't load the conversation into history if so
I don't quite understand why we have this--I think it's to prevent different agent-servers from claiming the same conversation?
Anyways this constantly screws me up--if I restart the server, when it starts back up all my convo history is gone
If we need this under some weird circumstance, maybe we hide the behavior behind an env var, default off?
Expected Behavior
Restarting just rehydrates all conversations
Actual Behavior
Conversations disappear
Steps to Reproduce
- start an agent-canvas
- create a convo
- stop and quickly restart the agent-canvas server
- your convo is gone
Installation Method
agent-canvas via npm
If you selected "Other", please specify
No response
SDK Version
No response
Version Confirmation
- I have confirmed this bug exists on the LATEST version of OpenHands SDK
Python Version
No response
Model Name (if applicable)
No response
Operating System
None
Logs and Error Messages
No response
Minimal Code Sample
No response
Screenshots and Additional Context
No response
Contributor 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.
Research direction
Start at the agent-server conversation-history rehydration path and locate the roughly 60-second ownership lock described in the issue. Reproduce by creating a conversation, stopping the agent-canvas server, and restarting it quickly. Done means a quick restart rehydrates the existing conversation history without regressing the behavior the lock is intended to protect.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 50/100