Claude
7b267fb632
test: check the wall key against the lattice edge
...
#258 lost two thickness records to a rounding tie: wallKey quantises the
midpoint with Math.round, and a wall of odd step length has its midpoint
exactly on the tie, where the exact node 83/240 and the stored 0.345833333
fall on opposite sides. The #254 invariants pass on that file — their edge
tolerance is 0.004 and the drift is 0.00417, so the check sits on its own
boundary.
checkWallKeys compares strings, and against endpoints snapped to the lattice:
keying from the raw endpoints flags the healthy state and passes the broken
one, which is what the first formulation in #258 got wrong. Measured on the
owner's before/after pair: 0 findings before, exactly the two artefact walls
after.
Two shipped fixtures write keys off the contract (#260 ); recorded as a number,
so the debt can neither grow nor be silently fixed.
Issue: #259
User-Visible: no
2026-08-23 13:50:37 +03:00
..
2026-08-23 03:47:19 +00:00
2026-08-12 19:18:54 +03:00
2026-08-20 19:32:16 +00:00
2026-08-04 14:13:38 +03:00
2026-08-23 00:34:55 +03:00
2026-08-22 13:45:26 +03:00
2026-08-23 00:34:55 +03:00
2026-08-19 11:55:43 +03:00
2026-08-09 21:51:33 +03:00
2026-08-06 16:48:45 +03:00
2026-08-16 21:53:41 +03:00
2026-08-08 21:33:09 +03:00
2026-08-22 15:32:55 +03:00
2026-08-07 13:02:46 +03:00
2026-08-20 11:00:22 +03:00
2026-08-20 11:00:22 +03:00
2026-08-20 14:56:21 +03:00
2026-08-23 08:08:17 +03:00
2026-08-19 22:37:25 +03:00
2026-08-23 08:08:17 +03:00
2026-08-16 22:35:54 +03:00
2026-08-20 18:48:01 +00:00
2026-08-23 00:19:54 +03:00
2026-08-20 01:38:01 +03:00
2026-08-11 19:15:21 +03:00
2026-08-05 11:41:00 +03:00
2026-08-19 23:33:44 +03:00
2026-08-11 02:49:42 +03:00
2026-08-10 00:24:42 +03:00
2026-08-23 08:06:22 +00:00
2026-08-11 22:12:08 +03:00
2026-08-22 13:45:26 +03:00
2026-08-19 02:12:37 +03:00
2026-08-13 00:14:51 +03:00
2026-08-23 08:06:22 +00:00
2026-08-20 01:38:01 +03:00
2026-08-23 01:59:26 +03:00
2026-08-14 00:43:13 +03:00
2026-08-14 00:43:13 +03:00
2026-08-22 13:45:26 +03:00
2026-08-13 15:28:19 +03:00
2026-08-11 22:12:08 +03:00
2026-08-17 16:45:41 +03:00
2026-08-17 16:45:41 +03:00
2026-08-18 21:31:04 +03:00
2026-08-12 12:43:27 +03:00
2026-08-23 13:50:37 +03:00
2026-08-22 11:24:37 +03:00
2026-08-18 21:31:04 +03:00
2026-08-22 13:45:26 +03:00
2026-08-19 18:04:11 +03:00
2026-08-22 12:25:05 +03:00
2026-08-19 15:43:23 +03:00
2026-08-23 01:59:26 +03:00
2026-08-23 01:59:26 +03:00
2026-08-20 01:38:01 +03:00
2026-08-19 15:43:23 +03:00
2026-08-10 18:01:16 +03:00
2026-08-10 14:32:20 +03:00
2026-08-10 18:01:16 +03:00
2026-08-22 14:47:38 +03:00
2026-08-22 16:29:33 +03:00
2026-08-23 08:06:22 +00:00
2026-08-22 10:56:22 +03:00
2026-08-20 08:42:34 +03:00
2026-08-20 23:42:29 +03:00
2026-08-18 20:33:44 +03:00
2026-08-10 18:01:16 +03:00
2026-08-19 02:12:37 +03:00
2026-08-23 10:15:45 +03:00
2026-08-01 18:58:23 +03:00
2026-08-22 10:56:22 +03:00
2026-08-22 15:32:55 +03:00
2026-08-11 02:49:42 +03:00
2026-08-23 09:49:22 +03:00
2026-08-22 18:32:52 +03:00
2026-08-22 19:12:27 +03:00
2026-08-23 00:35:48 +03:00
2026-08-19 17:44:48 +00:00
2026-08-17 16:45:41 +03:00
2026-08-19 02:49:39 +03:00
2026-08-21 00:50:15 +03:00
2026-08-23 08:06:22 +00:00
2026-08-17 12:01:14 +03:00
2026-08-19 16:17:09 +03:00
2026-08-09 21:51:33 +03:00
2026-08-14 03:32:53 +03:00
2026-08-11 05:40:32 +03:00
2026-08-08 21:33:09 +03:00
2026-08-22 16:49:29 +03:00
2026-08-22 10:56:38 +03:00
2026-08-21 13:25:16 +03:00
2026-08-23 11:42:43 +03:00