Skip to content

[agent] Add Session rename, metadata, and delete flows #6

Description

@sam2tom

Context

The TypeScript client already implements updateSession metadata and deleteSession, but the UI can only create, select, recover, and run Sessions. Users need bounded organization and cleanup without introducing product organizations or claiming physical data erasure.

Observable outcome: users can rename/update metadata and request deletion with deterministic behavior for current, inactive, missing, and active Sessions.

Acceptance criteria

  • Add an accessible Session details/action surface that supports title and string metadata editing.
  • Retrieve or reconcile the latest Session before submitting an update.
  • Preserve form input and current durable data when update fails.
  • Require explicit confirmation before delete and remove the Session from UI only after Core success.
  • On successful deletion of the selected Session, close/abort its SSE and pending reads, clear its Items/Turns/actions, and select the next deterministic Session or empty state.
  • Deleting a non-selected Session must not disturb the active stream.
  • Surface Core behavior accurately for active Session conflicts, missing Sessions, network errors, and repeated deletion.
  • Explain that Parsar deletion follows server lifecycle semantics and is not a promise of physical history erasure.
  • Never place credentials or secrets in Session metadata.
  • Add update/delete request, stale response, active stream, 404/409/503/network failure, confirmation, focus, and narrow-layout tests.
  • Keep feature code local and minimize App.tsx/style.css changes.

Validation

  • Run focused metadata and delete tests, including deleting selected/non-selected Sessions while SSE is connecting or active.
  • Verify existing create, select, send, cancel, function-result, and recovery flows remain intact.
  • Run pnpm check and git diff --check.
  • Run the repository .agents ignore check.

Non-goals

  • Do not implement bulk delete, export, migration, organization folders, roles, or billing.
  • Do not automatically cancel an active Turn unless the Core contract explicitly requires it.
  • Do not delete executor Workspace files or claim physical erasure.
  • Do not modify Parsar Core or commit .agents content.

Dependencies

Start from current main after #3 is merged because both tasks touch stream/read cleanup in App.tsx.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions