fix(cli): treat device status and release selectors as explicit-only

Merged
TW
1d ago
+174-9

Fixes #4298

Cause. In src/cli/parser/args.ts, agent-device.json defaults merge into parsed flags key by key, so a config udid (e.g. from an iOS session) survives an explicit --serial, and claim queries filter by udid ?? serial (packages/daemon-contracts/src/device-claim-inspection.ts).

Fix. Treat platform, device, udid, and serial as explicitOnlyFlags on the device command schema in packages/command-surface/src/schema/command-overrides.ts. Added a patch changeset.

Test. Added regression unit tests in src/cli/resolve-cli-options.test.ts and an integration test in src/__tests__/cli-device-status.test.ts. Scoped vitest, oxlint, oxfmt, and tsc are clean.

This change was prepared with the assistance of an AI coding agent (GPT-6-astra).


Autofix with [code]smith
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.