sercrod

*device-info

*device-info and *device-info.current read current device and platform metadata through sercrod.device_info. Matching n-device-info forms are aliases.

<button type="button" *device-info.current *response="'device'">
  Read device information
</button>

<pre *print="JSON.stringify(device || {}, null, 2)"></pre>

Timing

On clickable elements the action waits for click or Enter/Space activation. On non-clickable elements it runs automatically once for that template location.

Data and placement

The normalized result is written to $device_info. Use *response for an explicit application-owned destination. Available fields vary by backend, so missing values must not be treated as stable identifiers or capability decisions.

Sercrod dispatches sercrod-device-info-start and sercrod-device-info. Failures dispatch sercrod-error with stage: "device-info".

Adapter and boundary

Load ./adapters/device-info.js explicitly. Backend order is project bridge, Capacitor Device, then browser navigator metadata. The adapter performs no retry.

Device information is read-only metadata. It does not own screen state, permissions, analytics, fingerprinting policy, persistence, routing, or application feature-gating policy.