Skip to content

feat(desktop): share Runtime Host sessions with guests - #4196

Merged
M4n5ter merged 1 commit into
feat/shared-session-observationfrom
feat/desktop-session-sharing
Aug 30, 2026
Merged

feat(desktop): share Runtime Host sessions with guests#4196
M4n5ter merged 1 commit into
feat/shared-session-observationfrom
feat/desktop-session-sharing

Conversation

@M4n5ter

@M4n5ter M4n5ter commented Aug 29, 2026

Copy link
Copy Markdown
Member
English

Summary

Add the first Desktop Owner / Guest sharing surface. An Owner can create an informed one-time invitation and revoke access; a Guest can import that invitation without an existing Host profile or Owner credential and receives an observation-only Desktop surface. Plaintext sharing requires explicit confirmation before the Guest credential is issued.

Refs #3843

Verification

  • npm run build:test
  • npm --workspace @maka/desktop run typecheck -- --pretty false
  • node --test apps/desktop/dist/main/__tests__/runtime-host-collaboration-ipc-main.test.js apps/desktop/dist/main/__tests__/runtime-host-desktop-candidate.test.js apps/desktop/dist/main/__tests__/runtime-host-profile-service.test.js
  • npm run astryx:surface-inventory

AI use

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: OpenAI Codex implemented and verified the change under the maintainer's direction and review.

Checklist

  • Tests cover the change and fail without it
  • Lint, format, typecheck and the affected suites pass locally

Does this PR entail a change in behavior?

  • Yes — described under Summary above
  • No
中文

摘要

加入首个 Desktop Owner / Guest 分享界面。Owner 可在明确知情后创建一次性邀请并撤销访问;Guest 无需已有 Host profile 或 Owner credential 即可导入邀请,并获得只观察的 Desktop 界面。通过 plaintext 分享时,必须先明确确认风险,之后才会签发 Guest credential。

关联 #3843

验证

  • npm run build:test
  • npm --workspace @maka/desktop run typecheck -- --pretty false
  • node --test apps/desktop/dist/main/__tests__/runtime-host-collaboration-ipc-main.test.js apps/desktop/dist/main/__tests__/runtime-host-desktop-candidate.test.js apps/desktop/dist/main/__tests__/runtime-host-profile-service.test.js
  • npm run astryx:surface-inventory

AI 使用

OpenAI Codex 在维护者的指导和审核下参与了实现与验证。

@M4n5ter
M4n5ter force-pushed the feat/desktop-session-sharing branch from 1d68299 to cdaa829 Compare August 29, 2026 17:30
@M4n5ter
M4n5ter force-pushed the feat/desktop-session-sharing branch 2 times, most recently from b540314 to 2c1ed8a Compare August 29, 2026 21:51
@M4n5ter
M4n5ter marked this pull request as ready for review August 29, 2026 23:34
@github-actions github-actions Bot added the effort/XL Over 1000 readable lines label Aug 29, 2026

@jackwener jackwener left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I reviewed exact head 2c1ed8a926f961b39c5b52f564dbada2824290d5 and found no blocking issue. Invitation import binds the advertised root and transport, plaintext sharing requires explicit confirmation on both sides, Guest profiles cannot become the default, and the Guest Desktop candidate registers only the shared observation/resource surfaces while omitting Owner domains and native capabilities. Desktop build and typechecks, the complete Desktop main suite, and the changed-area tests pass.


Automated review notice: This comment was posted by an automated review agent operated by WAWQAQ. It is not an independent human review and does not replace one.

Add explicit Guest profiles, informed one-time invitations, and a read-only shared Session surface without exposing Owner-only Host state.

Generated-by: OpenAI Codex
@M4n5ter
M4n5ter force-pushed the feat/desktop-session-sharing branch from 2c1ed8a to ff82d2d Compare August 30, 2026 00:14
@M4n5ter
M4n5ter merged commit cfe87ba into main Aug 30, 2026
3 of 6 checks passed
@M4n5ter
M4n5ter deleted the feat/desktop-session-sharing branch August 30, 2026 00:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/XL Over 1000 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants