refactor(web): the archived threads settings page lives in its own file#22666

merged1
main
refactor/settings-split-archived
opened3d agobyJJulius Marminge
View on GitHubTwo-way sync enabledPR last imported 3d ago

SettingsPanels.tsx was 3,619 lines and held four unrelated settings pages. This layer moves ArchivedThreadsPanel into ArchivedThreadsPanel.tsx and points the route at the new file. Nothing else changes.

FileBeforeAfter
SettingsPanels.tsx36193339
ArchivedThreadsPanel.tsx-287

Renders: pure move, no render change.

Tests run: tsc-rs --noEmit for apps/web, vp lint on changed files, vp test run src/reactCompilerCoverage.test.ts -t settings/ (0 bailouts), SettingsPanels.logic.test.ts, ConnectionsSettings.logic.test.ts.

🤖 Generated with Claude Code

Checks

All checks passed

Added 1 commit

  • refactor(web): the archived threads settings page lives in its own file1e2c33f
Synced from GitHub

Approvability

Verdict: Approved at 1e2c33f

Macroscope's review found this PR approvable — This is a mechanical extraction of the existing archived-threads settings component into its own file, with the route updated to import it from the new location. The rendered behavior and existing settings paths remain unchanged.

You can add or adjust custom eligibility rules. Learn more.

Synced from GitHub

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Path: .coderabbit.config.ts
  • Review profile: CHILL
  • Plan: Team
  • Run ID: 0af24962-cfb9-4da0-b6b7-fef2847abdb1
📥 Commits

Reviewing files that changed from the base of the PR and between 6a6c84f9906cbdfa7f533fecfc39ce18c2f4c273 and 1e2c33f055c612c9f46f43847a66196ae7c35778.

📒 Files selected for processing: 3
  • apps/web/src/components/settings/ArchivedThreadsPanel.tsx
  • apps/web/src/components/settings/SettingsPanels.tsx
  • apps/web/src/routes/settings.archived.tsx

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review.

📝 Walkthrough

The archived threads panel moved from SettingsPanels.tsx into ArchivedThreadsPanel.tsx. The archived settings route now imports the new component. The panel prepares and displays archived threads and provides unarchive and delete actions.

Changes: Archived Threads Panel

Layer / File(s)Summary
Prepare archived thread data
apps/web/src/components/settings/ArchivedThreadsPanel.tsx
The component filters archived snapshots by selected projects, groups threads by project, adds environment labels, and sorts threads by archive or creation time.
Render archive states and actions
apps/web/src/components/settings/ArchivedThreadsPanel.tsx
The component renders loading, error, empty, and grouped archive states. Unarchive and delete actions refresh the list after success. Non-interrupted failures produce error toasts.
Wire the extracted component into settings
apps/web/src/components/settings/SettingsPanels.tsx, apps/web/src/routes/settings.archived.tsx
The archived route imports the component from its new module. The former implementation and its archive-specific imports are removed from SettingsPanels.tsx.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Refactor

Suggested reviewers: t3dotgg

Merge Risk: ⚪ Minimal · up to 1e2c3

This is a file-move refactor with no intended behavior change, and no merge-blocking risk was found.

Pre-merge checks: Passed 3 · Failed 1

Failed Failed checks: 1 warning

Check nameStatusExplanationResolution
Description checkWarningThe description explains the change and lists verification, but it omits the required Problem, Change, and Scope and approval sections. It also provides no issue or maintainer approval link or rationa…Add the required section headings. Describe the problem and expected outcome, explain the change, and provide the triaged issue or explicit maintainer approval. If no approval is needed, explain why this focused refactor qualifies for an ex…
Passed Passed checks: 3 passed
Check nameStatusExplanation
Title checkPassedThe title clearly describes the primary change: moving the archived threads settings page into its own file.
Linked Issues checkPassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes checkPassedCheck skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description explains the change and lists verification, but it omits the required Problem, Change, and Scope and approval sections. It also provides no issue or maintainer approval link or rationale for an approval exemption.

Resolution

Add the required section headings. Describe the problem and expected outcome, explain the change, and provide the triaged issue or explicit maintainer approval. If no approval is needed, explain why this focused refactor qualifies for an exemption.

✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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