Phase 2: PostgreSQL, E2EE, channel CRUD, voice signaling, Slint migration
Server: - PostgreSQL backend (Pool enum over Sqlite/PgPool, all storage methods dual-dialect) - E2EE for DM (4 new protobuf packets, handlers, storage of ciphertext only) - ChannelEdit packet + server-authoritative channel create/delete - Gateway → voice-node membership signaling via broadcast channel Client: - E2EE crypto (X25519 from Ed25519, HKDF, ChaCha20-Poly1305) + UI lock icons - E2EE net layer (PID 0x0071-0x0074, JSON payloads, dispatch, session handlers) - Slint migration: all .slint files, bridge.rs, update.rs, main.rs rewritten - Removed egui UI (~50 files) and all dead code (clean clippy -D warnings)
This commit is contained in:
parent
c34ed2a192
commit
742cf03a5f
31 changed files with 2203 additions and 639 deletions
|
|
@ -64,6 +64,11 @@ message ChannelCreate {
|
|||
|
||||
message ChannelDelete { string channel_id = 1; }
|
||||
|
||||
message ChannelEdit {
|
||||
string channel_id = 1;
|
||||
string channel_name = 2;
|
||||
}
|
||||
|
||||
message ChannelList { repeated ChannelListItem channels = 1; }
|
||||
|
||||
message ChannelListItem {
|
||||
|
|
@ -359,3 +364,27 @@ message SimpleResponse {
|
|||
optional string user_id = 2;
|
||||
optional string role_id = 3;
|
||||
}
|
||||
|
||||
// ─── E2EE for Direct Messages ────────────────────────────────────────────────
|
||||
|
||||
message E2eeDmKeyExchange {
|
||||
string dm_id = 1;
|
||||
bytes e2ee_public_key = 2;
|
||||
}
|
||||
|
||||
message E2eeDmKeyExchangeAck {
|
||||
string dm_id = 1;
|
||||
}
|
||||
|
||||
message E2eeDmMessage {
|
||||
string dm_id = 1;
|
||||
string sender_id = 2;
|
||||
bytes ciphertext = 3;
|
||||
int64 timestamp = 4;
|
||||
}
|
||||
|
||||
message E2eeDmHistory {
|
||||
string dm_id = 1;
|
||||
repeated E2eeDmMessage messages = 2;
|
||||
optional int64 limit = 3;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue