c569ece7

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Grandfather flag skips per-change round-trip too, not just idempotence

The grandfather flag previously only skipped the per-change idempotence
check. But the round-trip check is just as much an end-state invariant
that legacy scripts aren't expected to satisfy in isolation — e.g.
revert scripts that recreate a table via a "_new" swap leave the
primary-key index with a different name than the original deploy, so
revert+redeploy lands at a structurally different schema even though
the columns match.

Now stepIsGrandfathered skips both checks. The whole-plan cycle and
schema-equality checks still apply to grandfathered steps end-to-end,
so the end-state invariants are not lost.

Fixture: toy-sqitch-grandfathered gains an add-shape change whose
revert uses the swap-via-_new pattern, making round-trip catch the
index-name asymmetry. The "with grandfather tag" test confirms it's
skipped; the "without grandfather tag" test confirms it would fire.

Module and field docs updated.

Suite timing

Time to Start Worker time Duration Time to finish
Config 0s 2s 2s 2s
Eval 2s 43s 43s 45s
Build 10s 5m50s 2m16s 2m26s
Test - - - -
Deploy - - - -
Suite 0s 6m35s 2m26s 2m26s

Timeline

0s0s10s20s30s40s50s1m1m10s1m20s1m30s1m40s1m50s2m2m10s2m20s