From 4bd40d9281a52b065fe6a6dee20d60da59dcd196 Mon Sep 17 00:00:00 2001 From: Neil <4138956+nwparker@users.noreply.github.com> Date: Fri, 29 May 2026 05:48:24 -0700 Subject: [PATCH] Document Linear text draft effect cleanup (#3131) --- docs/reference/react-performance-audit.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/reference/react-performance-audit.md b/docs/reference/react-performance-audit.md index a699468c6c0..a6d3f8bc43c 100644 --- a/docs/reference/react-performance-audit.md +++ b/docs/reference/react-performance-audit.md @@ -49,7 +49,7 @@ Initial inventory: Current count after low-risk PRs #3038, #3041, #3042, #3044, #3051, #3052, #3053, #3054, #3055, #3056, #3058, #3059, #3060, #3062, #3063, #3064, #3065, #3066, #3067, #3068, #3069, #3083, #3087, #3091, #3100, #3104, and #3122: 926 Effect hook call sites. -Open medium-risk PRs #3070, #3073, #3077, #3089, #3093, #3102, #3108, #3110, #3112, #3118, #3124, #3126, and #3128 each project to 925 Effect hook call sites on the current merged baseline; open medium-risk PRs #3097, #3106, #3116, and #3120 each project to 924; open medium-risk PR #3114 projects to 923; open medium-risk PR #3095 projects to 922; open medium-risk PR #3079 projects to 916; open high-risk PR #3075 projects to 922; and open high-risk PR #3081 projects to 918. These are not counted in the merged baseline until reviewed and merged. +Open medium-risk PRs #3070, #3073, #3077, #3089, #3093, #3102, #3108, #3110, #3112, #3118, #3124, #3126, #3128, and #3130 each project to 925 Effect hook call sites on the current merged baseline; open medium-risk PRs #3097, #3106, #3116, and #3120 each project to 924; open medium-risk PR #3114 projects to 923; open medium-risk PR #3095 projects to 922; open medium-risk PR #3079 projects to 916; open high-risk PR #3075 projects to 922; and open high-risk PR #3081 projects to 918. These are not counted in the merged baseline until reviewed and merged. | Area | Files / signal | Scan status | Notes | | ------------------------------ | -------------------------------------------------------------------------------------------------------- | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | @@ -61,7 +61,7 @@ Open medium-risk PRs #3070, #3073, #3077, #3089, #3093, #3102, #3108, #3110, #31 | Right sidebar / source control | `components/right-sidebar/**` | Inventory complete, manual review pending | Check polling, PR checks, file explorer watch/reveal, source-control local resets. Git provider compatibility required. | | Settings | `components/settings/**` | Inventory complete, manual review in progress | Repository hook local editor visibility covered by #3093; lazy section mounted-state bookkeeping covered by #3128. Continue with draft mirrors while keeping SSH and cross-platform settings behavior intact. | | Automations | `components/automations/**` | Inventory complete, manual review in progress | Combobox open-focus Effects covered by #3100; run-history selection repair covered by #3104; external run-table selection repair covered by #3102; detail-page selection resets covered by #3106. Continue with draft defaulting, polling, and completion detection. | -| Issue, PR, task pages | `TaskPage.tsx`, `PullRequestPage.tsx`, `GitHubItemDialog.tsx`, `GitLabItemDialog.tsx`, Linear components | Inventory complete, manual review in progress | Linear estimate input sync covered by #3108; Linear sub-issue list sync covered by #3110; GitHub project date draft sync covered by #3112; GitHub reviewer-picker active index covered by #3114; GitHub project column state covered by #3116; GitLab comment draft reset covered by #3124. Continue large-file scan with separate GitHub, GitLab, Linear, and generic review behavior. | +| Issue, PR, task pages | `TaskPage.tsx`, `PullRequestPage.tsx`, `GitHubItemDialog.tsx`, `GitLabItemDialog.tsx`, Linear components | Inventory complete, manual review in progress | Linear estimate input sync covered by #3108; Linear sub-issue list sync covered by #3110; GitHub project date draft sync covered by #3112; GitHub reviewer-picker active index covered by #3114; GitHub project column state covered by #3116; GitLab comment draft reset covered by #3124; Linear title/description draft sync covered by #3130. Continue large-file scan with separate GitHub, GitLab, Linear, and generic review behavior. | | Onboarding / feature wall | `components/onboarding/**`, `components/feature-wall/**` | Inventory complete, manual review in progress | Select portal root Effects covered by #3087; tour visited-marker Effects covered by #3095. Continue with demo timers and telemetry while avoiding telemetry semantic changes. | | Status, dashboard, activity | `components/status-bar/**`, `components/dashboard/**`, `components/activity/**`, `components/pet/**` | Inventory complete, manual review in progress | Status-bar account menu close reset covered by #3051; pet overlay size clamp covered by #3118; Activity selected-thread repair covered by #3126. Check interval sharing, retained agent state, activity terminal portals. | | Mobile app routes | `mobile/app/**` | Inventory complete, manual review pending | 79 Effects, including large `tasks.tsx` and session route. Remote-client parity required. | @@ -132,6 +132,7 @@ These are candidate batches, not final conclusions. Each item needs code inspect | PR BC | GitLab comment draft reset | The GitLab MR/issue comment draft was cleared in an Effect after the selected sheet item changed. | `GitLabItemDialog.tsx` covered by #3124 | Medium | | PR BD | Activity selected-thread repair | Activity selected thread state was cleared in an Effect after retained agent/tab rows changed. | `ActivityPrototypePage.tsx` covered by #3126 | Medium | | PR BE | Settings lazy-section mounted state | Settings remembered newly needed lazy sections in an Effect after search/navigation changed the visible set. | `Settings.tsx` covered by #3128 | Medium | +| PR BF | Linear title/description draft sync | Linear issue title and description drafts were synced from source issue data in an Effect after item or field updates. | `LinearIssueTextEditor.tsx` covered by #3130 | Medium | ## Merge Risk Scale @@ -194,6 +195,7 @@ These are candidate batches, not final conclusions. Each item needs code inspect | #3124 | `nwparker/react-perf-gitlab-comment-draft` | GitLab comment draft reset moves out of an Effect | Medium | Open | `pnpm exec oxlint src/renderer/src/components/GitLabItemDialog.tsx`; `pnpm run typecheck:web`; `git diff --check`; AST Effect count 926 -> 925. | | #3126 | `nwparker/react-perf-activity-selection` | Activity selected-thread repair moves out of an Effect | Medium | Open | `pnpm exec oxlint src/renderer/src/components/activity/ActivityPrototypePage.tsx`; `pnpm run typecheck:web`; `git diff --check`; AST Effect count 926 -> 925. | | #3128 | `nwparker/react-perf-settings-mounted-sections` | Settings lazy-section mounted bookkeeping moves out of an Effect | Medium | Open | `pnpm exec oxlint src/renderer/src/components/settings/Settings.tsx`; `pnpm run typecheck:web`; `git diff --check`; AST Effect count 926 -> 925. | +| #3130 | `nwparker/react-perf-linear-text-drafts` | Linear title/description draft sync moves out of an Effect | Medium | Open | `pnpm exec oxlint src/renderer/src/components/LinearIssueTextEditor.tsx`; `pnpm run typecheck:web`; `git diff --check`; AST Effect count 926 -> 925. | ## Reproduction Commands