Skip to content

Dashboard: workspace time-travel — history scrub, version diff, and widget→logbook blame #101822

Description

@100yenadmin

Scrub your dashboard through time, diff any two versions, and click a widget to see the agent session that created it.

Part of the Modular Dashboard roadmap — see the tracker #101136 (Flagship section). Builds on Wave 1 (#101093; PRs #101094 / #101097 / #101098).

Problem

When agents co-edit your operating surface, "what changed, who changed it, and why" becomes a real question. The substrate already records everything needed to answer it — a monotonic workspaceVersion, a 20-entry undo ring of full snapshots, and createdBy provenance on every tab/widget — but none of it is visible.

What this adds

  • History scrub: browse recent workspace versions (read-only render of each snapshot) and restore one (the existing undo path, generalized).
  • Version diff: what appeared/moved/vanished between two versions, grouped by actor.
  • Blame → logbook deep links: click a widget → "created by agent:main, version 41" → jump to the logbook (feat(logbook): automatic work journal plugin with Control UI timeline tab #99930) entry for the session that made the change. The dashboard becomes auditable, and the logbook gets a spatial index.

How it'd be built

Read-only surface over existing state: a dashboard.workspace.history.list/get gateway pair reading the undo ring (extensions/dashboard/src/store.ts, <stateDir>/dashboard/undo/), a scrubber/diff view in the Workspaces UI, and provenance links that resolve createdBy + timestamps against logbook entries. Optionally deepen the ring (configurable length) since snapshots are already size-capped. No new write paths beyond the existing undo/restore.

References

Flagship — auditability. Low risk (read-only), high trust payoff for multi-agent workspaces.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Normal backlog priority with limited blast radius.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.impact:ux-frictionUser-facing flow adds avoidable confusion or support burden without fully blocking progress.issue-rating: 🌊 off-meta tidepoolIssue quality rating does not apply to this item.maturity:stableIssue affects a taxonomy feature currently scored M4/M5.staleMarked as stale due to inactivity

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions