Skip to content

Parity contract

The authoritative parity artifact is resources/parity.json in the PAM Mobile UI repository.

Field Value
Source Versioned PamUI component inventory
Reference commit be060b5d184826d34623e490447a467ffb5cfe56
Package version 5.0.3
Captured July 23, 2026
Modules 61
Exports 404
Typed PHP facades 326

PAM tracks the complete source tree, including modules that are not prominent in the upstream documentation navigation.

The catalog labels a component as stable or alpha based on its source maturity. Alpha modules remain in the parity contract; they are not presented as stable merely because a PAM implementation exists.

Current alpha surfaces include BottomSheet, Calendar, DateTimePicker, Grid, ImageViewer, LiquidGlass, Skeleton, Table, and Tabs.

A module can be:

  • PHP composition;
  • Android native host;
  • PAM Native passthrough; or
  • service/provider or build-time infrastructure.

Implementation kind describes where behavior lives, not its quality level.

ID Status Meaning
1 Planned The gate still requires implementation or evidence
2 Implemented Behavior exists but lacks complete verification
3 Verified The applicable contract and evidence pass
4 Not applicable The gate does not apply to this module

Every module has ten ordered gates:

ID Gate
1 Typed PHP facade and raw escape hatch
2 Root and documented subcomponent tags
3 Android behavior
4 Variants, placements, sizes, and orientations
5 Controlled, disabled, loading, invalid, and read-only states
6 TalkBack, focus, font scale, contrast, and target size
7 Light, dark, and custom theme tokens
8 .pam and PHP examples
9 PHP static analysis plus Android tests
10 Cold start, mount, update, event, and frame-time evidence

A module reaches verified only when every applicable gate passes.

Core passthroughs remain part of the public catalog:

  • SafeAreaView forwards independent inset edges and padding or margin mode.
  • KeyboardAvoidingView forwards resize, position, padding, offset, and enabled state.
  • RefreshControl keeps gesture arbitration and indicator animation native.
  • lists use PAM Native’s recycled AndroidX RecyclerView host;
  • scroll views use one native host for both axes;
  • image components share the cancelable measured-size image pipeline;
  • status bars merge by mount order; and
  • text and inputs retain the complete native accessibility and input surface.

All coded fields use sequential integer IDs represented by PHP enums. Human names in definitions are documentation labels; module records store IDs.

resources/parity.schema.json fixes the module count at 61 and rejects unknown fields.

The presence of a component in the catalog does not mean every gate is verified. Check maturity, implementation kind, and the machine-readable verification array before selecting a component for production.