aboutsummaryrefslogtreecommitdiffstats
path: root/CLAUDE.md
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-25 11:28:31 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-25 12:07:49 +0200
commitb7bf11c077bdd165400cf8d80c5cd1ad4248d854 (patch)
treee80590cd7b798e21a4ac663fd1e653a66e5f3b34 /CLAUDE.md
parent6348698322e5bfcb80d0ef0dcd833ba4e6179640 (diff)
downloadmeshbay-b7bf11c077bdd165400cf8d80c5cd1ad4248d854.tar.gz
refactor(client): split transport.js into classic scripts
transport.js keeps the core (connection, reconnect, leases, dispatch). Chat, media, admin, upload and device methods move, cut as text, into transport-*.js scripts that hand a class of their own to extendTransport, which copies each method onto MeshBayTransport.prototype; the codec, roster checks, node pins and the rewrap fan-out move as they were. Both shells load them after transport.js. Every prototype member, class property and top-level function has the same source text as before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'CLAUDE.md')
-rw-r--r--CLAUDE.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index 9d9c8e8..c6a27af 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -923,7 +923,7 @@ here are kept only where they are a rule about *editing* the code.
| Application registry | `apps.js` | §9.4 — one entry per application, its component loaded on first use through `lazy.js` |
| Applications | `chat-app.js`, `files-app.js`, `video-app.js`, `music-app.js`, `photos-app.js` (+ `*-app-settings.js`) | §9.5–§9.9 |
| Shared settings widgets | `settings-ui.js`, `folder-tree.js` | **A pane must not import `group-settings.js`** — that is an import cycle, and it fails as a component that silently does not render |
-| Transport, handshake, device hello, roster verify | `transport.js` | §5.2, §3.3 |
+| Transport, handshake, device hello, roster verify | `transport.js` (core: connection, reconnect, leases, dispatch) + `transport-*.js` (chat, media, admin, upload, devices, codec, roster, pins, rewrap — classic scripts loaded after it, methods added by `extendTransport`) | §5.2, §3.3 |
| Crypto | `crypto.js`, `keyderive.js` | §4 |
| Hub session, token renewal, IndexedDB (keys, playlists) | `hub-client.js` | §3.1. **No group index is stored**: the `group_indexes` store had no reader for weeks and is emptied on start-up (`purgeGroupIndexCache`) |
| Where the hub is | `platform.js` — `hubBase()` | **the only file allowed to decide this** (§8.3) |