Skip to content

Session hydration

Opening an existing session should be progressive. The user should see a stable shell and useful recent content before expensive process history, artifacts, or evidence load.

text
select session
  -> activate tab shell
  -> apply cached snapshot or skeleton
  -> request window detail with bounded history
  -> hydrate recent messages
  -> paint stable conversation
  -> hydrate queue/action/artifact summaries
  -> defer timeline and tool detail
  -> load older history only on request

Hydration priorities

PriorityLoadReason
P0shell, title, composer availabilityUser needs orientation and control.
P0recent messages or skeletonAvoid blank workspace.
P0active task and pending action summaryAttention states must be visible.
P1artifact summaryDeliverables should be reachable.
P1compact process summaryShow what happened without heavy timeline.
P2detailed timeline pagesUser expands process details.
P2full tool outputUser opens tool detail.
P2evidence export or replayUser requests audit or review.

Stale response protection

Hydration responses can arrive out of order. Clients SHOULD tag each request with an activation token or version and ignore results that do not match the active session.

Rules:

  • A background response for session A must not overwrite active session B.
  • A slower older request must not overwrite a newer snapshot.
  • Switching away should cancel or deprioritize heavy detail loading when possible.

Inactive sessions

Inactive sessions SHOULD downgrade to snapshot state:

  • title
  • last message preview
  • task capsules
  • queued and pending counts
  • artifact summary
  • unread or changed state

They SHOULD release heavy message windows, parsed Markdown, mounted timeline items, and full artifact previews unless pinned or explicitly kept warm.

Acceptance scenarios

  1. Opening an old session shows shell before detail completes.
  2. Recent messages render before full timeline detail.
  3. Switching A -> B -> A does not let B overwrite A or A overwrite B incorrectly.
  4. Inactive sessions keep task state but release heavy process renderers.
  5. Older history loads by explicit page or cursor action.

Draft runtime-first standard for agent interaction surfaces.