From ccb2b85051b88578c7d739ff46385e50a65591a6 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Tue, 11 Aug 2026 11:51:12 +0200 Subject: docs: update Phase 10 commit hash, API reference, key modules Co-Authored-By: Claude Opus 4.6 --- docs/meshbay-draft-v4.md | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'docs/meshbay-draft-v4.md') diff --git a/docs/meshbay-draft-v4.md b/docs/meshbay-draft-v4.md index 343fd26..45b6381 100644 --- a/docs/meshbay-draft-v4.md +++ b/docs/meshbay-draft-v4.md @@ -1,7 +1,7 @@ # MeshBay — Architecture Draft v4 -> Status: active development — Phases 1–8 complete, Phase 9.1–9.5 validated, 123 tests. -> Changes from v3: web client transport (WebRTC DataChannel), web UI architecture, hub roles (admin/moderator), hub mirror design, browser-specific NAT traversal, chat storage clarified, Phase 8 security items resolved. +> Status: active development — Phases 1–10.4 complete, 147 tests. +> Changes from v3: web client transport (WebRTC DataChannel), web UI architecture, hub roles (admin/moderator), hub mirror design, browser-specific NAT traversal, chat storage clarified, Phase 8 security items resolved, Phase 10 site overlay + admin/moderation UI. --- @@ -233,10 +233,25 @@ Complete table of validated and planned hub REST API endpoints. Endpoints marked | Method | Path | Auth | Description | Status | |---|---|---|---|---| -| POST | `/v1/revoke/user/{user_id}` | Access token (admin) | Revoke a user account | [TBD] | -| POST | `/v1/revoke/group/{group_id}` | Access token (admin) | Revoke a group | [TBD] | +| POST | `/v1/admin/revoke` | Access token (admin) | Revoke a user or group | ✓ Phase 8 | | GET | `/v1/revoke/denylist` | None | Current `jti` denylist for active access tokens | [TBD] | +**Admin / moderation:** + +| Method | Path | Auth | Description | Status | +|---|---|---|---|---| +| GET | `/v1/users/me` | Access token | Current user info (id, username, role, status) | ✓ Phase 10 | +| GET | `/v1/admin/stats` | Moderator+ | Hub stats (user/group/node counts, online nodes) | ✓ Phase 10 | +| GET | `/v1/admin/users` | Moderator+ | List users (paginated, searchable by username) | ✓ Phase 10 | +| GET | `/v1/admin/users/{user_id}` | Moderator+ | User detail (email, role, status, group count) | ✓ Phase 10 | +| PATCH | `/v1/admin/users/{user_id}` | Moderator+ | Update user role or status | ✓ Phase 10 | +| GET | `/v1/admin/groups` | Moderator+ | List all groups with member count | ✓ Phase 10 | +| PATCH | `/v1/admin/groups/{group_id}` | Moderator+ | Update group status | ✓ Phase 10 | +| GET | `/v1/admin/logs` | Moderator+ | IP audit logs (filterable by event, user_id) | ✓ Phase 10 | +| GET | `/v1/admin/blocklist` | Admin | List blocked content hashes | ✓ Phase 8 | +| POST | `/v1/admin/blocklist` | Admin | Manually block a content hash | ✓ Phase 8 | +| DELETE | `/v1/admin/blocklist/{hash}` | Admin | Unblock a content hash | ✓ Phase 8 | + ### 4.2 Mesh Node A local program running on the host user's machine. The node is the actual host of all content. -- cgit v1.2.3