Skip to content

feat: add native MiniApp shells and refresh workspace overview - #3426

Merged
GCWing merged 6 commits into
mainfrom
gcwing/miniapp-native-shell
Oct 16, 2026
Merged

GCWing merged 6 commits into
mainfrom
gcwing/miniapp-native-shell

Conversation

@GCWing

@GCWing GCWing commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Summary

MiniApps can run in independent native windows and move back into OpenBitFun tabs while reusing one Desktop host for execution, storage, permissions, and instance ownership. Add a compact standalone Shell, authenticated local IPC, revisioned view leases and transfers, native system launchers, customizable chrome, and recoverable app chat.

Refresh the MiniApp library, submissions, detail pages, and personal overview; align account and model controls with shared components. Resolve existing Design Lab/mobile typography contract violations from main without changing their rendered values, and retain explicit local annotations for literal font-face descriptors and fluid specimen geometry. Preserve macOS HTML drag ownership alongside native file drops.

Type and Areas

Feature / UI/UX / compatibility. Desktop/Tauri, Rust contracts and services, private IPC adapter, Web UI, design system, build preparation, i18n, and vendored Wry.

Motivation / Impact

Installed apps can open as tabs or lightweight system apps without duplicating the Agent Runtime. Last-view shutdown, acknowledged transfers, backward-compatible records, capability discovery, and explicit unsupported responses protect existing installs and remote controllers.

The new internal IPC crate has only Desktop and Shell consumers. The Shell uses existing workspace dependencies and a separate optimized profile with a 16 MiB artifact budget; it cannot link Core or Agent Runtime. Target-specific Windows API features support native shortcut properties; property strings use COM-owned allocations with automatic cleanup. Native execution and mutable state retain their existing owners.

Verification

  • Web UI focused suite: 51 files / 415 tests passed (MiniApps, personal overview, account identity, conversation dock, model selectors, icons/startup).
  • Build/preparation/style scripts: 42 tests passed; the added Windows executable ICO resource regression also passed.
  • Core-boundary tests: 152 passed; boundary audit passed.
  • i18n contract tests and i18n audit passed.
  • pnpm run check:web, pnpm run check:repo-hygiene, pnpm run capabilities:check, i18n, icon, and color audits passed.
  • Focused design-system checks: 73 tests passed. Changed Web UI source files pass ESLint; Hook refresh/invalidation regression checks: 13 tests passed.
  • cargo test --locked -p openbitfun-product-domains --no-default-features --features miniapp --lib miniapp::: 60 passed; --test miniapp_contracts: 40 passed.
  • cargo test --locked -p openbitfun-miniapp-ipc: 4 passed.
  • cargo test --locked -p openbitfun-services-integrations --no-default-features --features miniapp-runtime --lib miniapp::: 31 passed.
  • cargo test --locked -p openbitfun-desktop --lib miniapp_desktop: 15 passed, one real-export fixture deferred to the separately built Shell; --lib remote_workspace_policy: 9 passed.
  • pnpm run prepare:miniapp-shell: macOS ARM64 Shell 7.67 MiB; native window chrome tests: 2 passed; headless diagnostic reports tauriDevMode: false and v1 capabilities.
  • The exact Windows property helper and its regression test passed a x86_64-pc-windows-gnu cross-target compile check; macOS launcher tests passed again. Windows runtime coverage remains with CI.
  • Capability projections regenerated; changed Rust files formatted. The real temporary macOS app export and headless diagnostics passed, as did the Desktop control-host MiniApp tests. cargo build --locked -p openbitfun-desktop passed on macOS ARM64; all 5 vendored Wry drag/pasteboard tests passed. MiniApp and remote-registry Desktop tests also passed again after merging current main. Cross-platform CI is being followed through before merge.

Reviewer Notes

AI-assisted; focused automated verification, with CI/native checks in progress. No browser or computer-use verification was performed, as requested.

Remote workspace, Peer Device Mode, mobile/bot control, and detached CLI presentation are explicitly unsupported for local independent windows; no remote end-to-end scenario has been exercised locally. Persisted v1 launch identities and unknown fields remain compatible. Arbitrary unsaved page state is not transferred.

Checklist

  • No secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification and remaining checks are recorded above.
  • User-facing strings, docs, and locales are updated where applicable.

GCWing added 6 commits October 16, 2026 17:01
…-shell

# Conflicts:
#	docs/interactive-capabilities/capabilities.json
#	docs/interactive-capabilities/technical/product-control-open-audit.json
#	docs/interactive-capabilities/technical/tauri-command-map.json
#	src/crates/contracts/product-domains/AGENTS.md
#	src/crates/contracts/product-domains/src/generated/product-control-catalog.json
#	src/crates/contracts/product-domains/src/generated/remote-surface-registry.json
#	src/web-ui/src/app/global-search/generated/interactive-capabilities.json
#	src/web-ui/src/infrastructure/api/generated/productControl.ts
#	src/web-ui/src/infrastructure/api/generated/remoteSurface.ts
@GCWing
GCWing merged commit f0e2586 into main Oct 16, 2026
13 of 14 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