Feature
Add the Packet authenticity selector specified in meshtastic/design#121 to the shared Android/Desktop Security configuration UI.
User experience
Under Security → Packet authenticity, expose the device SecurityConfig.packet_signature_policy with these ordered choices:
- Compatible — Accept unsigned: Verify signed broadcasts, but keep unsigned traffic for maximum compatibility.
- Balanced — Prefer signed: Recommended. Reject unsigned downgrade attempts from nodes known to sign.
- Strict — Require signed: Only show and process verified signed broadcasts. Older nodes and oversized broadcasts may disappear.
Balanced is the default/zero value. Strict requires a confirmation that calls out older firmware, licensed/ham nodes without PKI keys, oversized broadcasts, and reduced mesh visibility. PKI-encrypted direct messages remain available.
Acceptance criteria
- Read/write the firmware field; do not create a separate app-local filter.
- Gate the control for firmware/protobuf versions that support the setting.
- Follow existing shared Compose Multiplatform config patterns and localization/accessibility conventions.
- Keep shield=authentic and lock=private semantics from design#113.
- Tests cover mapping/defaults, config write, Strict confirmation/cancel, unsupported firmware, and state restoration.
- Screenshot evidence covers all three selections, confirmation, disabled state, light/dark, and relevant compact/adaptive layouts.
- Open the implementation PR as draft because end-to-end radio/hardware verification is pending.
Feature
Add the Packet authenticity selector specified in meshtastic/design#121 to the shared Android/Desktop Security configuration UI.
User experience
Under Security → Packet authenticity, expose the device
SecurityConfig.packet_signature_policywith these ordered choices:Balanced is the default/zero value. Strict requires a confirmation that calls out older firmware, licensed/ham nodes without PKI keys, oversized broadcasts, and reduced mesh visibility. PKI-encrypted direct messages remain available.
Acceptance criteria