Default matrix
Physical microphone checks
Synthetic microphone checks
fake-mic, feeds generated speech into the loopback input, and stops it after the run.
Status meanings
| Status | Meaning |
|---|---|
passed | The scenario completed and verified expected behavior |
failed | A requested or launch-critical check did not meet the contract |
skipped | The surface was disabled or not requested |
What it covers
- Model preflight.
- Local Whisper TTS.
- Microphone diagnostics.
- Synthetic or physical barge-in when requested.
- Durable jobs.
- Operation ledger.
- Compact local memory health, including command availability and MCP context access.
- Triggers.
- Task control.
- Web APIs.
- Connector config, acceptance, sandbox, approval, cancellation, logs, artifacts, and redacted route traces.
- Disabled-by-default privacy behavior.
- Enabled browser and OS representatives when settings turn them on.
Installation rows
The matrix also covers install and command-surface behavior:eyra setupavoids duplicate shell PATH lines and removes old Eyra shell aliases ending in# eyra.eyra doctor --jsonexposes support fields without secret values.eyra uninstallremoves command shims and cleans Eyra shell rc lines while preserving config/data unless data removal is explicitly requested.- The Homebrew formula runs
eyra version,eyra paths --json, andeyra doctor --json; the formula test uses mock, typed-only mode so it does not require a real configured backend. - The installer rejects unsafe install targets and keeps user data separate from app files.
Connector rows
The matrix includes connector-specific rows for the universal connector contract:- Missing connector config is reported before any connector can run.
- Valid manifests load.
- Dynamic commands, shell interpolation, and model-filled command placeholders are rejected.
- Runtime payloads include only manifest-declared privacy data classes.
- Missing
taskprivacy declaration blocks task-bearing connector jobs. - Approval-required acceptance is not accepted until approval is granted and the test task runs.
- Local CLI connector health and test tasks pass before use.
- Output is capped.
- Token-like values and local home paths are redacted.
- Requested working directories stay inside
CONNECTORS_ALLOWED_ROOTS. - File-writing connectors require exact
run_connector_taskapproval. - Remote connectors are refused by default and require
CONNECTORS_ALLOW_REMOTE=true. - Connector execution is not exposed to Realtime voice.
- Running connector jobs can be cancelled.
- Connector jobs write durable logs and artifacts.
- Route traces include connector metadata without leaking secrets or local home paths.
- Acceptance state is visible in capability snapshots.