mirror of
https://github.com/vicliu624/trail-mate.git
synced 2026-07-18 06:46:17 +00:00
* refactor: render chat rows from presentation state * Fix Meshtastic channel sync and add MeshCore CN preset * Add granular chat notification settings * Add SD settings backup and restore * Prepare 0.1.26-alpha release --------- Co-authored-by: vicliu624 <vicliu@outlook.com>
1.6 KiB
1.6 KiB
Board Package Specification
Board packages describe hardware facts and board-level bring-up constraints. They do not describe business behavior.
File Location
Board manifests live under:
docs/boards/*.board.yaml
The template lives at:
docs/boards/BOARD_MANIFEST_TEMPLATE.yaml
Board Package Owns
pin map
bus map
power rails
display facts
input facts
battery facts
radio hardware facts
GPS hardware facts
board init facts
board sleep/wake hardware hooks
Board Package Must Not Own
ChatService
ContactService
DirectMessageService
MeshtasticPhoneCore
MeshCorePhoneCore
ConfigService business interpretation
UI page state
BLE phone protocol
GPS business strategy
LoRa packet semantics
PKI policy
peer key policy
Board Manifest Semantics
Board manifest answers:
What hardware is physically present?
Which chip is used?
Which bus and pins connect it?
Which power gates exist?
Which display and input devices exist?
Which storage/power features exist?
It does not answer:
Which protocols are enabled?
Which UI shell is used?
Which app owns config?
How direct messages are sent?
How BLE phone APIs behave?
How LoRa packets are interpreted?
Target Manifest Difference
board_manifest.yaml describes what hardware exists.
target_manifest.yaml describes how a product uses that hardware.
Allowed Consumers
Board facts may be consumed by:
composition roots
platform factories
board bring-up code
hardware adapter construction
diagnostic tooling
Board facts must not be consumed directly by shared app services, protocol cores, presentation models, or renderers.