Workspace has no undo history panel — user can press Cmd+Z to step back one entry at a time, no way to see the full history and pick a specific snapshot to revert to (Figma/Illustrator-style history panel) #255
Labels
No labels
blocked:commit-ready-failed
blocked:gate-fetch
blocked:gate-lint
blocked:gate-plan
blocked:gate-research
blocked:needs-attention
blocked:needs-decision
blocked:needs-human
blocked:no-changes
blocked:verify-failed
bug
deferred
feature-request
in-progress
needs-decompose
needs-triage
quickfix
security/medium
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/Kimi_Agent_Brother_10_Digitizing_App#255
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Finding
src/components/workspace/useWorkspace.ts:201definesMAX_HISTORY = 50. The history is tracked instate.history: HistoryState[](per the type definition). The user can step through with Cmd+Z and Cmd+Shift+Z, but there's no UI to see the history list or click on a specific entry.grep -n 'history.*panel\|HistoryList' src/components/workspace/returns 0.A user who:
Figma, Illustrator, Sketch all have a "History" panel that lists every action with timestamps. The user clicks an entry to revert to that state.
Where
src/components/workspace/useWorkspace.ts:201-214(MAX_HISTORY = 50)grep -n 'HistoryList' src/returns 0src/components/workspace/useWorkspace.ts(handleUndo / handleRedo)Suggested fix shape
Add a "History" panel toggle to the right side of the workspace's top bar:
The panel slides in from the right with a list of history entries:
describeSnapshot(entry)returns a human-readable summary:This requires the history to store not just snapshots but also an "action label" string. Add
action: stringto the HistoryState.jumpToHistoryEntry(i)setshistoryIndex = iand dispatches the new state.Severity
Low. The user can step through with Cmd+Z. Power users with many edits notice.
Discovered by
Gap analysis (2026-10-02) of workspace history affordances.
Related
Shipped in
c7e3c88(push06b0603→c7e3c88).Figma/Illustrator-style history panel landed:
HistoryStategained anaction: stringlabel so each snapshot carries a human-readable description ("Auto-digitize: 12,438 stitches", "Update image: rotation", "Delete selected", "Reorder objects", "Load design", …).HistoryPaneloverlay (right-side, fixed) lists every snapshot in reverse-chronological order, current entry highlighted, forward (redo) entries dimmed. Click an entry to jump to that snapshot.JUMP_TO_HISTORYreducer action restores state from a chosen index. Same deep-clone contract as UNDO/REDO.Historyicon button in the AppHeader (between Fit-to-view and Settings). Disabled until the stack has at least one entry.applyHistorySnapshotshared helper for UNDO/REDO/JUMP — fixes a latent inconsistency where UNDO at historyIndex===0 hadhistoryIndex: -1while still restoring history[0]. historyIndex now consistently points at the restored snapshot.Tests: 510/510 across 51 workspace test files. New HistoryPanel.test.tsx and issue-255-history.test.tsx. Existing issue-174.test.tsx updated for the new historyIndex invariant.