GitLab integration stuck after disconnect — team connection record not cleared (200 OK, still shows "Manage")

Where does the bug appear (feature/product)?

Cloud Agents & Automations (/agents, scheduled/event)

(Also affects BugBot repository selection, since both read the same

GitLab repository list.)

Describe the Bug

The team-level GitLab connection cannot be removed. Clicking

Dashboard > Integrations > GitLab > Manage > Disconnect Account returns

HTTP 200 OK, but the connection record is never actually cleared: after a

hard refresh the GitLab row still shows “Manage” instead of “Connect”, and

the repository list still returns ~70 repositories.

Only one repository should be listed: aisdlc99/ai-sdlc-template. The extra

repos come from two other personal GitLab accounts (mmushfiq,

mushfiqcar654) that were connected earlier. Cursor has been revoked in

both of those GitLab accounts, and every member of the team has

disconnected GitLab, yet the repos persist.

The dashboard correctly reports “Connected as aisdlc99” after reconnecting,

so the OAuth identity is right — but the repository list served by the

backend still contains the old accounts’ projects.

This looks like the same class of issue as forum thread 154359 ("GitHub

Integration Missing Organization / Stuck Cache (Manual Flush Required)"),

where staff confirmed the Disconnect button does not fully clear the

connection cache on the backend.

Team: TAET-Coe (team ID: 28729405)

GitLab: gitlab.com (not self-hosted)

My role: team admin

Steps to Reproduce

1. As team admin on team TAET-Coe, open /dashboard/integrations

2. Click GitLab > Manage > Disconnect Account.

POST /api/dashboard/disconnect-github returns 200 OK

(note: the GitLab disconnect calls the GitHub-named endpoint)

3. Hard refresh the page (Cmd+Shift+R). The GitLab row still shows “Manage”,

not “Connect”

4. Also run fetch(‘/api/dashboard/disconnect-github’, {method:‘POST’}) in the

browser console, per the workaround in forum thread 160868. Refresh again —

still “Manage”

5. In GitLab, revoke the Cursor application under User Settings > Applications

for all three accounts: aisdlc99, mmushfiq, mushfiqcar654

6. Have all other TAET-Coe members disconnect GitLab from the dashboard as well

7. Open an incognito window, sign in to GitLab as aisdlc99 only, then connect

GitLab from the Cursor dashboard on team TAET-Coe

8. Click Manage > Sync Repos and wait

9. Observe: the dashboard says “Connected as aisdlc99”, but the repository

list still contains ~70 repos from mmushfiq and mushfiqcar654

Expected Behavior

Disconnect Account should actually delete the team’s GitLab connection

record, so the row returns to “Connect” (as it correctly does on my other

team, ABB) and the repository list is emptied.

After reconnecting as aisdlc99 only, the repository list should contain

just the repositories that account can access — a single repo,

aisdlc99/ai-sdlc-template.

Screenshots / Screen Recordings

Attached: Integrations & MCP page on team TAET-Coe, showing GitLab with a

“Manage” button after a completed disconnect, while team ABB shows

“Connect” for the same provider.

Operating System

MacOS

Version Information

Note: the bug is reproducible entirely in the web dashboard

(/dashboard/integrations) in Chrome and in incognito, and on two

separate macOS machines, so it is not tied to a specific IDE build or local

cache.

For AI issues: which model did you use?

N/A — not a model issue.

For AI issues: add Request ID with privacy disabled

N/A. The relevant request is

POST /api/dashboard/disconnect-github → 200 OK, sent from

Dashboard > Integrations > GitLab > Disconnect Account on team TAET-Coe.

Additional Information

GitLab side is verified clean. Signed in as aisdlc99,

gitlab.com/dashboard/projects lists only ai-sdlc-template under both

the Personal and Member tabs. aisdlc99 holds no membership in any project or

group owned by mmushfiq or mushfiqcar654, so the ~70 repos are not explained

by GitLab permissions.

For comparison, my other Cursor team (ABB) shows “Connect” for GitLab,

i.e. no connection record — which is the state TAET-Coe should be in after

the disconnect.

Request: please manually flush the stale GitLab connection/installation

records for team TAET-Coe so I can perform a clean re-authentication with

only the aisdlc99 account.

Does this stop you from using Cursor?

Sometimes - I can sometimes use Cursor

Hi there!

We detected that this may be a bug report, so we’ve moved your post to the Bug Reports category.

To help us investigate and fix this faster, could you edit your original post to include the details from the template below?

Bug Report Template - Click to expand

Where does the bug appear (feature/product)?

  • Editor, Tab & Chat (autocomplete, Composer, in-editor agent)
  • Terminal & commands
  • Models, pricing & API keys (availability, Auto/Max, BYOK/Bedrock)
  • MCP & tools
  • Cloud Agents & Automations (cursor.com/agents, scheduled/event)
  • BugBot & Code Review
  • Cursor CLI
  • Cursor Mobile
  • Remote (SSH / Dev Containers / WSL)
  • Account, billing & login
  • Something else…

Describe the Bug
A clear and concise description of what the bug is.


Steps to Reproduce
How can you reproduce this bug? We have a much better chance at fixing issues if we can reproduce them!


Expected Behavior
What is meant to happen here that isn’t working correctly?


Screenshots / Screen Recordings
If applicable, attach images or videos (.jpg, .png, .gif, .mp4, .mov)


Operating System

  • Windows 10/11
  • MacOS
  • Linux

Version Information

  • For Cursor IDE: Menu → About Cursor → Copy
  • For Cursor CLI: Run agent about in your terminal
IDE:
Version: 2.xx.x
VSCode Version: 1.105.1
Commit: ......

CLI:
CLI Version 2026.01.17-d239e66

For AI issues: which model did you use?
Model name (e.g., Sonnet 4, Tab…)


For AI issues: add Request ID with privacy disabled
Request ID: f9a7046a-279b-47e5-ab48-6e8dc12daba1
For Background Agent issues, also post the ID: bc-…


Additional Information
Add any other context about the problem here.


Does this stop you from using Cursor?

  • Yes - Cursor is unusable
  • Sometimes - I can sometimes use Cursor
  • No - Cursor works, but with this issue

The more details you provide, the easier it is for us to reproduce and fix the issue. Thanks!

Updated post according to bug report template

Hey @Mushviq_Mammadov

You’re right that this is on our side, not anything you misconfigured. For an admin who manages more than one team, GitLab Disconnect isn’t fully clearing the connection records for the specific team you’re on, which is why TAET-CoE stays on “Manage” with the old repo list while your other team (ABB) shows “Connect”. None of the steps you tried could have changed that, so it’s not on you.

We’ve let the team know and this is an issue we’re tracking. There isn’t a reliable way to clear the stuck state from the dashboard side today, so the best path for your specific account is to email us at [email protected] (feel free to link this thread) and we’ll help you from there.

I’ll also post back here if there’s an update on the underlying fix.

Thanks, I will send an email