Skip to content

fix(remote): sync mobile workspace sidebar and clarify connection copy - #2939

Merged
bobleer merged 2 commits into
GCWing:mainfrom
bobleer:bob/update-remote-connect-copy
Sep 10, 2026
Merged

bobleer merged 2 commits into
GCWing:mainfrom
bobleer:bob/update-remote-connect-copy

Conversation

@bobleer

@bobleer bobleer commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

Mobile web could label an assistant workspace as workspace and keep showing workspaces that had been closed in Desktop. Its sidebar combined recent history, the current workspace, and session paths instead of using Desktop's opened-workspace list.

Use an additive opened_workspaces response field to expose the authoritative list with assistant identity names and SSH identity metadata. Refresh the sidebar during polling and on return to the page; a successful empty list stays empty, while failed refreshes retain cached data. Older hosts retain an explicitly labeled recent-history fallback and resolve assistant names through the existing command.

Also update Remote Connect descriptions and the disclaimer in English, Simplified Chinese, and Traditional Chinese to describe GitHub account device control, task submission, invitation links, and the current relay behavior.

Type and Areas

Type: Bug fix; UI copy correction.

Areas: Core workspace projection, runtime ports, Remote Connect response contract, mobile web, desktop Web UI locales.

Motivation / Impact

The mobile workspace sidebar follows the host's opened list without resurrecting closed entries from historical sessions. Assistant workspaces display their identity names. Recent history remains available to existing clients and workspace pickers, and closing a workspace does not delete its sessions.

Verification

Passed:

  • cargo test --locked -p openbitfun-core --no-default-features --features remote-connect --lib remote_workspace_catalog_tracks_opened_rows_and_assistant_identity
  • cargo test --locked -p openbitfun-services-integrations --no-default-features --features remote-connect --lib remote_workspace_
  • pnpm --dir src/mobile-web run test:workspace-identity
  • pnpm --dir src/mobile-web run test:account-login
  • pnpm --dir src/mobile-web run test:ui-components
  • pnpm --dir src/mobile-web run type-check
  • pnpm run build:mobile-web
  • pnpm run check:web
  • pnpm run i18n:audit
  • pnpm run fmt:rs and git diff --check

Chrome exercised the actual mobile sidebar and session manager against simulated host responses at 320, 390, 600, 768, and 1280 px: expansion, keyboard focus, ten-second close/name refresh, empty catalogs with retained historical sessions, failed refreshes, and legacy-host fallback. Tests cover SSH host identity separation and device-generation fencing. No live SSH workspace, Peer Device Mode, or Detached Dispatch validation was performed.

The mobile build from 6aceceb57 was deployed to the official mobile entry. All ten publicly served files matched the release hashes; a fresh browser loaded the new bundle and rendered the login page without page errors. Authenticated workspace behavior was verified locally with the simulated transport above.

Reviewer Notes

opened_workspaces is optional and omitted by legacy providers; its presence, including an empty array, advertises support. The original workspaces field retains its recent-history meaning. Wire tests cover legacy payload round trips and explicit empty catalogs. No existing persisted data is reset or removed.

This fix needs both the host change and the new mobile bundle. Restarting desktop:dev updates local assets; official mobile assets require a separate deployment. The Relay service binary does not need a change for this optional device-response field.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

@bobleer
bobleer merged commit 448a7b0 into GCWing:main Sep 10, 2026
13 checks passed
@bobleer
bobleer deleted the bob/update-remote-connect-copy branch September 24, 2026 08:19
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