Skip to content

Commit b7ec674

Browse files
committed
docs(alert): state the single-send rule once, without a backend qualifier
1 parent 53d9f01 commit b7ec674

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

src/commands/capture/alert.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import { AppError } from '@agent-device/kernel/errors';
1818
const ALERT_COMMAND_NAME = 'alert';
1919

2020
const alertCommandDescription =
21-
'Inspect, wait for, accept, or dismiss a platform alert. Use get before acting when the alert content matters; accept and dismiss change the active alert state. XCTest-backed actions are not replayed after an ambiguous lost response; inspect the current alert before acting again.';
21+
'Inspect, wait for, accept, or dismiss a platform alert. Use get before acting when the alert content matters; accept and dismiss change the active alert state.';
2222

2323
const alertCommandMetadata = defineFieldCommandMetadata(
2424
ALERT_COMMAND_NAME,

website/docs/docs/commands.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -421,7 +421,7 @@ agent-device alert dismiss
421421
- Wait failures carry a structured `error.details.reason` in `--json` output: `wait_target_absent` proves a positive wait never found a match; `wait_target_present` means strict `wait absent` reached its deadline with valid captures that still contained matches; `predicate_failed` means strict `wait absent` could not prove absence because no valid capture arrived, with the final observation/diagnostic preserved; `wait_capture_stalled` means no readable capture arrived and is retriable; `wait_deadline_exceeded` means a later capture consumed the remaining budget after an earlier readable capture; `wait_landmark_identity_mismatch` is a replay destination-guard refusal; and `wait_stable_timeout` means the UI did not settle. Use `readableCaptures`, `waitedMs`, `matches`, and `firstMatch` instead of parsing error text. `firstMatch` carries identity/text evidence only; absence failures do not claim visibility or rect evidence.
422422
- `alert` inspects or handles system alerts on iOS simulator, macOS desktop, and Android native/runtime permission dialogs.
423423
- `alert` without an action is equivalent to `alert get`.
424-
- On XCTest-backed Apple targets, only `get` (including the default action) is read-only. After a lost accept/dismiss response, Agent Device checks the recorded command status instead of replaying the action. In-flight actions and completed actions without a retained response remain explicit uncertain results; inspect the current alert before acting again.
424+
- `accept` and `dismiss` are sent once on every platform. A lost or unconfirmed response is reported as an error and never replayed; run `alert get` before acting again.
425425
- Use `alert get` for an immediate cheap check. Use `alert wait <short-ms>` only when a prompt may appear after async work.
426426
- Android support is snapshot-derived. If `alert` reports no alert but a sheet is visible, treat it as app-owned UI and use `snapshot -i` plus `press` by visible label/ref.
427427
- If an iOS permission sheet is visible in `snapshot` or `screenshot` but `alert accept` reports no alert, fall back to a scoped `snapshot -i -s "<visible label>"` plus `press @ref`; not every simulator permission surface is exposed as a native XCTest alert.

0 commit comments

Comments
 (0)