From d60768b3812f30cf4109e2a5dab498d916262572 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Thu, 24 Sep 2026 12:43:47 +0200 Subject: refactor(node): dispatch MNP messages through a table The pre-authentication guards stay explicit code, in the same order and text. After the handshake, a table maps each type to its handler and to whether it runs as a task, the choice each branch made; the three inline blocks become StreamingMixin methods, unchanged. The dispatch golden is identical, including types that are not strings. Co-Authored-By: Claude Opus 5.5 --- CLAUDE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CLAUDE.md') diff --git a/CLAUDE.md b/CLAUDE.md index e769511..5caa28d 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -887,7 +887,7 @@ here are kept only where they are a rule about *editing* the code. | QUIC transport | `meshbay_node/transport/quic_server.py` | off by default; **must stay at parity with the WebRTC handlers** | | Background tasks (node) | `transport/webrtc/core.py` — `_spawn()` | the only way to start one; a bare `ensure_future` can be collected | | Stream handover, backpressure | `transport/webrtc/apps/streaming.py` — `_replace_stream`; `webrtc/files.py` — `DOWNLOAD_BUFFER_HIGH`; `webrtc/core.py` — `shutdown_tasks` | §8.5 | -| Stream diagnosis | `transport/webrtc/dispatch.py` — `client_diag` at DEBUG | the player's own view in the node's log; the only window into a phone | +| Stream diagnosis | `transport/webrtc/apps/streaming.py` — `_do_client_diag` at DEBUG | the player's own view in the node's log; the only window into a phone | | Chat store and paging | `meshbay_node/chat/store.py` | `get_recent`/`get_before`/`has_before`; `get_messages` pages *forwards* and is not what a chat opens with | | Chat epochs | `meshbay_node/ops.py` — `open_chat_epoch`, `ensure_chat_epoch`, `chat_epoch_keys` | §4.5 | | Keystore | `meshbay_node/keystore.py` | §4.6 | -- cgit v1.2.3