schema: rm is_dm, rename name→userinfo (json_flat), fix join_msg format
- Remove is_dm column from channels table (dm detection by member count) - Rename member name column to userinfo — extensible json_flat format - Add json_flat.c/h library for compact JSON serialization - Fix join_sig message format: use ch_x25519+ch_ed25519 instead of channel_id string - Remove name from join_msg body (now in userinfo via json_flat) - Update chat_core, chat_sync, member_sync, db_manager to new format - Add topo_strategy.txt — архитектурные заметки по топологии
This commit is contained in:
1 parent
88d51349ea
commit
3dda701c67
26 files changed
+494
-325
No files matched your search
@@ -0,0 +1,25 @@
|
||||
/**
|
||||
* @file json_flat.h
|
||||
* @brief Парсер плоского JSON без вложенности: {"key":"value",...}
|
||||
*
|
||||
* Только строковые значения. Без malloc, без зависимостей.
|
||||
*/
|
||||
|
||||
#ifndef JSON_FLAT_H
|
||||
#define JSON_FLAT_H
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef int (*json_flat_cb)(const char* key, const char* value, void* arg);
|
||||
|
||||
int json_flat_parse(const char* json, json_flat_cb cb, void* arg);
|
||||
int json_flat_get(const char* json, const char* key, char* value_out, size_t value_sz);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
Reference in new issue
Block a user