Skip to content

feat(app): Library (né Extensions) — state tabs + the MCPs filter stops hiding MCP-backed connections - #3434

Merged
benjaminshafii merged 1 commit into
devfrom
feat/library-state-tabs
Aug 2, 2026
Merged

feat(app): Library (né Extensions) — state tabs + the MCPs filter stops hiding MCP-backed connections#3434
benjaminshafii merged 1 commit into
devfrom
feat/library-state-tabs

Conversation

@benjaminshafii

Copy link
Copy Markdown
Member

What

Implements Paper frame 15 — Library (desktop) · State tabs (file "OpenWork Extensions — Latest", user-approved; companion discussion in frame 14, row standard from frame 13). U1 slice 1 of the Library ⇄ Extensions unification.

  1. Rename: Extensions → Library in every user-facing string (title, nav, subtitle → "Skills, connections, and tools your agent can use."), across all 10 locales. Route slugs stay extensions for deep-link compatibility. Orphaned legacy Marketplace strings left for the dead-code sweep.
  2. State tabs: All · Needs your sign-in (n) · Needs admin setup (n) above the search/kind row — sign-in is a to-do, tabs surface work. Zero-count tabs hide; All keeps today's grouped sections; a state tab renders one caption + a flat bucket list. Deep-linkable (#/settings/extensions/needs-sign-in); kind pills compose in-memory with the active state tab.
  3. The filter fix (the "I filter by MCPs and my MCP-backed connectors vanish" bug): taxonomy gains a transport facetmatchesExtensionFilter matches filter==="mcp" when transport==="mcp", so org connections backed by MCP (nativeProviderKey == null) now appear under MCPs; native ones (Google/Microsoft) correctly don't. Configured-servers section now respects filters instead of ignoring them.

Tests (commands + results)

apps/app: bun test --isolate tests/  → 586 pass / 2 fail
  — the 2 failures are PRE-EXISTING on origen/dev (verified: stashed the entire diff, pristine dev = 584 pass / same 2 fail in untouched message-list-loading.test.tsx; isolated run passes → suite-ordering flake)
targeted: extension-taxonomy + settings-route + renamed-string suites → 20/20 (executor + my rerun)
pnpm typecheck (apps/app) → clean
evals typecheck → clean; new spec skips cleanly without env

Proof honesty

Desktop e2e proof is nightly-gated: new evals/specs/library-state-tabs.slow.test.ts (OPENWORK_EVAL_APP_SPECS=1) asserts the Library title + state tabs and rolls a photo — it runs on the Daytona nightly, since hosts.desktop() local spawn is known-broken on this Mac (documented in prior PRs). No photo roll on this PR; unit + route + string coverage above is the local evidence, the design frames are the visual reference. Existing slow specs' "NEEDS YOUR SIGN-IN" assertions remain valid (All tab keeps group headers); three specs updated for renamed strings.

…needs-admin-setup, MCP transport facet in filters
@benjaminshafii
benjaminshafii enabled auto-merge (squash) August 2, 2026 17:14
@vercel

vercel Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openwork-app Ready Ready Preview Aug 2, 2026 5:16pm
openwork-den Ready Ready Preview Aug 2, 2026 5:16pm
openwork-den-worker-proxy Ready Ready Preview Aug 2, 2026 5:16pm
openwork-diagnostics Ready Ready Preview Aug 2, 2026 5:16pm
openwork-landing Ready Ready Preview, v0 Aug 2, 2026 5:16pm

@diff-warden diff-warden Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warden security clearance: clear. No new security issues found in this diff (3105ace6429d1ec310036f33dbb42d1a038724dc). Automated clearance satisfies the required-review gate only — a human still reviews and merges. Analysis run

@benjaminshafii
benjaminshafii merged commit 8dd75ed into dev Aug 2, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant