Add managed channel administration and moderation
.NET port / test (macos-latest) (push) Canceled after 0s
.NET port / test (ubuntu-24.04) (push) Canceled after 0s
.NET port / test (windows-latest) (push) Canceled after 0s
.NET port / cpp-conformance (push) Canceled after 0s

This commit is contained in:
2026-09-15 23:11:09 +02:00
parent 274b85025c
commit 653131b876
15 changed files with 737 additions and 20 deletions
+23
View File
@@ -10,6 +10,29 @@ up instantly. Newest status at the top.
## ▶ Where we left off / next action
- **Done (2026-09-15): Managed channel and administration checkpoint.** Reaper committed
as `274b850`. Added protected joins and capacity checks, leave-to-Lobby, persisted channel
create/edit/delete with events, parent/cycle validation and Lobby protection. Native
salted BLAKE2b channel hashes work in both directions; empty edit passwords preserve
protection. Channel edits, moves and deletion clear streams before further media routing.
Session permissions gate kick/ban/move/server-mute/deafen and account create/reset/delete/
list. Only administrators grant permissions; temporary-channel permission cannot create
permanent channels. Kick/ban retire media and send one reason-bearing LEFT. Account bans
persist by username, guest bans by address; Unix-millisecond expiry converts to database
seconds, fixing the native handler's unit mismatch. Bounded Argon2 work remains outside
the session lock; account lists exclude hashes and respect the frame limit. The existing
C++ CLI successfully creates protected channels and creates/lists accounts against the
managed server. Fixed its temporary channel-string pointers and zero audio defaults.
A native sample-rate regression intermittently measured host microphone audio alongside
its injected tone; changed that test to external capture/playback and kept callback state
alive through client shutdown, with synchronized energy reads.
**Verified:** 169/169 managed tests with all native conformance enabled, zero skips;
warning-free managed Release build, native dev build and 29/29 CTest tests; diff check.
**Next:** production configuration, administrator provisioning/publishing and remaining
server readiness checks (including auth rate limiting). Phase 4 is still in progress.
Then managed audio/core/CLI, Windows cutover, C# AppKit and UIKit clients; preserve Swift
ReplayKit extension and freeze the shared-ring contract before the iOS cutover.
- **Done (2026-09-15): Managed media-aware reaper.** Voice checkpoint committed as
`05eacb3`. Added `VoiceServerOptions` (name/guests/capacity, handshake deadline,
idle timeout and sweep interval), preserving the previous constructor overload.