mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-08-26 17:31:34 +00:00
* feat(transport): MeshCoreTransport over pyMC companion TCP (Phase 2) Implements MeshCoreTransport (MeshTransport impl) using the meshcore lib over TCP to a pyMC companion frame server, bridged behind the sync interface via a dedicated event-loop thread. Outbound channel/DM sends, inbound message normalization into MeshMessage(transport="meshcore"), contact/self lookups. Factory wires transport="meshcore"; supervisor is now transport-aware (Meshtastic watchdog guarded). Dormant unless configured; meshtastic path unchanged; full suite matches baseline. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(transport): sync loop-thread readiness before dispatch (MeshCore) Wait on a threading.Event set from inside the event loop (via call_soon) before dispatching the first coroutine in connect(), eliminating a startup race where run_coroutine_threadsafe could be rejected by an is_running() pre-check before run_forever() had begun spinning. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(transport): MeshCore broadcasts use configured channel index The channel arg carries Meshtastic-index semantics that don't map to MeshCore's channel table; broadcasts now always use the configured meshcore_channel_index (also fixes explicit channel=0 being treated as falsy). DM path unchanged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Matt Johnson <mj@k7zvx.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
17 lines
261 B
Text
17 lines
261 B
Text
meshtastic>=2.3.0
|
|
meshcore>=2.3.7
|
|
pyyaml>=6.0
|
|
aiosqlite>=0.19.0
|
|
openai>=1.0.0
|
|
anthropic>=0.18.0
|
|
google-genai>=1.0.0
|
|
rich>=13.0.0
|
|
httpx>=0.25.0
|
|
fastembed>=0.3.0
|
|
sqlite-vec>=0.1.0
|
|
numpy
|
|
h3>=4.0
|
|
fastapi>=0.110.0
|
|
uvicorn[standard]>=0.27.0
|
|
aiomqtt>=2.0.0
|
|
sgp4>=2.22
|