Skip to content

Bad integration credential still blocks Launchpad data in Home view and MCP #5062

@nikolay-1986

Description

@nikolay-1986

Description

This is a follow-up to #4492, which fixed partial success handling for the Launchpad quickpick and the sidebar Launchpad view. The same root cause — a bad/expired credential on one integration blocking results from other integrations — still affects:

  1. Launchpad section in the Home view
  2. MCP tool responses (pull request data returned via MCP)

Steps to Reproduce

  1. Connect two integrations, e.g., GitHub + GitLab
  2. Confirm both work: PRs are visible in the Home view Launchpad section and via MCP
  3. Revoke/invalidate the GitLab OAuth token (or wait ~30 min for Azure token expiry)
  4. Observe the Launchpad quickpick or sidebar Launchpad view → GitHub PRs are shown correctly (fix from Bad credential of one integration ruins other integrations on Launchpad #4492 works ✅)
  5. Observe the Home view Launchpad section → shows "No pull requests need your attention ( other pull requests)", GitHub PRs not shown
  6. Call MCP tool to get pull request / Launchpad data → returns error instead of partial GitHub results ❌

Expected Behavior

Same as the fix applied in #4492: when one integration fails, results from working integrations are still returned, and the error is surfaced as a secondary indicator rather than replacing all data.

Actual Behavior

  • Home view shows "No pull requests need your attention ( other pull requests)" with no PR data
  • MCP returns an error response with no pull request data

Root Cause

The fix in #4492 was applied to the Launchpad quickpick and sidebar view code paths. However, the Home view uses a separate utility function getLaunchpadSummary() (src/plus/launchpad/utils/-webview/launchpad.utils.ts) that does not handle partial success:

// Current behavior — discards items when error is present
export async function getLaunchpadSummary(...): Promise<LaunchpadSummaryResult | { error: Error }> {
    const result = await container.launchpad.getCategorizedItems();

    if (result.error != null) {
        return { error: result.error };  // ← items discarded even if result.items is non-empty
    }
    ...
}

GitLens Version

2026.3.1805

VS Code Version

Version: 1.112.0 (user setup)
Commit: 07ff9d6178ede9a1bd12ad3399074d726ebe6e43
Date: 2026-03-17T18:09:23Z
Electron: 39.8.0
ElectronBuildId: 13470701
Chromium: 142.0.7444.265
Node.js: 22.22.0
V8: 14.2.231.22-electron.0
OS: Windows_NT x64 10.0.26200

Git Version

git version 2.53.0.windows.2

Logs, Screenshots, Screen Captures, etc

Image

Metadata

Metadata

Assignees

Labels

area-homeIssues or features related to Homearea-launchpadIssues or features related to Launchpadverified ✔Verified

Type

No fields configured for Bug.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions