Device target, capability and authority model

What capabilities the target has, whether it is currently available, and who controls the resource.

confirmed4 elements

Model judgment

Code compiled into the target does not mean that the function is available. Manifest, runtime status and authority binding together form product capability facts.

Invariant

  1. Undeclared capabilities are unavailable by default.
  2. There is only one authority owner for the same controlled resource.
  3. Unavailability and downgrade carry diagnosable causes.
  4. The UI does not use platform macro guessing capabilities.

Domain Elements

TargetManifestView — Static target contract.

CapabilityKind / CapabilityStatus — Capability language and running status.

AuthorityBinding — Resource to owner binding.

Source code evidence

modules/core_device/include/device/target_manifest_types.h
modules/core_device/include/device/capability_types.h
modules/core_device/include/device/authority_types.h

Drill down: target capability analysis