Db2 for i / IBM i activity bar icons missing when ghost chat tab is restored on window reload

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Db2 for i / IBM i activity bar icons missing when ghost chat tab is restored on window reload

  • The closed chat tab reappears as a ghost tab after reload
  • While the ghost tab is open, the Db2 for i activity bar icon does not render
  • Closing the ghost tab causes the Db2 for i icon to immediately reappear
    Notes:
  • This is fully deterministic and reproducible on every reload
  • The icon suppression is directly tied to the ghost tab’s presence — closing it is an instant fix
  • Hardware rules out any timing/performance factor (M5, subsecond extension load)

Steps to Reproduce

  1. Open a multi-root workspace with Code for IBM i and Db2 for i installed
  2. Open a chat tab and then close it
  3. Run Developer: Reload Window (Cmd+Shift+P → “Developer: Reload Window”)
  4. Observe that the previously-closed chat tab has been restored as a ghost tab in the tab bar
  5. Observe that the Db2 for i icon is missing from the activity bar

Expected Behavior

  • Closed chat tabs are not restored on window reload
  • Db2 for i and IBM i icons appear in the activity bar after reload

Operating System

MacOS

Version Information

Version: 3.7.27 (Universal)
VS Code Extension API: 1.105.1
Commit: e48ee6102a199492b0c9964699bf011886708ba0
Date: 2026-06-10T01:46:16.942Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
xterm.js: 6.1.0-beta.256
OS: Darwin arm64 25.5.0

Additional Information

  • This is fully deterministic and reproducible on every reload
  • The icon suppression is directly tied to the ghost tab’s presence — closing it is an instant fix
  • Hardware rules out any timing/performance factor (M5, subsecond extension load)

Does this stop you from using Cursor

No - Cursor works, but with this issue

Also noticed two related issues: the Outline panel in the secondary sidebar has no X button to close individual panels, and the outline.sortOrder setting has no effect on the secondary sidebar’s Outline view. Closing the sidebar entirely with Cmd+Option+B is the only workaround. These all seem related to instability in the secondary sidebar state."

Also noticed, if I close the Agent tab, the entire sidebar closes even though the outline was along side it. the side bar should have stayed open, I have to click the plus side to get a new agent for the outline to be accessible

This is a known issue we’re tracking: a restored chat tab suppressing the Db2 for i / IBM i activity-bar icon, with the icon returning the moment you close that tab.

A couple of things to try in the meantime:

  • Immediate workaround: closing the restored chat tab brings the icon back right away, as you found. Running Developer: Reload Window after closing it — or reopening the folder in a new window - also forces the activity-bar icons to re-register.
  • Update to the latest version: you’re on 3.7.27, and we’ve shipped fixes to the underlying startup behavior (where a restored tab can leave extension icons and panels blank) in more recent builds. Could you update and let me know whether it still happens?

If it still reproduces after updating, two things would help us pin it down for the team:

  1. A short screen recording of the sequence (ghost tab appearing → icon missing → closing the tab → icon returning).
  2. Anything that shows up in Help → Toggle Developer Tools → Console while you reproduce it.

On your follow-ups - the Outline panel missing a close button, outline.sortOrder not applying in the secondary sidebar, and the sidebar collapsing when you close the Agent tab - those are in the same secondary-sidebar / chat-tab layout area, and I’ve noted them alongside this report.

Thanks again for the clear write-up.

I think I may have uncovered something that might make it easier to track down this issue. I recently had the luxury of having a brand new team account. So I now have two instances of cursor running. Two different clients with two logins. Hence, I got to setup the new client basically from scratch.

After the initial step of creating the server connection to the IBM i, right off the bat, the DB2 for I icon is missing from the panel. I have to use the command palette to open it using, DB2 for I: Focus on Schema Browser View. Even after you open it, it still will not appear in the list (image: c-1). So the ghost tab issue isn’t even in the mix yet.

Without using the command palette to open it if I do it this way (the documented issue).

If I close any open items in the right side panel (agent, etc) with the exception of the outline because there is no “x” to close it. Then close the right side panel, Then re-open the right side panel, the DB2 for i icon appears. I cannot say, however, that this is 100% consistent. I have a feeling it doesn’t always work.

See images c-1,c-2,c-3. that was the sequence I just did. (Closing the right side panel there is no image for.)

Hope this helps.

Mike Mayer

This is really helpful. Seeing the Db2 for i icon missing right after you create the IBM i connection on a fresh client points to the activity-bar icon not registering when the extension’s views finish loading a moment after startup, separate from the restored chat-tab behavior. Nice job isolating the two.

It also lines up with why opening the view from the Command Palette (Db2 for i: Focus on Schema Browser View) doesn’t bring the icon back by itself - the view opens, but the activity-bar icon isn’t redrawn until something forces the sidebar to refresh, which is what your close-panels → reopen step does.

For now, the toggle you found (close the right-side panels, collapse the sidebar, then reopen it) is the most reliable way to get the icon back. Reloading the window once the connection is set up can also help it stick.

I’ve added this fresh-client repro to the report - reproducing it with no chat tab, right after creating the connection, is a strong signal for the team to narrow it down.