mirror of
https://github.com/storytold/gridcraft.git
synced 2026-10-30 21:56:53 -06:00
- `ok` in `macro.check` meant only that the dry run hit no error. It now says whether `macro.run` with the same parameters would go ahead without a question, and `errors` says why not: a failing step, a Stop step that rolls back, data written over under `ask` or `fail`, a shift that can't make room (the refusals `make_room` makes, now in `shift_refusal`), or a run past the step or parameter limit once the dry runs before it count. `macro.check` takes `onConflict` and `overwrite` as `macro.run` does, reports the rule it used, and refuses the parameters `macro.run` refuses. - After a partial footprint, the question under `ask` says where the check stopped and that overwriting also lets the later steps write over data unchecked. - The dry runs and the run share the parameter budget as they share the step budget. - A dry run puts back the Go To list (`edit.goTo` with `record: true`). - The footprint groups the touch log by sheet once, instead of filtering a million entries once per sheet. - Docs: what `ok` means; RAND's sequence moves on after a check, as after any recalculation. - Tests: `the_check_says_whether_the_run_would_go_ahead`, `the_question_after_a_partial_footprint_says_what_the_answer_covers`, `a_dry_run_puts_back_the_go_to_list`, the shared parameter budget, and `ok` under `ask` in `conflicts_ask_fail_or_overwrite`.