fix(plugins): simplify connection status before sign-in

Merged
WE
1d ago
+172-65

Description

Show one Needs sign-in indicator and tooltip until a member connects a plugin. After connection, show the existing Main Chat, custom agents, and Craft status breakdown. Checking and unavailable connections also use one status. Admin availability indicators stay unchanged.

Remove the generic readiness sentence from plugin previews. Connected MCP, OpenAPI, and Craft App previews all use Ready to use as the title and the same account text. Personal credentials and OAuth pass-through show Uses your connected account. Workspace credentials show Workspace connection. No-auth plugins show No authentication required. Update all locales and the feature map.

How Has This Been Tested?

  • cd web && bun run test --runInBand src/sections/plugins/MemberPluginsPage.test.tsx src/sections/plugins/MemberPluginDetailModal.test.tsx src/i18n/__tests__/catalog.test.ts — 102 tests passed.
  • Reran MemberPluginsPage.test.tsx after adding connection-transition assertions — 37 tests passed. Coverage checks the single sign-in indicator for MCP OAuth, MCP credentials, OpenAPI, and Craft Apps, plus the restored surface breakdown after authentication.
  • After unifying connected titles and account copy, reran all three suites above — 110 tests passed, including title and subtext coverage across all plugin kinds and ownership modes.
  • Changed-file pre-commit checks passed, including TypeScript type checking and coverage, oxlint, oxfmt, translation parity, and feature-map integrity.
  • python3 tools/i18n/check_copy_changes.py --base origin/main and git diff --check passed.

Additional Options

  • [Optional] Please cherry-pick this PR to the latest release version.

Summary by cubic

Simplifies plugin connection status so plugins that need sign-in show a single Needs sign-in indicator instead of a premature surface breakdown. Connected plugins keep the existing Main Chat, Custom agents, and Craft status details; checking and unavailable connections also use one status, while admin availability indicators stay unchanged.

  • Removes the generic readiness sentence from connected previews; connected MCP, OpenAPI, and Craft App cards now show "Ready to use" with one ownership line: "Uses your connected account", "Workspace connection", or "No authentication required".
  • Replaces the unused readyDescription translation with noAuthentication in all locales and updates the feature map to match the simplified pre-connection status.

Summary by CodeRabbit

  • Improvements
    • Plugin cards now show a single status indicator until connected.
    • Connected plugins display availability details for each supported surface.
    • Connected integrations consistently show “Ready to use” with clearer ownership information.
    • Sign-in-required states now provide clearer indicators and tooltips.
    • Unsupported surfaces are clearly labeled as unavailable.
    • Plugins that do not require authentication are labeled accordingly.
  • Localization
    • Updated plugin connection and authentication messaging across supported languages.