aboutsummaryrefslogtreecommitdiffstats
path: root/CLAUDE.md
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-25 01:30:47 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-25 01:30:47 +0200
commit762233772162a05be67432aa551a430b939250de (patch)
tree311a2f72fef30fec6017313c55ed5beefcf0237e /CLAUDE.md
parent320620a18399eb43c4d9056e9fe4c3ffac8fcfd4 (diff)
downloadmeshbay-762233772162a05be67432aa551a430b939250de.tar.gz
refactor(node): split ops.py into the ops package
Each section of ops.py becomes a module of meshbay_node/ops/ (core, node_toml, members, chat, groups, roots, files, settings, apps), cut as text; ops/__init__.py keeps the docstring and re-exports every name, so `ops.<name>` is unchanged for every caller. Logger name unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'CLAUDE.md')
-rw-r--r--CLAUDE.md4
1 files changed, 2 insertions, 2 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index 41a5056..7db6540 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -876,7 +876,7 @@ here are kept only where they are a rule about *editing* the code.
| Need | File | Note |
|---|---|---|
-| Operator operations | `meshbay_node/ops.py` | **One implementation, several front doors.** The loopback API, the CLI and the signed MNP handlers all call these |
+| Operator operations | `meshbay_node/ops/` (one module per domain, `__init__.py` re-exports every name as `ops.<name>`) | **One implementation, several front doors.** The loopback API, the CLI and the signed MNP handlers all call these |
| Local control API | `meshbay_node/ui/app.py` | JSON only, loopback + per-run token. Each operation endpoint is one `_op(...)` line |
| Roster, identities, devices, invites, group settings | `meshbay_node/roster.py` | §3.3, §3.4 |
| Roots, availability, eject/plug | `meshbay_node/roots.py`, `config.py` | §6.2 |
@@ -889,7 +889,7 @@ here are kept only where they are a rule about *editing* the code.
| 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/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 |
+| Chat epochs | `meshbay_node/ops/chat.py` — `open_chat_epoch`, `ensure_chat_epoch`, `chat_epoch_keys` | §4.5 |
| Keystore | `meshbay_node/keystore.py` | §4.6 |
| Bundle store (GEK + keypair bundles) | `meshbay_node/bundle_store.py` | §3.7 |
| Media cache, third-party metadata | `meshbay_node/media_cache.py`, `tmdb.py`, `musicbrainz.py`, `media_probe.py` | §6.5 |