Skip to content

feat(web): align session action menus#1061

Merged
tiann merged 1 commit into
tiann:mainfrom
techotaku39:feat/web-session-menu-parity
Jul 18, 2026
Merged

feat(web): align session action menus#1061
tiann merged 1 commit into
tiann:mainfrom
techotaku39:feat/web-session-menu-parity

Conversation

@techotaku39

Copy link
Copy Markdown
Contributor

Summary

Align the session-list context menu with the active session header by making Export conversation available from both entry points.

The lifecycle-specific actions remain intentionally different:

Session state Available actions after #1060
Running Rename, Export conversation, Copy resume command, Archive
Closed Rename, Export conversation, Copy resume command, Reopen, Delete

Motivation

The session header already allows exporting both running and closed conversations, while the session-list context menu omits the export action. Users therefore have to open a conversation before they can export it, and the two menus expose different actions for the same session state.

Changes

  • Add Export conversation to the session-list context menu for both running and closed sessions.
  • Open the existing export format dialog directly from a session row.
  • Change SessionExportDialog to accept a sessionId instead of a full Session object.
    • The export flow only needs the ID.
    • Session-list summaries can use the dialog without fetching the full session first.
  • Keep lifecycle actions state-specific:
    • running sessions retain Archive
    • closed sessions retain Reopen and Delete
  • Add coverage for opening the export dialog from both running and closed session rows.

This PR is intentionally separate from #1060. It only closes the pre-existing export-action gap between the two menus; #1060 adds Copy resume command to both surfaces independently.

Testing

  • bun typecheck
  • bun run typecheck:web
  • bun run test:web
  • bun run --cwd web test src/components/SessionList.directory-action.test.tsx src/components/SessionActionMenu.test.tsx
  • git diff --check

bun run test was also attempted on Windows. The CLI suite exhausted the Bun process heap in codexRemoteLauncher.test.ts while the runner integration suite was still executing; the web suite and all checks relevant to this web-only change pass.

AI disclosure

Implementation and tests were produced with OpenAI Codex (GPT-5.6).

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Findings
None.

Summary
Review mode: initial
No issues found in the added/modified lines. Residual risk: static review only because local automation could not start in this runner.

Testing
Not run (automation: bun not found when attempting bun run --cwd web test src/components/SessionList.directory-action.test.tsx src/components/SessionActionMenu.test.tsx and bun run typecheck:web).

HAPI Bot

@tiann
tiann merged commit f2e3149 into tiann:main Jul 18, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants