This was generated by AI during triage.
Summary
Review the experimental Linux remote-control and Codex mobile host boundary before general-ready treatment.
Source
Migrated from docs/maintainers/security-backlog.md.
Maintained Docs
- Product source of truth:
PRODUCT.md
- Design source of truth:
DESIGN.md
- Security backlog index and review workflow:
docs/maintainers/security-backlog.md
- Threat model:
docs/maintainers/threat-model.md
- Package and runtime maintenance:
docs/maintainers/package-runtime-maintenance.md
Context
The remote-control-ui and remote-mobile-control port integrations expose Linux host plumbing for official app remote-control and Codex mobile surfaces. The Linux path uses software device keys under XDG config instead of the macOS native key module, preserves local app-server remote-control config, and exposes UI surfaces still governed by OpenAI-hosted account, enrollment, MFA, mobile-client authorization, and remote-access policy.
Triage Outcome
Snailflyer's host-state matrix is incorporated into this issue's scope. A connected-looking UI is not enough by itself to prove that the intended live host, app-server or managed daemon, and thread/session are current, reachable, and authorized.
This issue is triaged as enhancement plus ready-for-human: repo-local review, docs, and tests can be agent-led, but closure requires human-assisted live mobile/account evidence for the end-to-end host-state matrix.
Review Gate
Run the @codex-security workflow before treating implementation as review-ready.
Review evidence must include a host-state matrix that verifies:
- The enrollment state shown in UI corresponds to current account/mobile enrollment state, not local UI plausibility alone.
- The intended host's app-server or managed remote-control daemon is alive and reachable.
- The Linux remote-control device key exists in the configured XDG device-key store with owner-only file permissions.
- The mobile side can see the intended host thread/session.
- A first mobile action or message is applied to the intended host thread/session.
- Stale, revoked, unauthorized, or mismatched hosts are rejected instead of displayed as connected.
Desired State
@codex-security reviews remote-control UI gates, Codex mobile setup copy, app-server config preservation, generated bundle patch descriptors, host-state evidence, and the Linux device-key provider before the feature is treated as general-ready.
- The Linux device-key store remains under
${XDG_CONFIG_HOME:-$HOME/.config}/codex-app/ with owner-only file modes and no key material in logs or patch reports.
- Fork-side UI patches expose Linux host plumbing without fabricating connected-client, MFA, enrollment, access-required, remote-environment, host-liveness, or thread/session state.
- Review evidence distinguishes OpenAI-hosted account/mobile authorization state from local generated-app UI state.
- Review evidence proves the first mobile-side action reaches the intended live host thread/session before this issue is closed.
- Docs keep experimental fork-side enablement distinct from upstream account availability and mobile-client authorization.
Summary
Review the experimental Linux remote-control and Codex mobile host boundary before general-ready treatment.
Source
Migrated from
docs/maintainers/security-backlog.md.Maintained Docs
PRODUCT.mdDESIGN.mddocs/maintainers/security-backlog.mddocs/maintainers/threat-model.mddocs/maintainers/package-runtime-maintenance.mdContext
The
remote-control-uiandremote-mobile-controlport integrations expose Linux host plumbing for official app remote-control and Codex mobile surfaces. The Linux path uses software device keys under XDG config instead of the macOS native key module, preserves local app-server remote-control config, and exposes UI surfaces still governed by OpenAI-hosted account, enrollment, MFA, mobile-client authorization, and remote-access policy.Triage Outcome
Snailflyer's host-state matrix is incorporated into this issue's scope. A connected-looking UI is not enough by itself to prove that the intended live host, app-server or managed daemon, and thread/session are current, reachable, and authorized.
This issue is triaged as
enhancementplusready-for-human: repo-local review, docs, and tests can be agent-led, but closure requires human-assisted live mobile/account evidence for the end-to-end host-state matrix.Review Gate
Run the
@codex-securityworkflow before treating implementation as review-ready.Review evidence must include a host-state matrix that verifies:
Desired State
@codex-securityreviews remote-control UI gates, Codex mobile setup copy, app-server config preservation, generated bundle patch descriptors, host-state evidence, and the Linux device-key provider before the feature is treated as general-ready.${XDG_CONFIG_HOME:-$HOME/.config}/codex-app/with owner-only file modes and no key material in logs or patch reports.