A deleted session reappears from the saved session list at startup
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 70/100
Research direction
Start by reading RemoteSessionRepository.delete and SessionsViewModel, especially the local filtering for deletes and the ListCache flow used by cachedList(). Check how saved session lists are keyed per server and how SessionChanged refreshes them. Done means deleting a session removes it from every saved list for that server, so it does not reappear at startup offline.
Written by the indexing model from the issue text.
Description
What happened?
A deleted session comes back in the session list the next time the app starts. Deleting removes it from the list on screen and, since #55, from the in-memory seen cache, but the session list saved on disk (ListCache, shown at startup before the server answers) still contains it. Nothing reloads the list after a delete, because SessionsViewModel handles both its own delete and the session.deleted event by filtering locally.
On the next launch cachedList() shows the deleted session until list() returns and rewrites the cache; with no connection it stays, and opening it fails. cachedList() also puts it back into seen.
Renames are not affected: SessionChanged triggers a reload, which rewrites the saved list.
Expected: deleting a session also removes it from every saved list of that server, so it never shows up again.
Steps to reproduce
- Delete a session from the session list.
- Close the app (swipe it away) and turn off the connection, or stop the server.
- Open the app: the deleted session is in the list. With the connection on, it shows for a moment and then disappears.
App version
main @ 4adf274
OpenCode server version
Any, client-side behavior
Device and Android version
Any; found while reviewing #55 (RemoteSessionRepository.delete, SessionsViewModel)
- Dominant language
- Kotlin
- Stars
- 1
- Forks
- 0
- Avg merge
- 6h 11m
- Merged PRs (30d)
- 32
Getting set up
- 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 beppe2880/opencode-mobile
-
feature
Difficulty 3/5 1-2 days Newbie friendliness 65/100
beppe2880/opencode-mobile#78 ·
Maintainers usually reply within 1 day
-
Automatically show the keyboard when opening the terminalPossibly taken @Andrease11 claimed this today. Open
Difficulty 3/5 1-2 days Newbie friendliness 25/100
beppe2880/opencode-mobile#77 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
beppe2880/opencode-mobile#76 · 1 comment ·
Maintainers usually reply within 1 day
-
More chat options and a way to reset all settingsPossibly taken @beppe2880 claimed this 1 day ago. Openfeature
Difficulty 3/5 1-2 days Newbie friendliness 30/100
beppe2880/opencode-mobile#74 ·
Maintainers usually reply within 1 day
-
confirmed feature
Difficulty 4/5 3-5 days Newbie friendliness 55/100
beppe2880/opencode-mobile#68 ·
Maintainers usually reply within 1 day
All issues in beppe2880/opencode-mobile
Similar issues
-
[Request] 李跳跳Openrequest-adaption
Difficulty 2/5 Under an hour Newbie friendliness 78/100
BetterAndroid/android-notification-icon-project#799 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
ProdigyV21/ARVIO#832 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
SIGSEGV in symex on __builtin_constant_p of a void expressionPossibly taken A pull request linked to this issue is open or already merged. Openbug goto-symex
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day