# Proposal: @suaveplan/undo **Change ID:** enterprise-undo **Date:** 2026-04-24 **Status:** Shipped ## Summary Implement the `@suaveplan/undo` package — a full enterprise-quality undo/redo engine for the genesis monorepo, replacing the old `enterprise-undo` reference implementation. ## What was built - Synchronous `UndoStack` with memory limits, transactions, EventBus - `BranchingHistory` with fork-on-diverge - `AsyncUndoStack` for async commands - `HistoryCompressor` / `compressHistory` for memory management - `SelectiveUndoStack` for non-linear undo by command ID - `CommandMerger` with time/count windows - Structured errors via `UNDO_CODES` (6 codes) - Zod schemas, OTel instrumentation, property-based tests (fast-check) - 100% istanbul coverage, all co-located `.md` docs