mirror of
https://github.com/storytold/gridcraft.git
synced 2026-10-30 13:46:47 -06:00
A footprint is not proof of what the run will do. RAND gives the run other values than the dry run before it (the recalculation's random sequence goes on), and NOW moves on, so an If can take another branch in the run and write over data the dry run never reached; under `fail` the run went ahead and wrote over it. - Unless the rule is `overwrite`, every run checks each step as it goes, as a run after a partial footprint already did; a write the footprint didn't see stops the run, which asks under `ask` and fails otherwise, and rolls back. - Test: `a_run_that_takes_another_path_than_its_check_is_still_checked` (an If on `=RAND()` over 40 runs under `fail`; before, one of them wrote over B1).