Gaurav Dubey
dc9bb9f2d9
fix(hooks): keep inline resolver backslash-free so hooks parse on Windows
...
On native Windows, Claude Code runs each hook as `bash.exe -c "<command>"`
through the Windows command line. That extra unescape layer collapses the
backslashes in the WSL path conversion of the inline plugin-root resolver,
so `.replace(/\\/g,'/')` reaches node as `.replace(/\/g,'/')` and every hook
fails with `SyntaxError: missing ) after argument list`.
Build the backslash separator with String.fromCharCode(92) and split/join
instead of regex escapes, so the resolver contains no backslash. Conversion
behaviour is unchanged. Regenerate every embedded copy (hooks.json,
codex-hooks.json, commands/*.md) and refresh hooks.metadata.json
fingerprints.
Add a test that the resolver and each hook `node -e` program are
backslash-free, and run the shipped SessionStart command through bash with
backslashes collapsed the way Windows does.
Fixes #3746
2026-10-26 18:39:04 +00:00
..
2026-03-29 21:21:18 -04:00
2026-10-10 17:51:00 -04:00
2026-10-26 18:39:04 +00:00
2026-04-30 03:41:18 -04:00
2026-04-30 03:41:18 -04:00
2026-10-09 10:54:29 +07:00
2026-10-09 10:54:29 +07:00
2026-04-29 23:56:40 -04:00
2026-03-29 21:21:18 -04:00
2026-04-29 23:56:40 -04:00
2026-10-01 17:50:41 -05:00
2026-06-11 12:58:11 -04:00
2026-06-11 12:58:11 -04:00
2026-06-11 12:58:11 -04:00
2026-06-11 12:58:11 -04:00
2026-06-11 12:58:11 -04:00
2026-06-11 12:58:11 -04:00
2026-06-11 12:58:11 -04:00
2026-03-01 12:07:13 -08:00
2026-05-11 07:44:26 -04:00
2026-04-05 17:51:56 -07:00
2026-04-29 23:56:40 -04:00
2026-04-02 17:48:43 -07:00
2026-04-29 23:56:40 -04:00
2026-04-30 03:41:18 -04:00
2026-04-30 03:41:18 -04:00
2026-04-29 23:56:40 -04:00
2026-03-29 21:21:18 -04:00
2026-04-29 23:56:40 -04:00
2026-03-10 20:53:39 -07:00
2026-09-05 17:59:58 +08:00
2026-04-05 17:50:31 -07:00
2026-10-09 15:59:20 -04:00
2026-04-05 17:50:31 -07:00
2026-10-09 15:59:20 -04:00
2026-03-01 12:07:13 -08:00
2026-03-29 21:21:18 -04:00
2026-10-26 18:39:04 +00:00
2026-04-29 23:56:40 -04:00
2026-04-29 23:56:40 -04:00
2026-03-29 21:21:18 -04:00
2026-04-29 23:56:40 -04:00
2026-08-24 22:26:32 -03:00
2026-09-05 17:33:06 +08:00
2026-09-05 17:33:06 +08:00
2026-04-30 12:25:14 -04:00
2026-10-01 17:50:41 -05:00
2026-04-30 03:41:18 -04:00
2026-10-19 18:41:07 -04:00
2026-10-19 18:41:07 -04:00
2026-10-19 18:41:07 -04:00
2026-10-19 18:41:07 -04:00
2026-10-19 18:41:07 -04:00
2026-06-07 16:15:31 +08:00
2026-06-15 14:21:28 -04:00
2026-06-07 16:15:31 +08:00
2026-06-07 16:15:31 +08:00
2026-06-07 16:15:31 +08:00
2026-10-09 10:54:29 +07:00
2026-09-05 17:33:06 +08:00
2026-09-10 13:20:52 +01:00
2026-09-05 17:33:06 +08:00
2026-04-30 03:41:18 -04:00
2026-05-12 00:06:41 -04:00
2026-09-05 17:33:06 +08:00
2026-03-02 22:15:46 -08:00
2026-03-02 22:15:46 -08:00
2026-04-08 16:27:30 -07:00
2026-03-31 22:57:48 -07:00
2026-03-31 14:12:23 -07:00
2026-09-09 15:00:49 -04:00
2026-04-08 16:27:30 -07:00
2026-09-05 17:33:06 +08:00
2026-04-29 23:56:40 -04:00
2026-07-19 15:47:10 -04:00
2026-05-28 07:32:52 -04:00
2026-05-28 07:32:52 -04:00
2026-05-28 07:32:52 -04:00
2026-04-30 03:41:18 -04:00
2026-08-24 22:26:22 -03:00
2026-09-05 17:33:06 +08:00
2026-04-29 23:56:40 -04:00
2026-03-16 13:34:25 -07:00
2026-04-29 23:56:40 -04:00
2026-10-20 17:38:04 -04:00
2026-03-29 21:21:18 -04:00
2026-09-05 17:33:06 +08:00
2026-10-26 18:39:04 +00:00
2026-02-20 01:11:30 -08:00
2026-10-01 17:50:41 -05:00
2026-10-26 18:39:04 +00:00
2026-10-26 18:39:04 +00:00
2026-04-30 03:41:18 -04:00
2026-10-10 17:37:01 -04:00
2026-04-30 03:41:18 -04:00
2026-04-30 03:41:18 -04:00
2026-06-12 19:44:39 +08:00