Tier: Fix first · Order: 5 of 35 · Effort: S · Impact: high
What
Dragging a slider, picking a color or typing a sentence becomes a single Undo step.
Why
Audit: no history.throttle/merge anywhere. A color drag is dozens of undo steps; the animation control creates 2, visibility 3. Makes Undo feel broken.
Today
actions.setProp everywhere via useNodeProp (shared.tsx:322-326).
Design notes
Route continuous inputs through Craft's actions.history.throttle(ms).setProp(); wrap multi-prop toggles in one merge.
**Tier:** Fix first · **Order:** 5 of 35 · **Effort:** S · **Impact:** high
## What
Dragging a slider, picking a color or typing a sentence becomes a single Undo step.
## Why
Audit: no history.throttle/merge anywhere. A color drag is dozens of undo steps; the animation control creates 2, visibility 3. Makes Undo feel broken.
## Today
actions.setProp everywhere via useNodeProp (shared.tsx:322-326).
## Design notes
Route continuous inputs through Craft's actions.history.throttle(ms).setProp(); wrap multi-prop toggles in one merge.
## Depends on
None
---
From the 2026-10-07 site-builder research (competitor review, user sentiment, code audit, Fable prioritization). Roadmap: https://claude.ai/artifact/QpQcSCk21z6SN7LPSm8tKE · id `undo-step-merging`
Shipped in WHP release 2026.10.3 (site-builder mainbdb4789, deployed fleet-wide 2026-10-07). Implemented, reviewed and verified as part of the editor-polish batch.
Shipped in WHP release **2026.10.3** (site-builder `main` bdb4789, deployed fleet-wide 2026-10-07). Implemented, reviewed and verified as part of the editor-polish batch.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Tier: Fix first · Order: 5 of 35 · Effort: S · Impact: high
What
Dragging a slider, picking a color or typing a sentence becomes a single Undo step.
Why
Audit: no history.throttle/merge anywhere. A color drag is dozens of undo steps; the animation control creates 2, visibility 3. Makes Undo feel broken.
Today
actions.setProp everywhere via useNodeProp (shared.tsx:322-326).
Design notes
Route continuous inputs through Craft's actions.history.throttle(ms).setProp(); wrap multi-prop toggles in one merge.
Depends on
None
From the 2026-10-07 site-builder research (competitor review, user sentiment, code audit, Fable prioritization). Roadmap: https://claude.ai/artifact/QpQcSCk21z6SN7LPSm8tKE · id
undo-step-mergingShipped in WHP release 2026.10.3 (site-builder
mainbdb4789, deployed fleet-wide 2026-10-07). Implemented, reviewed and verified as part of the editor-polish batch.