Garry Tan and Claude Fable 5
5d74ed7231
test: pin the security-property regression guards from pre-landing review
...
The pre-landing review found the fixes were correct but three regression guards
were missing — each pins a property whose silent revert would keep behavior
identical while reopening the hole:
- validateAuth: a static tripwire asserting crypto.timingSafeEqual + the
got.length===want.length gate + the null-header guard (a revert to `===`
keeps accept/reject green but restores the timing side-channel).
- redact: a table-driven loop over the exported URL_PASSWORD_PLACEHOLDER_WORDS
so a typo or dropped entry can't silently start blocking a doc placeholder;
plus a substring-can't-rescue-a-real-secret assertion.
- config: assert the self-contained .gitignore is written even when git already
ignores .gstack/, proving the write precedes the isIgnoredByGit early return.
- bun-polyfill: cover the 128+signal exit branch (POSIX only).
URL_PASSWORD_PLACEHOLDER_WORDS is exported so the table test can't drift.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-16 11:07:55 -07:00
..
2026-08-15 09:37:04 -07:00
2026-03-26 11:15:24 -06:00
2026-03-28 08:35:24 -06:00
2026-08-15 22:20:30 -07:00
2026-05-07 20:14:59 -07:00
2026-05-09 08:06:47 -07:00
2026-05-13 12:22:30 -04:00
2026-08-15 22:20:30 -07:00
2026-05-24 01:43:51 -07:00
2026-04-28 20:08:04 -07:00
2026-05-14 21:55:29 -07:00
2026-04-28 20:08:04 -07:00
2026-05-14 21:46:50 -07:00
2026-04-16 13:49:04 -07:00
2026-08-16 11:07:55 -07:00
2026-08-15 11:42:19 -07:00
2026-04-28 20:08:04 -07:00
2026-04-28 20:08:04 -07:00
2026-05-27 16:09:38 -07:00
2026-04-28 20:08:04 -07:00
2026-08-14 22:02:07 -07:00
2026-05-01 07:21:28 -07:00
2026-08-15 11:42:19 -07:00
2026-05-21 21:21:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-15 22:20:30 -07:00
2026-08-15 22:20:30 -07:00
2026-08-16 11:07:55 -07:00
2026-08-15 09:37:04 -07:00
2026-03-23 22:15:23 -07:00
2026-04-17 00:45:13 -07:00
2026-05-07 20:14:59 -07:00
2026-04-08 00:41:55 -07:00
2026-05-09 08:06:47 -07:00
2026-05-09 08:06:47 -07:00
2026-08-15 09:37:04 -07:00
2026-04-18 23:25:33 +08:00
2026-04-10 17:13:15 -10:00
2026-08-15 22:20:30 -07:00
2026-08-14 09:28:56 -07:00
2026-03-26 11:15:24 -06:00
2026-08-15 11:42:19 -07:00
2026-08-14 22:02:07 -07:00
2026-05-20 07:35:01 -07:00
2026-05-25 10:57:15 -07:00
2026-04-21 21:58:27 -07:00
2026-08-15 11:42:19 -07:00
2026-08-15 11:42:19 -07:00
2026-08-15 22:20:30 -07:00
2026-04-06 00:47:04 -07:00
2026-05-27 16:09:38 -07:00
2026-05-27 16:09:38 -07:00
2026-08-14 09:28:56 -07:00
2026-08-15 11:42:19 -07:00
2026-04-28 00:57:28 -07:00
2026-04-06 00:47:04 -07:00
2026-04-20 13:20:30 +08:00
2026-03-20 12:22:11 -07:00
2026-08-15 11:42:19 -07:00
2026-08-15 11:42:19 -07:00
2026-05-07 20:14:59 -07:00
2026-05-07 20:14:59 -07:00
2026-05-20 07:35:01 -07:00
2026-05-24 01:43:51 -07:00
2026-08-15 11:42:19 -07:00
2026-05-20 06:56:41 -07:00
2026-05-30 14:57:07 -07:00
2026-05-14 21:46:50 -07:00
2026-05-20 07:35:01 -07:00
2026-08-15 09:37:04 -07:00
2026-04-23 10:23:40 -07:00
2026-08-15 09:37:04 -07:00
2026-08-15 22:20:30 -07:00
2026-05-20 06:56:41 -07:00
2026-08-15 09:37:04 -07:00
2026-04-23 10:23:40 -07:00
2026-08-15 22:20:30 -07:00
2026-05-20 07:35:01 -07:00
2026-08-15 09:37:04 -07:00
2026-08-16 11:07:55 -07:00
2026-08-15 09:37:04 -07:00
2026-08-15 09:37:04 -07:00
2026-05-09 08:06:47 -07:00
2026-08-15 11:42:19 -07:00
2026-08-16 10:14:32 -07:00
2026-05-07 20:14:59 -07:00
2026-08-14 22:02:07 -07:00
2026-08-15 09:37:04 -07:00
2026-05-09 08:06:47 -07:00
2026-08-15 11:42:19 -07:00
2026-08-15 09:37:04 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-05-14 21:55:29 -07:00
2026-08-15 22:20:30 -07:00
2026-05-07 20:14:59 -07:00
2026-05-27 16:09:38 -07:00
2026-08-15 09:37:04 -07:00
2026-03-28 08:35:24 -06:00
2026-06-18 10:45:05 -07:00
2026-08-15 09:37:04 -07:00
2026-08-15 22:20:30 -07:00
2026-08-15 11:42:19 -07:00
2026-04-25 22:52:15 -07:00
2026-05-27 16:09:38 -07:00
2026-04-28 20:08:04 -07:00
2026-05-09 08:06:47 -07:00
2026-08-15 11:42:19 -07:00
2026-04-28 20:08:04 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-15 09:37:04 -07:00
2026-08-14 22:02:07 -07:00
2026-08-14 22:02:07 -07:00
2026-08-15 09:37:04 -07:00
2026-03-13 00:31:41 -07:00
2026-05-14 21:55:29 -07:00
2026-06-09 21:02:30 -07:00
2026-08-14 22:02:07 -07:00
2026-03-26 11:15:24 -06:00
2026-08-15 11:42:19 -07:00
2026-04-04 10:17:05 -07:00
2026-08-15 11:42:19 -07:00
2026-08-15 22:20:30 -07:00