Skip to content

[Bug]: project switcher in left sidebar disappear #12066

Closed

Description

@canxer314

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/desktop

Steps to reproduce

open the app

Expected behavior

see project switcher and switch project in left sidebar

Actual behavior

there's no project switcher in left sidebar any more! and even I choose another thread through command pannel, left sidebar's project didn't change

Impact

Blocks work completely

Version or commit

0.0.42

Environment

windows

Logs or stack traces

Screenshots, recordings, or supporting files

微信图片_2026-09-16_175305_565.png

Workaround

No response

Activity

  1. added
    bugSomething is broken or behaving incorrectly.
    needs-triageIssue needs maintainer review and initial categorization.
    on Sep 16, 2026
  2. changed the title [-][Bug]:[/-] [+][Bug]: project switcher in left sidebar disappear[/+] on Sep 16, 2026
  3. juliusmarminge commented on Sep 16, 2026

    @juliusmarminge
    Member

    Triage

    Confirmed on current main (ccf220be2) and on shipping 0.0.42. This is not a missing control and not a Windows desktop bug. Desktop embeds the same ThreadSidebar as web (AppSidebarLayout.tsx). The screenshot is the post-#11315 header, working as designed.

    The circled empty band is the second header row #11315 removed. The project switcher is still there: the folder icon immediately to the right of Search (folder-plus = new project, pen = new thread). Tooltip: “Filter threads by project”. While a project is scoped, that icon becomes the project favicon.

    Command Palette → another thread does not change the sidebar project. That is also designed. Scope is an independent persisted filter (sidebarProjectScopeKey), not “the project of the open thread.”

    What the code does

    Until 2026-09-12 the default sidebar spent two rows on this: Search + new thread, then a labeled All projects combobox + new project. #11315 (d1d15c67f, in 0.0.42) folded scope into the search row on purpose:

    Search now owns a single row. The project scope collapses to an icon (folder, or the project favicon while scoped) grouped with new project and new thread.

    SidebarThreadHeader still takes projectScope and renders it whenever hasProjects (projectGroups.length > 0). The reporter’s list is full of BulletproofVault rows, so that gate is true. The crop shows the folder icon. ComboboxTrigger is that 28px button; the popup anchors under the search field, same searchable list as before, All projects first.

    The crop shows FolderIcon, not a favicon, so scope is All projects. Thread rows then print the project name themselves. That is why every row says BulletproofVault and there is no project title in the gap under Search.

    setSidebarProjectScopeKey has three callers: the combobox, a stale-key reset after catalogs are ready, and the store. Command Palette never writes it. #9416 (fixes #9379) moved the key into the persisted UI store so Settings / reload would stop resetting scope. Following the open thread would undo that.

    The old “sidebar project follows the thread” tree is LegacySidebar, gated by legacySidebarEnabled (default false). Settings → General → Legacy features → Sidebar (legacy): “Restore per-project thread trees instead of the default flat sidebar.” Search “legacy sidebar” unfolds that section.

    Draft-hero’s underlined project name only retargets the open draft. It is not the sidebar filter.

    Related, not duplicates

    Issue / PR Why it does not close this
    Merged #11315 This is the change in the crop. Labeled All projects row → folder icon. Not a failed render.
    Merged #9416 / closed #9379 Persist scope across Settings/reload. Palette/thread navigation must not retarget it.
    Open #12059 Opt-in Show projects in sidebar (Appearance). Same ask: labeled projects above the list. Unmerged. Do not open a competing PR.
    Open #9614 Multi-select in the existing picker. Does not restore a row.
    Open #7955 Attention marks on switcher rows. Assumes the picker still exists.
    Merged #5931 Searchable combobox. Same popup, still behind the icon.

    No open issue is a duplicate of “the labeled row vanished.” No merged PR after #11315 puts that row back on by default.

    Suggested fix

    Do not treat this as a disappearance bugfix. Do not revert #11315 to “fix” one crop that still shows the icon.

    1. No code change for the report as filed. Point at the folder icon. Palette not retargeting scope is fix(web): keep the sidebar project filter across navigation #9416’s contract.
    2. If product wants a visible list again, that is already #12059 (opt-in, default off). Review that PR; do not file a second one. Do not make the list default without a product call — feat(sidebar): fold the project scope into the search row #11315 removed the row because it duplicated names the thread rows already show.
    3. Do not make Command Palette / thread route write sidebarProjectScopeKey. That reopens [Bug]: Thread filter reseting #9379.
    4. Do not default legacySidebarEnabled back on. That is the full per-project tree, not the labeled filter row.

    Workaround

    • Click the folder icon next to Search (hover: “Filter threads by project”). Pick a project or All projects.
    • Per-project trees: Settings search legacy sidebar, or Settings → General → Legacy features → Sidebar (legacy).
    • New thread in another project: New thread (pen) / Command Palette New thread in…. That does not change the filter; use the folder icon if the list should match.

    Classification: not-a-bug · working-as-designed (web/desktop default sidebar; #11315 compact picker is in the screenshot; palette does not retarget scope after #9416)
    Labels: remove bug, needs-triage; add question, via-triage (product input for #12059, not a regression)
    Discord tags: skip (not actionable as a bug)

  4. added
    questionFurther information is requested
    via-triageFiled through npx t3 triage
    and removed
    bugSomething is broken or behaving incorrectly.
    needs-triageIssue needs maintainer review and initial categorization.
    on Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requestedvia-triageFiled through npx t3 triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions