Skip to content

Hide current iOS Agent GUI - #10062

Merged
azooz2003-bit merged 2 commits into
feat-agent-gui-v3from
feat-hide-current-agent-gui
Aug 13, 2026
Merged

azooz2003-bit merged 2 commits into
feat-agent-gui-v3from
feat-hide-current-agent-gui

Conversation

@azooz2003-bit

@azooz2003-bit azooz2003-bit commented Aug 13, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Keep the Agent GUI implementation compiled and testable.
  • Disable its current iOS product exposure through one hard-false availability boundary.
  • Hide the live transcript, toolbar toggle, transcript demo route, and transcript density setting.
  • Add unit and UI behavior coverage for the hidden state.

This PR is intentionally stacked on #8665 because that branch contains the Agent GUI implementation.

Testing

  • swift test --package-path Packages/iOS/CmuxMobileShell --filter AgentGUIAvailabilityTests (7 passed)
  • git diff --check
  • Tagged iOS build and focused hosted UI test pending.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


Summary by cubic

Hides the current iOS Agent GUI behind a hard‑false product boundary and removes the portal view‑hierarchy mutation tracker to avoid a launch crash while keeping split‑divider hit‑testing reliable. Previously debug/settings surfaces could surface the Agent UI and portal caches used swizzled mutation tracking; now availability resolves to nil and cache invalidation uses root subview identity plus targeted subview observation.

  • Adds AgentGUIAvailability.isUserInterfaceExposed = false and deriveForUserInterface(...); WorkspaceDetailView now uses the gated resolver. Gates the transcript demo preview route, toolbar toggle, Developer > Transcript Demo, and hides the Transcript Density picker in Settings; root view gating updated to require availability.
  • Adds unit and UI tests asserting all Agent GUI entry points remain unavailable.
  • Removes the portal mutation tracker and related tests; PortalSplitDividerCacheInvalidator drops AppKit swizzling, observes frame/bounds/hidden and subview changes on targeted views; BrowserWindowPortal/TerminalWindowPortal validate caches using root subview identity. Project references cleaned up.
  • No migration actions required.

Written for commit 7cf71e7. Summary will update on new commits.

Review in cubic

@coderabbitai

coderabbitai Bot commented Aug 13, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 64e7e78b-0658-4004-831d-90b54865db01

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

* Revert "Fix portal mutation tracker launch crash (#10008)"

This reverts commit a161d16.

* Revert "Portal: invalidate the split-divider hit-test cache on nested subview insertion (#8580)"

This reverts commit bcfb2d7.
@azooz2003-bit
azooz2003-bit merged commit 033f668 into feat-agent-gui-v3 Aug 13, 2026
6 checks passed
@azooz2003-bit
azooz2003-bit deleted the feat-hide-current-agent-gui branch August 13, 2026 04:43
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