What
In SDK and headless mode (Claude Code run by another program, with no one at the screen), Remote Control failures now carry a machine-readable reason:
failure_kindis added to asystem/bridge_statemessage whose state is "failed", and is "terminal" when no kind was reported.error_codeis added to the error returned when aremote_controlenable request fails, for exampleremote_control_policy_disabled.
The list of error codes also documents codes for refused set_model and set_permission_mode requests. The Remote Control connection is now started with remoteControlOrigin set to "sdk" and a getBackfillMessages callback.
Why
A program driving Claude Code can now tell why Remote Control could not be turned on, such as an organisation policy forbidding it, and react to that code instead of reading an error message.
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubt
The finding does not say what `getBackfillMessages` supplies or which other `failure_kind` values exist.