Skip to content

Unify page chrome, paginate MCP selectors, and sandbox New Chat - #598

Open
govindavashishtha wants to merge 3 commits into
mainfrom
chore/gv/unified-header-mcp-scroll
Open

Unify page chrome, paginate MCP selectors, and sandbox New Chat#598
govindavashishtha wants to merge 3 commits into
mainfrom
chore/gv/unified-header-mcp-scroll

Conversation

@govindavashishtha

@govindavashishtha govindavashishtha commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

#598

Summary

  • Share a single PageHeader across chat and list chrome so title size/height stay consistent; drop decorative title icons and the Settings back button
  • MCP selectors (composer + agent config) infinite-scroll through listMcp pages via DraftCatalogProvider
  • New Chat enables sandbox on the live draft agent config when capabilities report sandbox as available; bump @truefoundry/assistant-ui-runtime to 0.1.27

Test plan

  • Confirm chat, sessions, schedules, agents library, and settings headers share consistent title sizing/height
  • Open MCP selector in composer and agent config; scroll to load additional listMcp pages
  • Start New Chat when sandbox capability is available and verify sandbox is enabled on the draft agent
  • Start New Chat when sandbox is unavailable and verify sandbox stays off
  • Run pnpm --filter @truefoundry/trueforge-ui test for touched atom/provider/adapter tests

Made with Cursor

Share PageHeader across chat/list surfaces, infinite-scroll MCP catalogs, and enable sandbox on New Chat when capabilities allow.

Co-authored-by: Cursor <cursoragent@cursor.com>
@changeset-bot

changeset-bot Bot commented Sep 4, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 9c57024

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@truefoundry/trueforge-ui Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Comment thread packages/trueforge-ui/src/atoms/draft/DraftSpecPreferenceBridge.tsx
Comment thread packages/trueforge-ui/src/atoms/draft/AgentMcpEditorContent.tsx
Comment thread packages/trueforge-ui/src/atoms/lib/useInfiniteScrollSentinel.ts Outdated
Comment thread packages/trueforge-ui/src/containers/SettingsBuilder/index.tsx Outdated
Comment thread packages/trueforge-ui/src/atoms/PageHeader.tsx Outdated
- Introduced a new AgentConfigInstructionsContext to manage agent configuration instructions, allowing for draft saving and flushing.
- Updated SaveAgentButton to utilize the new context for handling instructions.
- Enhanced AgentConfigPanel and related components to improve layout and visibility in full-width builder modes.
- Made mobile configuration overlays closable and preserved widget states across chat runtime changes.
- Adjusted TypeScript configurations to include custom conditions for development.

These changes collectively enhance the user experience and maintain consistency across the TrueForge UI.
Comment thread packages/trueforge-ui/src/atoms/draft/DraftCatalogProvider.tsx
Keep off-page MCP mounts across paginated catalogs, restore Settings back control, and let PageHeader grow when actions wrap.

Co-authored-by: Cursor <cursoragent@cursor.com>
@govindavashishtha

Copy link
Copy Markdown
Contributor Author

Addressed Cursor Bugbot review comments:

  1. Pagination prunes selected MCP mounts — skip MCP pruning while connectorsHasMore
  2. Off-page MCP selection cannot activate — resolve selection via connectorsWithSelectedStubs in AgentConfigEditors
  3. Short lists stop infinite MCP scroll — re-observe sentinel when hasMore/loading change
  4. Settings lost its mobile close control — restore Back button on Settings PageHeader
  5. Fixed header clips wrapped page actionsPageHeader uses min-h-14 so wrapped end actions can grow the bar

@cursor cursor 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.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 9c57024. Configure here.

);
observer.observe(sentinelEl);
return () => observer.disconnect();
}, [enabled, hasMore, loading, listEl, sentinelEl, rootMargin]);

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Failed MCP pages retry forever

Medium Severity

Re-creating the observer whenever loading settles immediately recalls onLoadMore if the sentinel is still visible. A failed loadMoreConnectors leaves connectorsHasMore true, so a short or filtered list retries the same listMcp page in a tight loop with no backoff.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 9c57024. Configure here.

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.

2 participants