1## Why23Tidewater needs one-step sandbars and driftwood to make movement itself a4resource. The current engine has rules, transforms, contacts, Undo, sharing,5and a compact solver, but no declarative way for a cell to leave a deliberate6leftover after a mover crosses it. Adding this as an ad hoc level feature would7make the visual result differ from the authoritative state and would lose the8mechanic during Undo, reset, shared play, or search.910## What Changes1112- Add the `FRAIL` property behavior for rule-driven objects and words.13- Interpret `DRIFT IS FRAIL` (and equivalent noun/property rules) at the14 settled end of a turn, after player/automata movement and transforms but15 before SINK, DEFEAT, and WIN contacts.16- Crumble a frail entity only when a distinct occupant that shared its cell17 at turn start has departed and no other occupant remains at the crumble18 checkpoint. A handover, where another mover enters the cell in that turn,19 keeps the frail entity in place. A distinct mover may itself be FRAIL.20- Count every mover, including pushed words and automata, while a moving FRAIL21 entity itself never causes its own cell to crumble.22- Preserve one level-scoped `leaves` map in the FRAIL mechanic declaration.23 On each crumble, look up the entity's current noun. A mapped result becomes24 that noun with the same stable entity ID; a noun with no mapping is removed.25 A leftover may itself be frail, allowing authored chains such as26 `SAND -> SHOAL -> WATER` without per-object metadata.27- Emit settled `crumbled: [{ id, from, to }]` records and include the resulting28 noun/removal in normal snapshots, history, sharing, replay, and solver keys.29- Add Tidewater proof fixtures and differential scenarios for step-off,30 handover, pushed words, automata, initial SINK contacts, chains, and Undo.3132This change depends on the lifecycle, snapshot, sharing, and codec boundaries33in `add-declarative-mechanic-state-contract` (`9e91d42`). It defines FRAIL34behavior only; gates, switches, plates, floor layers, and numeric durability35counters remain separate changes.3637## Impact3839The turn resolver, normalized level/mod metadata, event shape, snapshot and40restore paths, solver transition/key logic, and Tidewater fixtures change.41Existing levels without a `FRAIL` rule or a `frail` mechanic declaration retain42current behavior. Rendering consumes the settled event; it does not own43crumble state.