Skip to content

feat(harmonyos): add ACP remote session control - #2455

Open
wgqqqqq wants to merge 1 commit into
GCWing:1.0.0-explorefrom
wgqqqqq:feat/harmonyos-acp-remote-control
Open

feat(harmonyos): add ACP remote session control#2455
wgqqqqq wants to merge 1 commit into
GCWing:1.0.0-explorefrom
wgqqqqq:feat/harmonyos-acp-remote-control

Conversation

@wgqqqqq

@wgqqqqq wgqqqqq commented Aug 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add a HarmonyOS ACP conversation surface with text, thinking, tools, plan, commands, session options, and permission prompts.
  • Classify ACP sessions separately from native sessions and negotiate remote-control capability before enabling mutations.
  • Route ACP send, cancel, option, command, plan, and permission actions through dedicated controllers with stable request IDs.
  • Preserve ACP metadata cursors across polling and reset them correctly after host restart or reconnect.
  • Surface old-host, unsupported, stale-turn, and retryable failures explicitly instead of falling back to native commands.
  • Add Chinese and English copy plus focused state, controller, transport, and compatibility tests.

Type and Areas

Type:

Feature / UI/UX / compatibility / test

Areas:

HarmonyOS mobile app

Motivation / Impact

HarmonyOS could observe remote sessions but could not safely control external ACP sessions. This PR adds the mobile presentation and control orchestration while keeping native and ACP command paths explicit and capability-gated.

Verification

  • source scripts/ohos-env.sh && "$OHPM" install
  • scripts/run-local-tests.sh — all specs passed
  • "$HVIGORW" --mode module -p product=default -p module=entry@default assembleHap --no-daemon — BUILD SUCCESSFUL
  • git split verification confirmed this branch changes only src/apps/mobile/harmonyos and matches the mobile portion of the integrated implementation exactly.
  • Real-device compact/dark flow exercised send, one durable projected turn, cancel, Desktop disconnect, and reconnect.
  • Wide/light layout, provider-originated permission prompt, peer-device mode, remote workspace ACP, and a pre-ACP Desktop binary were not exercised end to end.

Reviewer Notes

Companion host/protocol PR: #2454

This branch is independently based on 1.0.0-explore rather than stacked on the host PR. It compiles and tests independently, but ACP mutations remain capability-gated until the host PR is present; older hosts receive explicit unsupported behavior.

The unsigned HAP build emits the expected local signing warning. ClipboardService also retains the existing READ_PASTEBOARD warning.

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.

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