Skip to main content

Settings and Permissions

The (settings)/permissions.tsx screen is the 8-point hardware permission audit that gates commitment creation.

Permission Checklist

The screen renders eight ConditionCard components, each backed by the usePermissions hook:

Fail-Closed Color Coding

Each permission card uses state-based color mapping:
  • Green — Permission granted, enforcement-ready
  • Red — Permission missing, fail-closed state

Tapping a permission card calls Enforcement.openSettings(type) from the enforcement-module native bridge, which deep-links directly to the relevant Android Settings page for that specific permission.

Commitment Gate

The final.tsx hub screen checks all 8 permissions before allowing the user to submit. If any permission is missing, the user is forced to this audit page before being allowed to commit.