main
dev
chore/365-cut-1.2.1
fix/363-pin-db-path
feat/351-contact-settings-menu
feat/349-window-geometry
feat/355-migration-merge
integration/290-306-335
release/1.1.2-rc.3-allplatforms
fix/309-path-len-decode
chore/298-path-logging
fix/285-ingest-timelog
fix/252-block-outgoing-dm
feat/64-observer-config
feat/batch1-ux
chore/offband-rebrand
v1.2.1
v1.2.0
v1.1.2-rc.3-allplatforms
v1.1.2-rc.3
v1.1.2-rc.2
v1.0.0
observer-g2-rc3
observer-g2-rc4
observer-g2-rc5
observer-g2-rc6
observer-g2-rc7
observer-g2-rc8
observer-g2-rc9
v1.1.0-rc.1
v1.1.0-rc.2
v1.1.0-rc.3
v1.1.2-beta.1
v1.1.2-beta.2
v1.1.2-beta.3
v1.1.2-ble-test
v1.1.2-queuediag
v1.1.2-rc.1
v1.1.2-rc.1-b45-nearbyrep
v1.1.2-rc.1-b46-pathhash
v1.1.2-rc.1-b47-tracewidth
v1.1.2-rc.1-b48-repeatertrace
v1.1.2-rc.1-b49-maptrace
v1.1.2-rc.1-b50-tracefix
v1.1.2-rc.1-b51-originstrip
v1.1.2-rc.1-b52-channelqr
v1.1.2-rc.1-b53-viarepeater
v1.1.2-rc.1-b54-rxfed
v1.1.2-rc.1-b55-topology
v1.1.2-rc.1-b57-routeux
v1.1.2-rc.1-b58-toporeadout
v1.1.2-rc.3-b59-pathlen
${ noResults }
1 Commits (ce1c5a3cb6b093c2294bf34d6eadb8e7d0b5cb2f)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
ce1c5a3cb6 |
feat(#64): observer config wire codec + models + service (logic layer)
Client side of the Offband config command (CMD_OFFBAND_CONFIG 0xC0, firmware Epic F #160-#163), mirroring OffbandConfigProtocol.h + MyMesh::handleOffbandConfigCmd byte-for-byte: - models/observer_config.dart: ObserverConfig/BrokerConfig/WifiConfig/ MqttGlobalConfig/DisplayConfig, the tcp|tls|wss + none|basic|jwt enums, three-state SecretField, BrokerConfig.fromWireFields. - connector/observer_config_client.dart: pure codec -- frame builders (SET/GET/VIEW/BROKERS), parse() -> typed ConfigResponse, BrokerListDecoder (START->KV->END), supportsConfig (ver gate + 0x01 cap bit). - services/observer_config_service.dart: ChangeNotifier driving the codec over MeshCoreConnector -- send/await/parse round-trips, getBrokers stream, full-config refresh, capability gate, error/stale surfacing (SAFELANE 6). Known firmware gap flagged to RedCreek: broker enable/disable/clear have no wire path yet (configSet lacks `enabled`, VIEW allowlist blocks mutations); field SET + read work, activation/clear await a firmware F-task. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
4 weeks ago |