diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-08-11 11:51:12 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-08-11 11:51:12 +0200 |
| commit | ccb2b85051b88578c7d739ff46385e50a65591a6 (patch) | |
| tree | 3afed2563e5bc8171d930d09e0b59b90c69aae4f /docs/meshbay-draft-v4.md | |
| parent | c8f2de4025ea67b579e66cf608f08a8d35ee4a3c (diff) | |
| download | meshbay-ccb2b85051b88578c7d739ff46385e50a65591a6.tar.gz | |
docs: update Phase 10 commit hash, API reference, key modules
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'docs/meshbay-draft-v4.md')
| -rw-r--r-- | docs/meshbay-draft-v4.md | 23 |
1 files changed, 19 insertions, 4 deletions
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. |