refactor(api): complete fastapi migration and related features

Finish native FastAPI controllers, drop vendored microdot, and add
Wi-Fi driver runtime, beat SSE, simulated BPM, sequence playback
improvements, bridge ESP-NOW sources, UI updates, and tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-11 22:55:28 +12:00
parent cb9758b97b
commit ace5770b3a
73 changed files with 4540 additions and 4487 deletions

View File

@@ -43,18 +43,32 @@ def test_deliver_json_messages_defaults_broadcast():
def __init__(self):
self.keys = []
async def send(self, envelope):
async def send(self, envelope, addr=None):
del addr
devs = envelope.get("dv") or envelope.get("devices") or {}
self.keys.extend(devs.keys())
return True
class _Devices:
def read(self, mac):
return {
"id": mac,
"name": mac,
"transport": "espnow",
"address": mac,
}
def items(self):
return []
async def _run():
bridge = _Bridge()
await deliver_json_messages(
bridge,
[json.dumps({"v": "1", "select": ["2"]})],
["188b0e1560a8", "e8f60a16ea10"],
None,
_Devices(),
delay_s=0,
)
return bridge.keys