Garry Tan and Claude Fable 5
d4b0131636
fix(wtree): a failed touch falls through to the HEAD seed instead of reopening the racy window ( #2687 )
...
The v1.74 racy-git fix carries the real index's mtime onto the temp copy —
but its 'touch -r … || true' meant a FAILED touch silently kept the copy's
fresh stamp, marking every entry non-racy and reopening the exact same-size-
rewrite hole. A failed touch now discards the copy and seeds from read-tree
HEAD (slower; every entry re-hashed; fingerprint stays honest).
Verification for #2687 itself: the reporter's same-size-rewrite repro run 20
iterations against this tree — 0 misses (the underlying race was fixed by
v1.74's b1485d88 with its own regression test; this wave verifies and closes,
it does not claim that fix). Receipt: the stubbed-touch test fails on a
v1.77.0.0 scratch worktree.
Fixes #2687
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-31 21:36:02 +00:00
..
2026-08-19 16:53:19 -07:00
2026-06-09 22:29:23 -07:00
2026-03-19 17:21:05 -07:00
2026-08-24 08:55:58 -07:00
2026-05-21 21:21:07 -07:00
2026-08-19 11:42:55 -07:00
2026-08-15 11:42:19 -07:00
2026-08-19 11:42:55 -07:00
2026-08-24 08:55:58 -07:00
2026-08-24 08:55:58 -07:00
2026-08-19 11:42:55 -07:00
2026-04-18 15:05:42 +08:00
2026-08-15 11:42:19 -07:00
2026-08-31 20:52:20 +00:00
2026-08-15 09:37:04 -07:00
2026-08-14 09:28:56 -07:00
2026-08-31 21:26:55 +00:00
2026-08-15 11:42:19 -07:00
2026-08-24 08:55:58 -07:00
2026-06-08 06:20:58 -07:00
2026-08-31 08:55:30 -07:00
2026-08-31 21:01:51 +00:00
2026-08-16 19:34:41 -07:00
2026-05-28 18:21:09 -07:00
2026-08-24 08:55:58 -07:00
2026-08-17 07:50:37 -07:00
2026-08-14 09:28:56 -07:00
2026-08-14 09:28:56 -07:00
2026-08-24 08:55:58 -07:00
2026-03-26 11:15:24 -06:00
2026-06-25 09:42:45 -07:00
2026-08-16 19:34:41 -07:00
2026-08-16 19:34:41 -07:00
2026-05-21 21:21:07 -07:00
2026-08-14 09:28:56 -07:00
2026-08-19 11:42:55 -07:00
2026-08-24 08:55:58 -07:00
2026-08-15 22:20:30 -07:00
2026-04-24 01:38:21 -07:00
2026-08-16 19:34:41 -07:00
2026-05-20 06:56:41 -07:00
2026-05-21 16:09:26 -07:00
2026-05-21 16:09:26 -07:00
2026-07-14 16:35:30 -07:00
2026-08-16 09:53:31 -07:00
2026-08-24 08:55:58 -07:00
2026-08-31 21:01:51 +00:00
2026-06-08 06:39:38 -07:00
2026-08-31 21:02:23 +00:00
2026-08-14 22:02:07 -07:00
2026-08-29 10:10:35 -07:00
2026-03-30 22:25:46 -06:00
2026-08-15 11:42:19 -07:00
2026-08-14 22:02:07 -07:00
2026-08-31 21:01:51 +00:00
2026-08-19 11:42:55 -07:00
2026-08-31 20:55:44 +00:00
2026-08-24 08:55:58 -07:00
2026-08-31 21:21:38 +00:00
2026-08-16 19:34:41 -07:00
2026-08-27 09:50:31 -07:00
2026-08-16 09:53:31 -07:00
2026-08-16 09:53:31 -07:00
2026-08-14 09:28:56 -07:00
2026-08-30 20:45:19 -07:00
2026-08-19 11:42:55 -07:00
2026-08-24 08:55:58 -07:00
2026-08-27 09:50:31 -07:00
2026-08-31 21:02:34 +00:00
2026-08-19 11:42:55 -07:00
2026-04-04 22:46:21 -07:00
2026-04-19 17:50:31 +08:00
2026-08-24 08:55:58 -07:00
2026-08-31 21:01:51 +00:00
2026-08-15 11:42:19 -07:00
2026-05-06 19:37:53 -07:00
2026-05-25 10:57:15 -07:00
2026-08-19 16:53:19 -07:00
2026-08-14 22:02:07 -07:00
2026-08-15 11:42:19 -07:00
2026-08-29 10:10:35 -07:00
2026-08-31 21:36:02 +00:00