Uh oh!
There was an error while loading. Please reload this page.
feat(app): unarchive sessions - #16001
Conversation
The following comment was made by an LLM, it may be inaccurate: Potential Duplicate PRs Found
Most likely duplicate: PR #15250 should be checked first, as it has the exact same feature set as the current PR #16001. |
neriousy
commented
Mar 4, 2026
Seems like the |
There was a problem hiding this comment.
Pull request overview
Adds end-to-end support for viewing archived sessions and unarchiving them, spanning the server update endpoint, SDK typing, app command palette entry, and UI affordances.
Changes:
- Allow
time.archivedto be set tonullviasession.updateto unarchive a session (server + SDK typing). - Add UI actions/labels for archived state + “Unarchive” in the session timeline dropdown.
- Add a command palette entry and dialog mode to browse archived sessions, plus i18n strings.
Reviewed changes
Copilot reviewed 25 out of 25 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| packages/sdk/js/src/v2/gen/types.gen.ts | Update SDK request typing to allow archived: null. |
| packages/sdk/js/src/v2/gen/sdk.gen.ts | Update SDK client method typing to allow archived: null. |
| packages/opencode/test/server/session-update.test.ts | Add server test covering unarchive via archived: null. |
| packages/opencode/src/session/index.ts | Allow null archived time and persist it to DB. |
| packages/opencode/src/server/routes/session.ts | Accept time.archived: null on PATCH /session/:sessionID. |
| packages/app/src/pages/session/message-timeline.tsx | Add “Archived” badge and unarchive action in session dropdown. |
| packages/app/src/pages/layout.tsx | Add command palette entry to browse archived sessions. |
| packages/app/src/components/dialog-select-file.tsx | Add archived-browsing mode and list archived sessions in the dialog. |
| packages/app/src/i18n/en.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/de.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/es.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/fr.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/ja.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/ko.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/no.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/pl.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/ru.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/th.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/tr.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/zh.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/zht.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/da.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/bs.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/br.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
| packages/app/src/i18n/ar.ts | Add strings for browsing archived sessions + archived/unarchive labels. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Issue for this PR
Closes#16000
Type of change
What does this PR do?
If you paste a large clearly AI generated description here your PR may be IGNORED or CLOSED!
How did you verify your code works?
Browse archived sessionsScreenshots / recordings
2026-03-04.14-16-51.mp4
Checklist
If you do not follow this template your PR will be automatically rejected.