diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml
index 41ff35d..25089a5 100644
--- a/.github/workflows/checks.yml
+++ b/.github/workflows/checks.yml
@@ -49,8 +49,12 @@ jobs:
- run: cargo fmt --all -- --check
- run: cargo test --workspace --locked
- run: npm test -- --run
+ - run: node --test resources/frida/tests/scope-engine.test.cjs
- run: node --test scripts/release.test.mjs
- run: python -m unittest discover -s resources/device/tests
+ - name: Test owned Android fixture host controls
+ if: runner.os == 'Linux'
+ run: python -m unittest discover -s examples/android-engine-fixture/tests
- run: npm audit --audit-level=high
- run: npm run package
- name: Exercise real desktop engine and stdio MCP
diff --git a/README.md b/README.md
index 7375133..d94fb12 100644
--- a/README.md
+++ b/README.md
@@ -97,7 +97,7 @@ npm run desktop
Discover connected devices and installed apps over ADB. Use the **device-wide proxy** path, or instrument a **selected process with Frida** and explicit hook profiles. Read-only diagnostics explain authorization, root, ABI, runtime/server versions, mappings and recovery state before you connect.
-Frida is an optional, separate runtime installation. Pinning and native networking support depend on the target; selecting an app in proxy mode does not prove per-app attribution. **Stop** restores recorded Scope-owned state and preserves external changes. [Setup, supported paths and recovery →](docs/ANDROID.md) · [Diagnostic reference →](docs/DIAGNOSTICS.md)
+Frida is an optional, separate runtime installation. The experimental Scope-owned engine supports selected Java URL, SSLContext and OkHttp3 seams; native TLS and custom pinners are unsupported. **Stop ends the instrumented app process** before restoring recorded Scope-owned state and preserving external changes. System proxy mode requires manually configured app trust for HTTPS and never installs a system CA. [Setup, supported paths and recovery →](docs/ANDROID.md) · [Diagnostic reference →](docs/DIAGNOSTICS.md)
## An agent can read the evidence. You set the scope.
@@ -124,7 +124,7 @@ The same engine powers the native inspector and MCP. Real HTTP/TLS fixtures test
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| macOS arm64 | Local UI/package evidence is recorded by version; 1.3.0 interactive validation is recorded separately by scenario. Ad-hoc signed; not Apple-notarized. |
| Windows x64 / Linux x64 | CI builds, packages and headless MCP/capture smoke pass. Interactive UI and device validation remain open. Intel macOS is unverified. |
-| Android / Frida | Earlier smoke covered one rooted Android 16 arm64 emulator. The 1.0 diagnostics changes use fixtures; arbitrary apps and TLS stacks are unverified. |
+| Android / Frida | Earlier smoke covered the previous hook backend on one emulator. The current Scope-owned engine has local simulated tests only; real Android/Frida/OkHttp TLS and Stop acceptance are NOT RUN. |
| Capture | Bodies are buffered up to **16 MiB each**. Streaming, WebSocket frames, trailers and HTTP3 are not implemented. |
| Archives & analysis | Records currently load into memory. Large-session streaming/export is planned. Observed schemas are not complete API contracts. |
| Dependencies | A Linux glib unsoundness advisory remains tracked in [#11](https://github.com/dalkedev/scope/issues/11). See the full [dependency record](docs/DEPENDENCIES.md). |
@@ -145,6 +145,6 @@ Every change goes through maintainer review and required platform checks. [Owner