diff --git a/.github/tauri-cef-expected-sha b/.github/tauri-cef-expected-sha index 0809bcda4..9e09716ab 100644 --- a/.github/tauri-cef-expected-sha +++ b/.github/tauri-cef-expected-sha @@ -1 +1 @@ -f09d7e746a44a5187d2abc116e8a4cd7a9f94a67 +455b47debb9d1f5d0f1527266e48af1670ad4bc5 diff --git a/AGENTS.md b/AGENTS.md index 98e54bc3b..503409361 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -163,7 +163,7 @@ No `UserProvider`/`AIProvider`/`SkillProvider` — auth lives in `CoreStateProvi ## Tauri shell (`app/src-tauri/`) -Thin desktop host. Key modules: `core_process`, `core_rpc`, `cdp`, `cef_preflight`, `cef_profile`, `dictation_hotkeys`, `file_logging`, `mascot_native_window`, `screen_capture`, `window_state`, per-provider scanners (`discord_scanner`, `slack_scanner`, `telegram_scanner`, `whatsapp_scanner`, `wechat_scanner`, `gmessages_scanner`, `imessage_scanner`, `meet_scanner`), `meet_audio`/`meet_call`/`meet_video`, `fake_camera`, `webview_accounts`, `webview_apis`. +Thin desktop host. Key modules: `core_process`, `core_rpc`, `cdp`, `cef_preflight`, `cef_profile`, `dictation_hotkeys`, `file_logging`, `mascot_native_window`, `window_state`, per-provider scanners (`discord_scanner`, `slack_scanner`, `telegram_scanner`, `whatsapp_scanner`, `wechat_scanner`, `gmessages_scanner`, `imessage_scanner`, `meet_scanner`), `meet_audio`/`meet_call`/`meet_video`, `fake_camera`, `webview_accounts`, `webview_apis`. IPC commands (authoritative list: `generate_handler!` in `app/src-tauri/src/lib.rs`): `core_rpc::relay_http_rpc`, `core_rpc_url`, `core_rpc_token`, `start_core_process`/`restart_core_process`, update commands (`check_app_update`, `apply_core_update`, …), window commands (`activate_main_window`, `mascot_window_*`, `notch_window_*`), `webview_accounts::*`, `workspace_paths::*`, `artifact_commands::*`, hotkeys (dictation/PTT/companion), `meet_call::*`, `native_notifications::*`, `mcp_commands::*`, `loopback_oauth::*`. diff --git a/app/schema.json b/app/schema.json index 2bed0647b..7ec1cca42 100644 --- a/app/schema.json +++ b/app/schema.json @@ -834,70 +834,6 @@ } ] }, - { - "description": "Update screen intelligence runtime settings.", - "function": "update_screen_intelligence_settings", - "inputs": [ - { - "comment": "Enable screen intelligence.", - "name": "enabled", - "required": false, - "ty": { "Option": "Bool" } - }, - { - "comment": "Capture policy mode.", - "name": "capture_policy", - "required": false, - "ty": { "Option": "String" } - }, - { - "comment": "Policy mode override.", - "name": "policy_mode", - "required": false, - "ty": { "Option": "String" } - }, - { - "comment": "Baseline capture FPS.", - "name": "baseline_fps", - "required": false, - "ty": { "Option": "F64" } - }, - { - "comment": "Enable vision analysis.", - "name": "vision_enabled", - "required": false, - "ty": { "Option": "Bool" } - }, - { - "comment": "Enable autocomplete integration.", - "name": "autocomplete_enabled", - "required": false, - "ty": { "Option": "Bool" } - }, - { - "comment": "Allowed app list.", - "name": "allowlist", - "required": false, - "ty": { "Option": { "Array": "String" } } - }, - { - "comment": "Denied app list.", - "name": "denylist", - "required": false, - "ty": { "Option": { "Array": "String" } } - } - ], - "method": "openhuman.config_update_screen_intelligence_settings", - "namespace": "config", - "outputs": [ - { - "comment": "Updated config snapshot.", - "name": "snapshot", - "required": true, - "ty": "Json" - } - ] - }, { "description": "Replace tunnel settings with provided config payload.", "function": "update_tunnel_settings", @@ -1246,167 +1182,6 @@ } ] }, - { - "description": "Capture screenshot and return image ref.", - "function": "capture_image_ref", - "inputs": [], - "method": "openhuman.screen_intelligence_capture_image_ref", - "namespace": "screen_intelligence", - "outputs": [ - { - "comment": "Capture image_ref payload.", - "name": "capture", - "required": true, - "ty": "Json" - } - ] - }, - { - "description": "Trigger immediate screen capture.", - "function": "capture_now", - "inputs": [], - "method": "openhuman.screen_intelligence_capture_now", - "namespace": "screen_intelligence", - "outputs": [ - { "comment": "Capture result payload.", "name": "capture", "required": true, "ty": "Json" } - ] - }, - { - "description": "Perform input action through accessibility automation.", - "function": "input_action", - "inputs": [ - { - "comment": "Input action payload.", - "name": "action", - "required": true, - "ty": { "Ref": "InputActionParams" } - } - ], - "method": "openhuman.screen_intelligence_input_action", - "namespace": "screen_intelligence", - "outputs": [ - { - "comment": "Input action result payload.", - "name": "result", - "required": true, - "ty": "Json" - } - ] - }, - { - "description": "Request one accessibility permission.", - "function": "request_permission", - "inputs": [ - { "comment": "Permission name.", "name": "permission", "required": true, "ty": "String" } - ], - "method": "openhuman.screen_intelligence_request_permission", - "namespace": "screen_intelligence", - "outputs": [ - { - "comment": "Permission status payload.", - "name": "permissions", - "required": true, - "ty": "Json" - } - ] - }, - { - "description": "Request required accessibility permissions.", - "function": "request_permissions", - "inputs": [], - "method": "openhuman.screen_intelligence_request_permissions", - "namespace": "screen_intelligence", - "outputs": [ - { - "comment": "Permission status payload.", - "name": "permissions", - "required": true, - "ty": "Json" - } - ] - }, - { - "description": "Start screen intelligence session.", - "function": "start_session", - "inputs": [ - { - "comment": "Capture interval in milliseconds.", - "name": "sample_interval_ms", - "required": false, - "ty": { "Option": "U64" } - }, - { - "comment": "Capture policy mode.", - "name": "capture_policy", - "required": false, - "ty": { "Option": "String" } - } - ], - "method": "openhuman.screen_intelligence_start_session", - "namespace": "screen_intelligence", - "outputs": [ - { "comment": "Session status payload.", "name": "session", "required": true, "ty": "Json" } - ] - }, - { - "description": "Read screen intelligence accessibility status.", - "function": "status", - "inputs": [], - "method": "openhuman.screen_intelligence_status", - "namespace": "screen_intelligence", - "outputs": [ - { - "comment": "Accessibility status payload.", - "name": "status", - "required": true, - "ty": "Json" - } - ] - }, - { - "description": "Stop screen intelligence session.", - "function": "stop_session", - "inputs": [ - { - "comment": "Optional stop reason.", - "name": "reason", - "required": false, - "ty": { "Option": "String" } - } - ], - "method": "openhuman.screen_intelligence_stop_session", - "namespace": "screen_intelligence", - "outputs": [ - { "comment": "Session status payload.", "name": "session", "required": true, "ty": "Json" } - ] - }, - { - "description": "Flush stored vision summaries.", - "function": "vision_flush", - "inputs": [], - "method": "openhuman.screen_intelligence_vision_flush", - "namespace": "screen_intelligence", - "outputs": [ - { "comment": "Vision flush payload.", "name": "result", "required": true, "ty": "Json" } - ] - }, - { - "description": "Read recent vision summaries.", - "function": "vision_recent", - "inputs": [ - { - "comment": "Maximum number of summaries.", - "name": "limit", - "required": false, - "ty": { "Option": "U64" } - } - ], - "method": "openhuman.screen_intelligence_vision_recent", - "namespace": "screen_intelligence", - "outputs": [ - { "comment": "Vision recent payload.", "name": "result", "required": true, "ty": "Json" } - ] - }, { "description": "Manage desktop service lifecycle.", "function": "install", diff --git a/app/scripts/e2e-run-all-flows.sh b/app/scripts/e2e-run-all-flows.sh index 72541c2ae..37f50ab5f 100755 --- a/app/scripts/e2e-run-all-flows.sh +++ b/app/scripts/e2e-run-all-flows.sh @@ -403,7 +403,7 @@ if should_run_suite "settings"; then fi # --------------------------------------------------------------------------- -# System / AI / voice / screen / Tauri +# System / AI / voice / Tauri # linux-cef-deb-runtime.spec.ts is Linux-only (tests /usr/bin path resolution # for .deb package installs) — skipped on macOS/Windows. # --------------------------------------------------------------------------- @@ -412,7 +412,6 @@ if should_run_suite "system"; then echo "## Running suite: system" run "test/e2e/specs/local-model-runtime.spec.ts" "local-model" "system" run "test/e2e/specs/voice-mode.spec.ts" "voice-mode" "system" - run "test/e2e/specs/screen-intelligence.spec.ts" "screen-intelligence" "system" run "test/e2e/specs/audio-toolkit-flow.spec.ts" "audio-toolkit" "system" run "test/e2e/specs/tauri-commands.spec.ts" "tauri-commands" "system" # service-connectivity-flow tests the old sidecar service model removed in diff --git a/app/src-tauri/entitlements.sidecar.plist b/app/src-tauri/entitlements.sidecar.plist index cdad97f19..abeaaa8d7 100644 --- a/app/src-tauri/entitlements.sidecar.plist +++ b/app/src-tauri/entitlements.sidecar.plist @@ -22,14 +22,13 @@ (JSON-RPC server, Socket.IO) under the macOS Hardened Runtime. --> com.apple.security.network.server - + com.apple.security.automation.apple-events