Files
2026-05-27 23:29:53 +01:00

813 B

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<T> with memory limits, transactions, EventBus
  • BranchingHistory<T> with fork-on-diverge
  • AsyncUndoStack<T> for async commands
  • HistoryCompressor<T> / compressHistory for memory management
  • SelectiveUndoStack<T> for non-linear undo by command ID
  • CommandMerger<T> 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