NO NETWORK · NO TELEMETRY · FAILS CLOSED · v0.3.0

S10

Custom compromising policyValidated

An empty compromisingCategories list reports signals but never compromises.

Validatedandroid

How to read this page

A scenario is one test case: prepare the environment, run the steps, then compare the expected result (written before the run) with the observed result (copied from the run, with screenshots).

S10 · S
Run on a simulator or emulator — a virtual device on a computer.
Validated
Run, and the result matched what was expected.

Why it matters

Monitoring-only rollouts need to collect signals before enforcing them.

Environment

App
Example app (Expo SDK 57, React Native 0.86)
Device
Pixel 9 Pro emulator (sdk_gphone16k_arm64), API 37
Build
Debug, installed with adb
Library
0.2.0

Setup

Prepare the environment.Then run the steps.

  1. 01Configure a failing signing-certificate check.

Steps

What to run.What to read.

  1. 01Call checkIntegrity with policy: { compromisingCategories: [] }.

Expected result · written before the run

Status: clean2 signals.

Documented as deliberate: use an empty list only on purpose.

Observed result · copied from the run

Status: cleanObserved 2026-09-30.

evidence
policyEmpty: clean with tamper_signature_mismatch still reported

Checks this scenario covers

Every check this test case touches — including ones that aren't expected to fire here. The expected and observed results above say which ones should and did. Each links to how the check works.