command-undo-engineering-triad

Status: IN

Command's undo mechanism requires engineering discipline along three independent concerns: hysteresis prevention (using Memento to avoid state drift from repeated undo/redo cycles), meaningless-undo filtering (Reversible() method to skip trivial operations like font-color changes to current color), and state-varying copy management (copying commands before history insertion when state differs across invocations).

Justifications

Three independent engineering concerns form a complete undo discipline

Depends on (SL): command-hysteresis-use-memento, command-reversible-prevents-meaningless-undo, command-undo-requires-copy-if-state-varies

Depended on by

JSON