Skip to content

fix: remove unused imports and variables (part 1 — packages & non-web-core)#8751

Open
darkingtail wants to merge 5 commits intomakeplane:previewfrom
darkingtail:fix/oxlint-unused-vars-part1
Open

fix: remove unused imports and variables (part 1 — packages & non-web-core)#8751
darkingtail wants to merge 5 commits intomakeplane:previewfrom
darkingtail:fix/oxlint-unused-vars-part1

Conversation

@darkingtail
Copy link
Contributor

@darkingtail darkingtail commented Mar 12, 2026

Summary

Remove unused imports and variables flagged by oxlint no-unused-vars rule.

Scope: packages/*, apps/admin, apps/space, apps/live, and apps/web (non-core)
Files: 80

Changes:

  • Remove unused type/value imports
  • Prefix unused callback parameters with _
  • Remove unused variable declarations

Context

This is 2 of 4 PRs splitting the full lint cleanup into reviewable chunks.

Test plan

  • pnpm turbo run build --filter='./packages/*' passes
  • No functional regressions

Summary by CodeRabbit

  • Refactor
    • Removed numerous unused type/imports and renamed unused parameters across components, hooks, and stores for consistency and lint compliance.
    • Standardized unused-parameter naming (prefixed with underscore) and updated internal type references; no changes to behavior or user-facing functionality.

Resolve oxlint no-unused-vars warnings in packages/*, apps/admin,
apps/space, apps/live, and apps/web (non-core).
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 12, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 1be151dc-7e3e-4fd8-a6a7-11172b73f4c5

📥 Commits

Reviewing files that changed from the base of the PR and between 3e0edea and d63b9c2.

📒 Files selected for processing (1)
  • apps/web/ce/components/cycles/active-cycle/root.tsx

📝 Walkthrough

Walkthrough

Widespread non-functional cleanup: removed unused type/imports, renamed unused parameters with a leading underscore, removed unused local variables/destructuring, and replaced CoreRootStore type references with RootStore. No runtime control flow or business logic changes.

Changes

Cohort / File(s) Summary
Remove unused React type imports
apps/web/ce/components/automations/root.tsx, apps/web/ce/components/command-palette/modals/work-item-level.tsx, apps/web/ce/components/cycles/additional-actions.tsx, apps/web/ce/components/cycles/analytics-sidebar/root.tsx, apps/web/ce/components/de-dupe/duplicate-popover/root.tsx, apps/web/ce/components/estimates/inputs/time-input.tsx, apps/web/ce/components/estimates/points/delete.tsx, apps/web/ce/components/estimates/update/modal.tsx, apps/web/ce/components/gantt-chart/blocks/blocks-list.tsx, apps/web/ce/components/issues/filters/issue-types.tsx, apps/web/ce/components/issues/filters/team-project.tsx, apps/web/ce/components/issues/issue-detail-widgets/action-buttons.tsx, apps/web/ce/components/issues/issue-detail-widgets/collapsibles.tsx, apps/web/ce/components/issues/issue-detail-widgets/modals.tsx, apps/web/ce/components/issues/issue-details/additional-activity-root.tsx, apps/web/ce/components/issues/issue-details/additional-properties.tsx, apps/web/ce/components/issues/issue-details/issue-creator.tsx, apps/web/ce/components/issues/issue-details/issue-properties-activity/root.tsx, apps/web/ce/components/issues/issue-details/issue-type-activity.tsx, apps/web/ce/components/issues/issue-layouts/quick-action-dropdowns/duplicate-modal.tsx, apps/web/ce/components/issues/worklog/activity/filter-root.tsx, apps/web/ce/components/issues/worklog/activity/root.tsx, apps/web/ce/components/issues/worklog/activity/worklog-create-button.tsx, apps/web/ce/components/issues/worklog/property/root.tsx, apps/web/ce/components/onboarding/tour/root.tsx, apps/web/ce/components/sidebar/project-navigation-root.tsx, apps/web/ce/components/workspace-notifications/notification-card/root.tsx, apps/web/ce/components/workspace/sidebar/sidebar-item.tsx, apps/web/ce/components/workspace/upgrade-badge.tsx, packages/editor/src/core/components/editors/editor-container.tsx, packages/editor/src/core/components/editors/link-view-container.tsx, packages/editor/src/core/components/menus/bubble-menu/color-selector.tsx, packages/editor/src/core/components/menus/bubble-menu/link-selector.tsx, packages/editor/src/core/components/menus/bubble-menu/node-selector.tsx, packages/editor/src/core/components/menus/bubble-menu/root.tsx, packages/propel/src/tab-navigation/tab-navigation-list.tsx, packages/ui/src/collapsible/collapsible-button.tsx, packages/ui/src/dropdown/multi-select.tsx, packages/ui/src/dropdown/single-select.tsx, packages/ui/src/link/block.tsx, packages/ui/src/progress/radial-progress.tsx, packages/ui/src/scroll-area.tsx, packages/ui/src/tabs/tabs.tsx
Deleted unused FC / other type-only React imports across many components.
Unused parameter renames (underscore prefix)
apps/admin/app/root.tsx, apps/space/app/root.tsx, apps/space/hooks/use-editor-flagging.ts, apps/web/ce/components/common/subscription/subscription-pill.tsx, apps/web/ce/components/gantt-chart/dependency/blockDraggables/left-draggable.tsx, apps/web/ce/components/gantt-chart/dependency/blockDraggables/right-draggable.tsx, apps/web/ce/components/gantt-chart/dependency/dependency-paths.tsx, apps/web/ce/components/inbox/source-pill.tsx, apps/web/ce/components/issues/issue-layouts/additional-properties.tsx, apps/web/ce/components/issues/issue-layouts/issue-stats.tsx, apps/web/ce/components/pages/modals/modals.tsx, apps/web/ce/components/views/helper.tsx, apps/web/ce/hooks/use-analytics-tabs.tsx, apps/web/ce/hooks/use-debounced-duplicate-issues.tsx, apps/web/ce/hooks/use-issue-properties.tsx, apps/web/ce/store/issue/helpers/base-issue-store.ts, apps/web/ce/store/issue/helpers/base-issue.store.ts, apps/web/ce/store/timeline/base-timeline.store.ts
Renamed unused parameters to _-prefixed names (e.g., props_props, error_error) to satisfy lint/unused-variable conventions.
Component prop/type renames
apps/web/ce/components/cycles/active-cycle/root.tsx, apps/web/ce/components/de-dupe/de-dupe-button.tsx, apps/web/ce/components/de-dupe/duplicate-modal/root.tsx, apps/web/ce/components/de-dupe/issue-block/button-label.tsx, apps/web/ce/components/epics/epic-modal/modal.tsx, apps/web/ce/components/issues/issue-layouts/additional-properties.tsx
Removed FC import and changed prop/parameter names to underscore-prefixed variants; notably activeCycleResolvedPath was renamed to _activeCycleResolvedPath in props/type (check external callers).
Misc unused import / destructuring removals
apps/live/src/lib/pdf/styles.ts, apps/web/app/(all)/[workspaceSlug]/(projects)/_sidebar.tsx, apps/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/header.tsx, apps/web/app/(all)/[workspaceSlug]/(projects)/sidebar.tsx, apps/web/ce/components/issues/issue-modal/modal-additional-properties.tsx, packages/editor/src/core/hooks/use-collaborative-editor.ts, packages/editor/src/core/props.ts, packages/editor/src/core/types/config.ts, packages/ui/src/dropdown/common/options.tsx
Removed various unused imports/destructured values (e.g., NEUTRAL_COLORS, cn, DOMParser, TWebhookConnectionQueryParams, value).
Removed unused local variables / destructuring
apps/web/app/(all)/invitations/page.tsx, packages/editor/src/core/components/menus/block-menu.tsx
Deleted unused local variable invitation and removed unused destructured prop workItemIdentifier.
Catch clause parameter renames
apps/web/ce/components/issues/issue-details/parent-select-root.tsx, packages/utils/src/url.ts
Renamed catch parameters from error to _error where the exception variable was unused.
Root store type rename (CoreRootStore → RootStore)
apps/space/store/*.ts (e.g., apps/space/store/cycle.store.ts, .../base-issues.store.ts, .../instance.store.ts, .../issue-detail.store.ts, .../issue-filters.store.ts, .../issue.store.ts, .../label.store.ts, .../members.store.ts, .../module.store.ts, .../profile.store.ts, .../publish/*.ts, .../state.store.ts, .../user.store.ts)
Replaced CoreRootStore type references/imports with RootStore across many space-store modules; purely type-level changes.
Minor event handler param rename
packages/editor/src/core/extensions/custom-image/components/block.tsx
Changed onError handler param from e to _e (now unused) with no behavioral change.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested labels

🛠️refactor

Suggested reviewers

  • prateekshourya29
  • sriramveeraghanta

Poem

🐰 I hopped through code with tidy paws and cheer,
Dropped idle imports, underscored what's clear,
Params now hum softly, unused and small,
I pruned the linty bushes — neat files, one and all! 🥕

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 9.52% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main purpose: removing unused imports and variables as flagged by oxlint, and specifies the scope (part 1 of a multi-part effort).
Description check ✅ Passed The description provides a clear summary of changes, scope, and test plan, but lacks some template sections like Type of Change, Screenshots, and more detailed Test Scenarios.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
apps/admin/app/root.tsx (1)

91-97: ⚠️ Potential issue | 🟠 Major

Incorrect destructuring syntax for error parameter.

The property in Route.ErrorBoundaryProps is named error (as confirmed by apps/web/app/root.tsx which uses { error }), but this code destructures { _error }, which attempts to extract a non-existent property and leaves _error as undefined.

🐛 Proposed fix
-export function ErrorBoundary({ _error }: Route.ErrorBoundaryProps) {
+export function ErrorBoundary({ error: _error }: Route.ErrorBoundaryProps) {
   return (
     <div>
       <p>Something went wrong.</p>
     </div>
   );
 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/admin/app/root.tsx` around lines 91 - 97, The ErrorBoundary function is
destructuring the wrong prop name ({ _error }) from Route.ErrorBoundaryProps;
change the parameter to destructure the actual property `{ error }` in the
ErrorBoundary signature (function ErrorBoundary({ error }:
Route.ErrorBoundaryProps)) and update any internal references to use `error` so
the passed error object is available for rendering or logging.
apps/web/ce/components/cycles/active-cycle/root.tsx (1)

46-54: ⚠️ Potential issue | 🔴 Critical

Alias the prop instead of renaming the destructured key.

_activeCycleResolvedPath is not a property of ActiveCyclesComponentProps. The destructuring expects a property named _activeCycleResolvedPath, but the type defines activeCycleResolvedPath. Callers still pass activeCycleResolvedPath={activeCycleResolvedPath}, so this will fail TypeScript type-checking. Use alias syntax to destructure the correct property:

 const ActiveCyclesComponent = observer(function ActiveCyclesComponent({
   cycleId,
   activeCycle,
-  _activeCycleResolvedPath,
+  activeCycleResolvedPath: _activeCycleResolvedPath,
   workspaceSlug,
   projectId,
   handleFiltersUpdate,
   cycleIssueDetails,
 }: ActiveCyclesComponentProps) {
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/web/ce/components/cycles/active-cycle/root.tsx` around lines 46 - 54,
The component destructures a non-existent prop name _activeCycleResolvedPath
causing a type mismatch; update the parameter destructuring in
ActiveCyclesComponent to pull the actual prop activeCycleResolvedPath and alias
it if you need a different local name (e.g., activeCycleResolvedPath:
_activeCycleResolvedPath) so callers passing activeCycleResolvedPath={...}
type-check correctly; ensure the rest of the function uses the chosen local
variable name consistently.
🧹 Nitpick comments (1)
packages/editor/src/core/components/menus/block-menu.tsx (1)

30-45: Finish removing the dead workItemIdentifier prop.

BlockMenu no longer reads this prop, but Props still exposes it and packages/editor/src/core/components/editors/rich-text/editor.tsx still forwards it. Dropping it from the component contract would complete the cleanup and stop this no-op prop from propagating through the editor API.

♻️ Suggested cleanup
 type Props = {
   disabledExtensions?: IEditorProps["disabledExtensions"];
   editor: Editor;
   flaggedExtensions?: IEditorProps["flaggedExtensions"];
-  workItemIdentifier?: IEditorProps["workItemIdentifier"];
 };
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@packages/editor/src/core/components/menus/block-menu.tsx` around lines 30 -
45, Remove the dead workItemIdentifier prop from the BlockMenu contract and any
upstream forwarding: delete workItemIdentifier from the Props type in BlockMenu
(type Props) and update the BlockMenu function signature usage accordingly, then
remove the corresponding prop forwarding in
packages/editor/src/core/components/editors/rich-text/editor.tsx so it no longer
passes workItemIdentifier to BlockMenu; ensure no other references to
workItemIdentifier remain in this component or its props to complete the
cleanup.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@apps/space/app/root.tsx`:
- Around line 98-99: The ErrorBoundary component incorrectly destructures a
non-existent `_error` prop from Route.ErrorBoundaryProps; update the parameter
to use destructuring aliasing so the real `error` prop is renamed to `_error`
(e.g., change the param in the `ErrorBoundary` function signature to destructure
`error` as `_error`) or alternatively accept the whole props object as
`_props`/`_` if you intend to ignore it; adjust the `ErrorBoundary` function
signature (reference: ErrorBoundary, Route.ErrorBoundaryProps) accordingly.

In `@apps/web/ce/components/de-dupe/de-dupe-button.tsx`:
- Around line 17-18: Remove the unused default React import from this module:
the component DeDupeButtonRoot no longer references the React namespace (modern
JSX transform is used), so delete the React import statement and keep any
existing named imports if present to eliminate the unused import warning and
clean up the file.

In `@apps/web/ce/components/issues/issue-details/parent-select-root.tsx`:
- Around line 50-52: The catch blocks in parent-select-root.tsx currently
discard the caught exception by using _error; change the catch bindings to a
typed variable (e.g., error: unknown) and include that variable in your
logging/reporting before showing the generic UI toast. Specifically, replace
"catch (_error)" with "catch (error: unknown)" and update the console.error call
to include the error (and call any existing error-reporting helper like
reportError or processLogger.error with the error) so the stack/message is
preserved; apply the same change to the other catch block handling parent-link
failures.

---

Outside diff comments:
In `@apps/admin/app/root.tsx`:
- Around line 91-97: The ErrorBoundary function is destructuring the wrong prop
name ({ _error }) from Route.ErrorBoundaryProps; change the parameter to
destructure the actual property `{ error }` in the ErrorBoundary signature
(function ErrorBoundary({ error }: Route.ErrorBoundaryProps)) and update any
internal references to use `error` so the passed error object is available for
rendering or logging.

In `@apps/web/ce/components/cycles/active-cycle/root.tsx`:
- Around line 46-54: The component destructures a non-existent prop name
_activeCycleResolvedPath causing a type mismatch; update the parameter
destructuring in ActiveCyclesComponent to pull the actual prop
activeCycleResolvedPath and alias it if you need a different local name (e.g.,
activeCycleResolvedPath: _activeCycleResolvedPath) so callers passing
activeCycleResolvedPath={...} type-check correctly; ensure the rest of the
function uses the chosen local variable name consistently.

---

Nitpick comments:
In `@packages/editor/src/core/components/menus/block-menu.tsx`:
- Around line 30-45: Remove the dead workItemIdentifier prop from the BlockMenu
contract and any upstream forwarding: delete workItemIdentifier from the Props
type in BlockMenu (type Props) and update the BlockMenu function signature usage
accordingly, then remove the corresponding prop forwarding in
packages/editor/src/core/components/editors/rich-text/editor.tsx so it no longer
passes workItemIdentifier to BlockMenu; ensure no other references to
workItemIdentifier remain in this component or its props to complete the
cleanup.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 0324d839-2ffe-4bef-b8d5-bde4bd48fb4f

📥 Commits

Reviewing files that changed from the base of the PR and between 6627282 and 566a8b5.

📒 Files selected for processing (80)
  • apps/admin/app/root.tsx
  • apps/live/src/lib/pdf/styles.ts
  • apps/space/app/root.tsx
  • apps/space/hooks/use-editor-flagging.ts
  • apps/web/app/(all)/[workspaceSlug]/(projects)/_sidebar.tsx
  • apps/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/header.tsx
  • apps/web/app/(all)/[workspaceSlug]/(projects)/sidebar.tsx
  • apps/web/app/(all)/invitations/page.tsx
  • apps/web/ce/components/analytics/use-analytics-tabs.tsx
  • apps/web/ce/components/automations/root.tsx
  • apps/web/ce/components/command-palette/modals/work-item-level.tsx
  • apps/web/ce/components/common/subscription/subscription-pill.tsx
  • apps/web/ce/components/cycles/active-cycle/root.tsx
  • apps/web/ce/components/cycles/additional-actions.tsx
  • apps/web/ce/components/cycles/analytics-sidebar/root.tsx
  • apps/web/ce/components/de-dupe/de-dupe-button.tsx
  • apps/web/ce/components/de-dupe/duplicate-modal/root.tsx
  • apps/web/ce/components/de-dupe/duplicate-popover/root.tsx
  • apps/web/ce/components/de-dupe/issue-block/button-label.tsx
  • apps/web/ce/components/epics/epic-modal/modal.tsx
  • apps/web/ce/components/estimates/inputs/time-input.tsx
  • apps/web/ce/components/estimates/points/delete.tsx
  • apps/web/ce/components/estimates/update/modal.tsx
  • apps/web/ce/components/gantt-chart/blocks/blocks-list.tsx
  • apps/web/ce/components/gantt-chart/dependency/blockDraggables/left-draggable.tsx
  • apps/web/ce/components/gantt-chart/dependency/blockDraggables/right-draggable.tsx
  • apps/web/ce/components/gantt-chart/dependency/dependency-paths.tsx
  • apps/web/ce/components/inbox/source-pill.tsx
  • apps/web/ce/components/issues/filters/issue-types.tsx
  • apps/web/ce/components/issues/filters/team-project.tsx
  • apps/web/ce/components/issues/issue-detail-widgets/action-buttons.tsx
  • apps/web/ce/components/issues/issue-detail-widgets/collapsibles.tsx
  • apps/web/ce/components/issues/issue-detail-widgets/modals.tsx
  • apps/web/ce/components/issues/issue-details/additional-activity-root.tsx
  • apps/web/ce/components/issues/issue-details/additional-properties.tsx
  • apps/web/ce/components/issues/issue-details/issue-creator.tsx
  • apps/web/ce/components/issues/issue-details/issue-properties-activity/root.tsx
  • apps/web/ce/components/issues/issue-details/issue-type-activity.tsx
  • apps/web/ce/components/issues/issue-details/parent-select-root.tsx
  • apps/web/ce/components/issues/issue-layouts/additional-properties.tsx
  • apps/web/ce/components/issues/issue-layouts/issue-stats.tsx
  • apps/web/ce/components/issues/issue-layouts/quick-action-dropdowns/duplicate-modal.tsx
  • apps/web/ce/components/issues/issue-modal/modal-additional-properties.tsx
  • apps/web/ce/components/issues/worklog/activity/filter-root.tsx
  • apps/web/ce/components/issues/worklog/activity/root.tsx
  • apps/web/ce/components/issues/worklog/activity/worklog-create-button.tsx
  • apps/web/ce/components/issues/worklog/property/root.tsx
  • apps/web/ce/components/onboarding/tour/root.tsx
  • apps/web/ce/components/pages/modals/modals.tsx
  • apps/web/ce/components/sidebar/project-navigation-root.tsx
  • apps/web/ce/components/views/helper.tsx
  • apps/web/ce/components/workspace-notifications/notification-card/root.tsx
  • apps/web/ce/components/workspace/sidebar/sidebar-item.tsx
  • apps/web/ce/components/workspace/upgrade-badge.tsx
  • apps/web/ce/hooks/use-debounced-duplicate-issues.tsx
  • apps/web/ce/hooks/use-issue-properties.tsx
  • apps/web/ce/store/issue/helpers/base-issue-store.ts
  • apps/web/ce/store/issue/helpers/base-issue.store.ts
  • apps/web/ce/store/timeline/base-timeline.store.ts
  • packages/editor/src/core/components/editors/editor-container.tsx
  • packages/editor/src/core/components/editors/link-view-container.tsx
  • packages/editor/src/core/components/menus/block-menu.tsx
  • packages/editor/src/core/components/menus/bubble-menu/color-selector.tsx
  • packages/editor/src/core/components/menus/bubble-menu/link-selector.tsx
  • packages/editor/src/core/components/menus/bubble-menu/node-selector.tsx
  • packages/editor/src/core/components/menus/bubble-menu/root.tsx
  • packages/editor/src/core/extensions/custom-image/components/block.tsx
  • packages/editor/src/core/hooks/use-collaborative-editor.ts
  • packages/editor/src/core/props.ts
  • packages/editor/src/core/types/config.ts
  • packages/propel/src/tab-navigation/tab-navigation-list.tsx
  • packages/ui/src/collapsible/collapsible-button.tsx
  • packages/ui/src/dropdown/common/options.tsx
  • packages/ui/src/dropdown/multi-select.tsx
  • packages/ui/src/dropdown/single-select.tsx
  • packages/ui/src/link/block.tsx
  • packages/ui/src/progress/radial-progress.tsx
  • packages/ui/src/scroll-area.tsx
  • packages/ui/src/tabs/tabs.tsx
  • packages/utils/src/url.ts
💤 Files with no reviewable changes (52)
  • apps/web/ce/components/command-palette/modals/work-item-level.tsx
  • packages/editor/src/core/components/menus/bubble-menu/link-selector.tsx
  • packages/ui/src/scroll-area.tsx
  • apps/web/ce/components/cycles/analytics-sidebar/root.tsx
  • apps/web/ce/components/estimates/points/delete.tsx
  • apps/web/ce/components/issues/issue-details/issue-creator.tsx
  • apps/web/ce/components/workspace/sidebar/sidebar-item.tsx
  • packages/ui/src/link/block.tsx
  • apps/web/app/(all)/[workspaceSlug]/(projects)/_sidebar.tsx
  • packages/ui/src/collapsible/collapsible-button.tsx
  • apps/web/ce/components/issues/issue-detail-widgets/modals.tsx
  • apps/web/ce/components/issues/filters/team-project.tsx
  • packages/ui/src/dropdown/multi-select.tsx
  • packages/propel/src/tab-navigation/tab-navigation-list.tsx
  • packages/ui/src/progress/radial-progress.tsx
  • packages/editor/src/core/components/menus/bubble-menu/node-selector.tsx
  • apps/web/ce/components/issues/issue-details/issue-type-activity.tsx
  • apps/web/app/(all)/[workspaceSlug]/(projects)/sidebar.tsx
  • apps/web/ce/components/onboarding/tour/root.tsx
  • apps/web/ce/components/sidebar/project-navigation-root.tsx
  • apps/web/ce/components/issues/worklog/activity/worklog-create-button.tsx
  • packages/editor/src/core/components/menus/bubble-menu/root.tsx
  • packages/editor/src/core/hooks/use-collaborative-editor.ts
  • apps/web/ce/components/issues/issue-details/additional-activity-root.tsx
  • apps/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/header.tsx
  • apps/web/ce/components/issues/issue-details/issue-properties-activity/root.tsx
  • apps/web/ce/components/gantt-chart/blocks/blocks-list.tsx
  • packages/ui/src/tabs/tabs.tsx
  • packages/editor/src/core/components/menus/bubble-menu/color-selector.tsx
  • packages/editor/src/core/components/editors/link-view-container.tsx
  • apps/web/ce/components/issues/worklog/activity/root.tsx
  • apps/web/ce/components/issues/worklog/activity/filter-root.tsx
  • apps/live/src/lib/pdf/styles.ts
  • apps/web/ce/components/workspace/upgrade-badge.tsx
  • packages/ui/src/dropdown/single-select.tsx
  • packages/editor/src/core/props.ts
  • packages/editor/src/core/types/config.ts
  • apps/web/ce/components/issues/worklog/property/root.tsx
  • apps/web/ce/components/cycles/additional-actions.tsx
  • apps/web/app/(all)/invitations/page.tsx
  • apps/web/ce/components/issues/filters/issue-types.tsx
  • apps/web/ce/components/de-dupe/duplicate-popover/root.tsx
  • apps/web/ce/components/workspace-notifications/notification-card/root.tsx
  • apps/web/ce/components/automations/root.tsx
  • apps/web/ce/components/issues/issue-modal/modal-additional-properties.tsx
  • apps/web/ce/components/issues/issue-details/additional-properties.tsx
  • apps/web/ce/components/estimates/inputs/time-input.tsx
  • packages/ui/src/dropdown/common/options.tsx
  • apps/web/ce/components/estimates/update/modal.tsx
  • apps/web/ce/components/issues/issue-detail-widgets/action-buttons.tsx
  • apps/web/ce/components/issues/issue-layouts/quick-action-dropdowns/duplicate-modal.tsx
  • apps/web/ce/components/issues/issue-detail-widgets/collapsibles.tsx

Comment on lines +17 to 18
export function DeDupeButtonRoot(_props: TDeDupeButtonRoot) {
return <></>;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

FILE='apps/web/ce/components/de-dupe/de-dupe-button.tsx'

echo "Relevant snippet:"
sed -n '7,19p' "$FILE"

echo
echo "React namespace usages in this file (expected: no matches):"
rg -n '\bReact\.' "$FILE" || true

Repository: makeplane/plane

Length of output: 400


Remove the unused React default import.

The component no longer uses the React namespace, and this file uses the modern JSX transform. The unused import on line 7 should be removed.

♻️ Proposed fix
-import React from "react";
 // local components
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/web/ce/components/de-dupe/de-dupe-button.tsx` around lines 17 - 18,
Remove the unused default React import from this module: the component
DeDupeButtonRoot no longer references the React namespace (modern JSX transform
is used), so delete the React import statement and keep any existing named
imports if present to eliminate the unused import warning and clean up the file.

Comment on lines +50 to 52
} catch (_error) {
console.error("something went wrong while fetching the issue");
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Keep the caught error available for logging/reporting.

These renames make both failure paths intentionally discard the exception object, so parent-link failures now only surface a generic message/toast with no stack or error details. Keep the binding typed as unknown and include it in the log/report before showing generic UI feedback.

🛠️ Suggested cleanup
-    } catch (_error) {
-      console.error("something went wrong while fetching the issue");
+    } catch (error: unknown) {
+      console.error("something went wrong while updating the parent issue", error);
     }
@@
-    } catch (_error) {
+    } catch (error: unknown) {
+      console.error("something went wrong while removing the sub-issue", error);
       setToast({
         type: TOAST_TYPE.ERROR,
         title: t("common.error.label"),
         message: t("common.something_went_wrong"),
       });
     }

As per coding guidelines, "Use try-catch with proper error types and log errors appropriately for error handling".

Also applies to: 66-72

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/web/ce/components/issues/issue-details/parent-select-root.tsx` around
lines 50 - 52, The catch blocks in parent-select-root.tsx currently discard the
caught exception by using _error; change the catch bindings to a typed variable
(e.g., error: unknown) and include that variable in your logging/reporting
before showing the generic UI toast. Specifically, replace "catch (_error)" with
"catch (error: unknown)" and update the console.error call to include the error
(and call any existing error-reporting helper like reportError or
processLogger.error with the error) so the stack/message is preserved; apply the
same change to the other catch block handling parent-link failures.

- Use destructuring alias for activeCycleResolvedPath
- Format propel tab-navigation file
Reorder Tailwind classes to match oxfmt canonical ordering.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant