Jinjing
6091995e75
perf(worktree-watcher): skip head-identity reads on index-only bursts ( #8558 )
...
An index rewrite cannot move HEAD, yet every quiet local Git-common status
burst was calling readGitCommonHeadIdentities, which scans the primary
checkout plus every linked worktree sequentially (~1,500 file reads for 500
worktrees) even when only index files changed.
Split the conflated git-status signal into two: index churn stays
`gitStatusRepoIds`, while logs/HEAD (and other reflog head moves) become a
distinct `headIdentityRepoIds` signal. Source Control is still notified for
both, but readGitCommonHeadIdentities now runs only for true head triggers
(and structural ticks, which re-baseline silently). Index-only bursts do zero
head-identity reads.
Adds deterministic tests: index-only bursts read zero head identities across
linked and primary checkouts; logs/HEAD still refreshes identities for both;
plus coalescing and debounce coverage.
2026-07-13 05:40:02 -07:00
..
2026-06-23 11:31:41 -07:00
2026-06-22 13:36:05 -07:00
2026-06-22 13:36:05 -07:00
2026-05-30 21:20:37 -07:00
2026-07-10 01:13:16 -07:00
2026-07-10 13:48:10 -07:00
2026-07-08 02:24:41 -07:00
2026-07-08 02:24:41 -07:00
2026-05-31 04:21:57 -07:00
2026-07-11 21:43:20 -07:00
2026-07-11 01:31:13 -07:00
2026-07-06 02:12:32 -07:00
2026-06-20 16:33:20 -07:00
2026-06-28 22:33:07 -07:00
2026-06-02 18:10:31 -07:00
2026-07-12 23:19:15 -07:00
2026-07-12 23:19:15 -07:00
2026-05-29 16:06:33 -07:00
2026-06-02 18:10:31 -07:00
2026-05-11 14:20:08 -07:00
2026-05-25 14:54:47 -07:00
2026-07-11 02:03:14 -07:00
2026-07-11 02:03:14 -07:00
2026-05-30 11:29:01 -07:00
2026-05-30 11:29:01 -07:00
2026-07-06 02:12:32 -07:00
2026-06-16 23:11:27 -07:00
2026-06-19 17:14:55 -07:00
2026-06-19 17:14:55 -07:00
2026-07-06 00:03:31 -07:00
2026-07-06 00:03:31 -07:00
2026-07-06 00:03:31 -07:00
2026-06-30 11:31:55 -07:00
2026-07-03 17:52:59 -07:00
2026-07-03 17:52:59 -07:00
2026-06-30 11:31:55 -07:00
2026-07-11 02:03:14 -07:00
2026-07-11 02:03:14 -07:00
2026-07-06 16:43:43 -07:00
2026-07-06 16:43:43 -07:00
2026-07-12 16:53:43 -07:00
2026-07-12 01:29:55 -07:00
2026-07-12 16:53:43 -07:00
2026-07-12 01:29:55 -07:00
2026-07-12 16:53:43 -07:00
2026-07-06 02:12:32 -07:00
2026-07-10 03:06:44 -07:00
2026-06-28 23:56:05 -07:00
2026-07-10 17:22:47 -07:00
2026-07-10 17:22:47 -07:00
2026-07-10 03:06:44 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-06-17 16:08:14 -07:00
2026-06-29 22:38:29 -07:00
2026-05-20 01:35:56 -07:00
2026-05-20 01:35:56 -07:00
2026-07-10 13:48:35 -07:00
2026-07-10 13:48:35 -07:00
2026-06-29 22:38:29 -07:00
2026-07-12 18:15:15 -07:00
2026-06-10 21:14:53 -07:00
2026-06-29 22:38:29 -07:00
2026-07-13 01:10:38 -07:00
2026-07-12 18:15:15 -07:00
2026-07-06 02:12:32 -07:00
2026-07-12 18:15:15 -07:00
2026-07-10 21:22:18 -07:00
2026-07-10 21:22:18 -07:00
2026-05-21 02:49:16 -04:00
2026-05-21 02:49:16 -04:00
2026-06-17 16:08:14 -07:00
2026-06-17 16:08:14 -07:00
2026-07-10 20:52:22 -07:00
2026-07-10 20:52:22 -07:00
2026-06-28 18:05:29 -07:00
2026-06-29 22:38:29 -07:00
2026-07-10 00:11:27 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-07-10 12:57:09 -07:00
2026-05-21 19:10:16 -07:00
2026-05-21 19:10:16 -07:00
2026-07-09 22:23:56 -07:00
2026-07-09 22:23:56 -07:00
2026-06-29 22:38:29 -07:00
2026-07-10 21:22:18 -07:00
2026-07-10 21:22:18 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 12:27:30 -07:00
2026-05-20 17:20:16 -07:00
2026-06-29 22:38:29 -07:00
2026-04-26 21:42:06 -07:00
2026-07-05 01:15:16 -07:00
2026-07-05 01:15:16 -07:00
2026-07-12 17:30:22 -07:00
2026-07-12 17:30:22 -07:00
2026-07-11 14:03:49 -07:00
2026-07-11 14:03:49 -07:00
2026-07-11 14:03:49 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-07-09 19:30:23 -07:00
2026-05-30 02:46:28 -07:00
2026-07-08 22:21:40 -07:00
2026-07-08 22:21:40 -07:00
2026-05-08 14:17:50 -07:00
2026-06-02 18:10:31 -07:00
2026-07-09 02:13:13 -07:00
2026-07-09 02:13:13 -07:00
2026-07-09 02:13:13 -07:00
2026-07-09 02:13:13 -07:00
2026-07-09 02:13:13 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 21:34:59 -07:00
2026-07-12 18:15:15 -07:00
2026-07-10 15:10:15 -07:00
2026-07-10 15:10:15 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 21:34:59 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 21:34:59 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 21:34:59 -07:00
2026-07-12 21:34:59 -07:00
2026-07-12 21:34:59 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 21:34:59 -07:00
2026-05-08 13:04:09 -07:00
2026-05-08 13:04:09 -07:00
2026-05-30 12:46:34 -07:00
2026-05-30 12:46:34 -07:00
2026-07-09 17:08:35 -07:00
2026-07-09 17:08:35 -07:00
2026-06-15 19:41:45 -07:00
2026-06-28 15:08:13 -07:00
2026-06-17 16:08:14 -07:00
2026-07-11 21:21:18 -07:00
2026-07-11 21:21:18 -07:00
2026-06-29 22:38:29 -07:00
2026-07-08 14:34:16 -07:00
2026-07-08 14:34:16 -07:00
2026-06-29 22:38:29 -07:00
2026-07-10 17:27:47 -07:00
2026-07-10 17:27:47 -07:00
2026-07-06 02:12:32 -07:00
2026-06-30 01:29:45 -07:00
2026-07-10 17:27:47 -07:00
2026-07-10 17:27:47 -07:00
2026-07-02 18:41:23 -04:00
2026-06-19 17:14:55 -07:00
2026-07-13 05:39:52 -07:00
2026-07-13 05:39:52 -07:00
2026-07-10 00:11:27 -07:00
2026-07-10 00:11:27 -07:00
2026-06-30 00:28:07 -07:00
2026-06-30 00:28:07 -07:00
2026-07-10 00:11:27 -07:00
2026-07-10 00:11:27 -07:00
2026-05-31 06:42:33 -07:00
2026-05-15 12:32:07 -07:00
2026-06-29 22:38:29 -07:00
2026-07-06 02:12:32 -07:00
2026-06-03 09:48:03 -07:00
2026-06-29 22:38:29 -07:00
2026-07-03 19:40:45 -04:00
2026-07-03 19:40:45 -04:00
2026-07-11 21:43:20 -07:00
2026-07-03 19:40:45 -04:00
2026-07-11 01:30:19 -07:00
2026-06-29 22:38:29 -07:00
2026-06-17 16:08:14 -07:00
2026-05-17 22:24:38 -07:00
2026-06-14 01:48:26 -07:00
2026-06-14 01:48:26 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 13:41:13 -07:00
2026-07-03 17:52:59 -07:00
2026-07-03 17:52:59 -07:00
2026-07-12 18:15:15 -07:00
2026-07-12 18:15:15 -07:00
2026-05-27 16:22:03 -07:00
2026-07-11 03:02:29 -07:00
2026-06-13 18:53:01 -07:00
2026-07-12 23:43:33 -07:00
2026-07-12 14:09:15 -07:00
2026-07-09 22:37:40 -04:00
2026-06-22 19:09:45 -07:00
2026-06-28 15:43:07 -07:00
2026-06-28 15:43:07 -07:00
2026-05-01 13:25:22 -07:00
2026-06-19 12:31:11 -07:00
2026-07-03 19:43:38 -07:00
2026-07-06 20:46:48 -07:00
2026-07-06 20:46:48 -07:00
2026-06-29 22:38:29 -07:00
2026-07-04 21:31:51 -07:00
2026-07-11 03:20:55 -07:00
2026-07-11 03:20:55 -07:00
2026-07-06 02:12:32 -07:00
2026-06-12 10:14:49 -07:00
2026-06-29 21:37:49 -07:00
2026-07-08 14:34:16 -07:00
2026-07-08 14:34:16 -07:00
2026-07-10 20:52:22 -07:00
2026-07-10 20:52:22 -07:00
2026-07-09 16:24:20 -07:00
2026-07-09 16:24:20 -07:00
2026-06-28 11:38:23 -07:00
2026-06-28 11:38:23 -07:00
2026-06-28 11:38:23 -07:00
2026-06-28 11:38:23 -07:00
2026-07-09 16:24:20 -07:00
2026-07-09 16:24:20 -07:00
2026-06-28 11:38:23 -07:00
2026-07-03 17:21:50 -07:00
2026-05-08 10:50:43 -07:00
2026-05-31 09:29:44 -07:00
2026-05-31 09:29:44 -07:00
2026-05-21 13:22:37 -07:00
2026-05-21 13:22:37 -07:00
2026-07-13 05:40:02 -07:00
2026-07-13 05:40:02 -07:00
2026-07-13 05:40:02 -07:00
2026-07-12 23:43:33 -07:00
2026-07-01 23:04:13 -07:00
2026-07-11 01:31:13 -07:00
2026-07-13 05:40:02 -07:00
2026-07-13 05:40:02 -07:00
2026-06-15 19:58:55 -07:00
2026-06-23 11:07:49 -07:00
2026-06-29 22:38:29 -07:00
2026-06-15 19:58:55 -07:00
2026-06-29 22:38:29 -07:00
2026-07-12 23:43:33 -07:00
2026-07-12 23:43:33 -07:00
2026-07-12 23:43:33 -07:00
2026-07-12 23:43:33 -07:00
2026-07-12 23:43:33 -07:00
2026-06-14 23:23:31 -07:00
2026-05-14 00:42:07 -07:00
2026-06-29 22:38:29 -07:00
2026-07-06 02:12:32 -07:00
2026-07-10 20:52:24 -07:00
2026-06-29 22:38:29 -07:00
2026-07-13 01:10:38 -07:00
2026-07-10 20:52:24 -07:00
2026-06-19 17:14:55 -07:00
2026-06-19 17:14:55 -07:00
2026-06-07 19:51:36 -07:00
2026-06-07 19:51:36 -07:00
2026-07-12 23:43:33 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-07-11 02:05:58 -07:00
2026-07-12 13:02:29 -07:00
2026-07-12 13:02:29 -07:00