Commit Graph

  • 4df7195a58 debug: add ADDR_SYNC logs for BGP node_put DELETE and member_sync recv ac Evgeny 2026-07-19 00:09:46 +0300
  • 586d46f1e6 fix: WELCOME wire format — flags+update_sig parsing, peer_needed gap, invalid join_sig skip Evgeny 2026-07-18 23:53:04 +0300
  • 39a376e255 fix: BGP и чат больше не затирают адреса друг друга в node_addresses Evgeny 2026-07-18 23:23:14 +0300
  • 70930b784f chatgui: fix — локальные адреса не записывались (g_cc.initialized до sync_my_addresses) + таймаут коллбэк 12→20 байт Evgeny 2026-07-18 22:18:01 +0300
  • 57f861f360 chatgui: диагностические логи ADDR_SYNC во всех точках записи/удаления адресов в БД Evgeny 2026-07-18 21:46:46 +0300
  • 0b385dca50 chatgui: обновление статуса/адресов узлов через чат-протокол Evgeny 2026-07-18 21:28:59 +0300
  • 20f5e6c953 sqlite: add cache_size/mmap_size/temp_store PRAGMAs to db_sync and topo_group — 159x insert speedup, fix test_chat_sync_stress timeout Evgeny 2026-07-18 20:16:24 +0300
  • 0e0ad9316a fix race condition: DB_READY lost when utun thread starts before gui_bridge_init Evgeny 2026-07-18 18:08:09 +0300
  • 29e2527b6b consolidate 3 SQLite connections into 1 shared handle Evgeny 2026-07-18 17:33:29 +0300
  • 853297290f chatgui: fix NodesPage truncated Node ID + add DB diagnostics Evgeny 2026-07-18 17:04:50 +0300
  • 93665c50f0 etcp: remove dead set_*_cbk functions, use add/remove only Evgeny 2026-07-18 16:52:43 +0300
  • ef1922327a rename ready_cbks → init_cbks (connection init, not fully ready) Evgeny 2026-07-18 16:38:24 +0300
  • ef3d7c3f37 chat_core: call ensure_channel_ready on invite — create msg/peers tables + register in db_sync Evgeny 2026-07-18 16:14:53 +0300
  • 4188afb3c5 db_sync: lazy-register channel instance on INIT_SYNC when not pre-registered Evgeny 2026-07-18 16:08:47 +0300
  • a510cb0018 auto_connect: add DB dump diagnostics (node_addresses state, node existence, db path+status) - chat_core.c: dump node_addresses total, per-node counts, nodes lookup before addr query - topo_group.c: log db path, rc, and db pointer after sqlite3_open Evgeny 2026-07-18 15:47:05 +0300
  • 3aadaa3396 fix: sqlite3_open wrong path in topo_group.c (db_path vs db_path/chats.db), keep separate connections for perf Evgeny 2026-07-18 15:41:02 +0300
  • 9245a30fa5 auto_connect: diagnostic logging for early FAIL paths in chat_core_connect_auto Evgeny 2026-07-18 15:06:23 +0300
  • aa1ed006d5 etcp: instance-level conn status callbacks (NEW/UP/DOWN/DELETE), fix member online in chatgui Evgeny 2026-07-18 14:51:01 +0300
  • ef27633a88 chatgui: clear clipboard before setText for reliable copy on Linux Evgeny 2026-07-18 13:53:01 +0300
  • e71cae16c1 db_sync: unified msg table — one DB, one table per channel Evgeny 2026-07-18 13:50:35 +0300
  • 7c2798ec0e debug: add diagnostic logging for ETCP recv/INIT/dispatch paths Evgeny 2026-07-18 13:04:10 +0300
  • a65478edcc chatgui: fix duplicate connection on invite when node already connected Evgeny 2026-07-18 11:24:51 +0300
  • 93871c592b db_sync: timeout for stuck sync_state=1, handle ERROR properly Evgeny 2026-07-18 10:52:54 +0300
  • de4099a26b logging: cleanup connection establishment logs Evgeny 2026-07-18 10:35:31 +0300
  • 3cd494bead chatgui: auto-clean build dir on generator change Evgeny 2026-07-18 03:31:55 +0300
  • 28c788658a chatgui: Ninja + parallel build for Windows speedup Evgeny 2026-07-18 03:30:40 +0300
  • 8f695cc828 AGENTS.md: add chatgui config and log file paths Evgeny 2026-07-18 03:22:29 +0300
  • 3bf5a7b01d Revert hardcoded default for db_sync in chatgui — enabled via config file instead Evgeny 2026-07-18 03:21:37 +0300
  • 2a826b62bc chatgui: enable db_sync=info debug category by default Evgeny 2026-07-18 03:20:03 +0300
  • 4b7c7738de debug: add DEBUG_CATEGORY_DB_SYNC (26) + TRACE logs for db_sync, merkle_sync, chat_sync, member_sync Evgeny 2026-07-18 03:19:46 +0300
  • 9e34e9f838 fix chatgui: self in member list, online status on reconnect, lb spam Evgeny 2026-07-18 02:55:10 +0300
  • 3e0b9483b7 fix chatgui: channel persistence & peer list after restart Evgeny 2026-07-18 02:46:53 +0300
  • 6354318255 fix: replace arpa/inet.h with platform_compat.h in chat_core.c too Evgeny 2026-07-18 00:51:18 +0300
  • 93f265c0a9 fix: replace <arpa/inet.h> with platform_compat.h in chatgui (cross-platform ntohs) Evgeny 2026-07-18 00:48:11 +0300
  • c594375023 fix: derive node_id from pubkey instead of privkey Evgeny 2026-07-18 00:41:38 +0300
  • 6f4025e420 refactor: move sqlite3 db from topo_group to UTUN_INSTANCE, remove conn_mgr/topo_group deps from chatgui Evgeny 2026-07-18 00:10:06 +0300
  • 52587c4f2b move ETCP_ID_NAT_DETECTION to etcp_api.h alongside other ETCP_IDs Evgeny 2026-07-17 21:32:48 +0300
  • b238089678 refactor(nat_detection): remove BGP dependency, auto trigger on conn_up, clean API Evgeny 2026-07-17 21:23:40 +0300
  • 90363650e3 refactor(nat_detection): self-sufficient module with own ETCP_ID (0x02) and docs Evgeny 2026-07-17 20:45:49 +0300
  • 910cac8dce refactor: separate NAT detection from topology into standalone nat_detection module Evgeny 2026-07-17 19:49:54 +0300
  • 8180676120 fix: peers table schema mismatch causing silent member write failures Evgeny 2026-07-17 18:16:21 +0300
  • 0381f4df89 Убраны TCP_TIMESTAMPS и TCP_KEEPALIVE из lwip_tcp_opts.h (не используются, конфликтовали с ws2ipdef.h на Windows) Evgeny 2026-07-17 17:49:15 +0300
  • 706ef5b472 etcp_connections.h: data[0] -> data[] (C99 flexible array, fix -Wstringop-overflow) Evgeny 2026-07-17 17:40:25 +0300
  • 3884af7eb8 ntp_time.h: replace netinet/in.h with platform_compat.h for Windows build Evgeny 2026-07-17 17:36:23 +0300
  • 960cde3eda chatgui: add Status page in settings (NTP + connections status) Evgeny 2026-07-17 16:25:55 +0300
  • f0bb03c2cf db_sync: datahash removed, Ed25519 signature mandatory, PK=(timestamp,author_signature), chain_hash includes signature, signed message=ts||json Evgeny 2026-07-17 15:44:19 +0300
  • 05b24d36bb db_sync: fix dh_match premature sync complete — send tail when mc > tp+1 Evgeny 2026-07-17 11:48:56 +0300
  • 2792586de7 db_sync: add INFO diagnostics for message sync flow tracing Evgeny 2026-07-17 00:13:27 +0300
  • db67767405 fix: demote 6 crypto diagnostic logs from INFO to DEBUG Evgeny 2026-07-16 23:35:08 +0300
  • 4fa5b0361f feat: show decoded invite details (node id, address:port) in JoinDialog Evgeny 2026-07-16 23:22:32 +0300
  • 55e3a7af94 fix: getInviteAddresses — use active direct-IP connections instead of DB peer list Evgeny 2026-07-16 23:20:26 +0300
  • 2aa559acaf debug: add full ECDH/session-key diagnostics (6 points) Evgeny 2026-07-16 22:13:35 +0300
  • cdcc32cf84 fix: move DECRYPT FAIL/collision/reinit logs from DEBUG_CATEGORY_DEBUG to proper categories Evgeny 2026-07-16 22:03:33 +0300
  • 95061d3723 fix: demote INIT retry spam (link/send logs) to DEBUG_DEBUG Evgeny 2026-07-16 21:41:50 +0300
  • 5b88d58dae fix: demote spam auto_connect logs to DEBUG_DEBUG Evgeny 2026-07-16 21:11:53 +0300
  • f039031883 fix: check conn_queue_entry->peer_node_id instead of conn->peer_node_id Evgeny 2026-07-16 21:05:08 +0300
  • c3354938e1 fix: peers_* table creation + GUI_ERROR to log + cross-connect conn reuse Evgeny 2026-07-16 20:51:24 +0300
  • abee0ef3a9 chatgui: add --asan flag to build_linux.sh Evgeny 2026-07-16 19:33:52 +0300
  • f3ac1cbb06 chat_sync: fix double-free in auto_connect — clear ca_state in ac_result_cb on success Evgeny 2026-07-16 19:24:13 +0300
  • bfa3e666d4 fix test_uasync_socket_race: increase listen() backlog from 32 to 1024 Evgeny 2026-07-16 19:22:06 +0300
  • a8ce7d47b7 test_bgp_triangle: reduce keepalive_timeout from 2000ms to 200ms (10x speedup, 13.2s -> 1.27s) Evgeny 2026-07-16 19:13:05 +0300
  • 3d04c37f56 stcp: add on_close callback to stcp_server_create/stcp_client_connect; member_sync: add join_ts/update_sig/update_ts fields, verify update_sig in apply; topo_node_sqlite: add join_ts/update_sig/update_ts to member_put, add member_get_join, add node_update_verified; chat_sync: include join_ts in join_msg, add update_sig/update_ts to CHANNEL_INFO_RESP; WELCOME verify join_sig; tests: use generated node_ids, reduce max ticks Evgeny 2026-07-16 19:04:00 +0300
  • 0137a1bad4 chatgui: preserve input focus on chat refresh (save/restore focusWidget in loadChannel) Evgeny 2026-07-16 13:03:23 +0300
  • 51d47ea6a8 chatgui: restore input focus after sending message Evgeny 2026-07-16 12:54:34 +0300
  • c4d1f984bd chatgui settings: add Database tab with integrity check (quick/full) and optimize Evgeny 2026-07-16 12:46:40 +0300
  • 03310db2cd test_chat_sync_stress: simplify to 20 batches, add profiling (avg per-record time, sync time, total) Evgeny 2026-07-16 12:45:28 +0300
  • bb425c6722 db_sync v2: positional sync per-peer (synced_pos), datahash instead of chain_hash, no cascade on PUSH, single cascade after SEND_DATA batch, startup chain verification. PRAGMA synchronous=NORMAL + wal_autocheckpoint=10000 for performance. Evgeny 2026-07-16 12:31:52 +0300
  • 0479c309bb Диагностика синхронизации: merkle_sync DEBUG_DEBUG логи обмена; убран спам auto_connect no IPv4; сохранение адреса инвайтера из ETCP; детали DECRYPT FAIL (link_state/enc_errs) Evgeny 2026-07-16 00:41:51 +0300
  • 0d5a72c40e chat_sync: node_name теперь в пакетах — CHANNEL_INFO_RESP/JOIN/PEER_UPSERT передают имя, верификация использует имя из пакета (не из БД) Evgeny 2026-07-16 00:32:09 +0300
  • 3f0fdad754 config_updater: поддержка создания конфига с нуля (без файла); новый файл — собирается с нуля, существующий — insert_or_replace Evgeny 2026-07-15 23:47:00 +0300
  • e325b84a8e config: одно открытие файла — parse_config_from_buf вместо повторного fopen; убран read_file_to_mem Evgeny 2026-07-15 23:39:01 +0300
  • ef24af7d24 Ключи: node_id из SHA-256(privkey) через весь конфиг; приоритет privkey — pubkey/node_id всегда выводятся из него; CHANNEL_INFO_RESP: верификация inviter_join_sig через ETCP-ключи Evgeny 2026-07-15 23:13:29 +0300
  • da86841516 Диагностика: WARN при мутации конфига (ключи/node_id) + детали при invalid sig в JOIN/CHANNEL_INFO_RESP + предупреждение при расхождении node_id инвайта и ETCP Evgeny 2026-07-15 22:44:33 +0300
  • 895eb0abbf Убрал спам-логи ETCP SEND/RECV/DECRYPT OK + добавил диагностику синхронизации мемберов (DEBUG_CATEGORY_DEBUG) в ключевые точки topo_group, merkle_sync, member_sync, chat_sync Evgeny 2026-07-15 22:25:19 +0300
  • e708940bcd debug: upgrade router_deliver to DEBUG_INFO, show cb ptr Evgeny 2026-07-15 22:06:54 +0300
  • d161782b46 fix: merkle_sync.c linked-list -> queue lookup, upgrade debug logs to INFO Evgeny 2026-07-15 21:59:29 +0300
  • d71753fa79 debug: add diagnostic logs for chat invite connect flow Evgeny 2026-07-15 21:42:16 +0300
  • a7ecee01f5 etcp: replace connections linked-list with indexed ll_queue, add state/ref_count lifecycle Evgeny 2026-07-15 19:56:47 +0300
  • 6902f5fd95 chat: add ll_queue with index for P2P connections (replaces linear search) Evgeny 2026-07-15 18:15:16 +0300
  • d0af503d01 config: fix allow_all parsing — accept yes/1/true like other bool options Evgeny 2026-07-15 18:01:54 +0300
  • 3368abad2a etcp+chat: add DEBUG_INFO logs for invite/crypto handshake debugging Evgeny 2026-07-15 17:53:25 +0300
  • d83d281fa0 config: add [allowed_keys] allow_all=yes by default, add [gui] as valid section Evgeny 2026-07-15 17:34:48 +0300
  • 4c8e5f6223 db_sync+chat_sync+etcp: fix conn init race, reduce keepalive log spam Evgeny 2026-07-15 17:25:14 +0300
  • 5b749d6cc8 chatgui: db_path is now a directory (chat_data/) with chats.db and sync/ inside Evgeny 2026-07-15 17:09:11 +0300
  • 6252556a02 chatgui: migrate message sync from chat_sync to db_sync Evgeny 2026-07-15 17:02:47 +0300
  • e86944d661 style: reformat db_sync.c — break 500-char lines into readable ~130-char max Evgeny 2026-07-15 16:32:36 +0300
  • acaa3a767c refactor: move chat_sync and member_sync to direct ETCP P2P, bypass etcp_router Evgeny 2026-07-15 16:13:45 +0300
  • d840b458a7 fix: pause router retransmits before clearing ETCP queues on reinit Evgeny 2026-07-15 15:37:03 +0300
  • 9378b18ce7 fix: defer connection_close in ready_cb using uasync_call_soon Evgeny 2026-07-15 15:00:05 +0300
  • f669254da3 feat: hard crash on etcp_connection_close from callback chain Evgeny 2026-07-15 14:43:47 +0300
  • 371208d489 chatgui: выпилить все записи в БД из GUI потока (DbManager) Evgeny 2026-07-15 14:26:32 +0300
  • 409a99f56b feat: cross-connect collision resolution via is_server master + collision flag Evgeny 2026-07-15 13:53:15 +0300
  • 0912499309 fix: segfault in callback chain iteration — save next before invoke Evgeny 2026-07-15 12:46:37 +0300
  • abbb6de701 fix: block redundant conn reinit on cross-connect INIT (reset_done flag) Evgeny 2026-07-15 12:17:14 +0300
  • 2bf7dcc6f0 debug: comprehensive connection diagnostics — recv/send/reinit paths Evgeny 2026-07-15 11:46:44 +0300
  • f7d88e5532 fix segfault in ca_ready_cb: ca_state owns all ca_ctx, single cleanup point Evgeny 2026-07-15 11:21:31 +0300
  • 1e7585438d chat_core_connect_auto: add outbound conn to inst->connections Evgeny 2026-07-15 11:05:27 +0300
  • a8164baf41 chat_core_connect_auto: set peer_node_id on ETCP_CONN Evgeny 2026-07-15 10:51:53 +0300
  • fc6a873b5c etcp_connections: reuse existing outbound link for incoming INIT by addr Evgeny 2026-07-15 10:46:33 +0300
  • 0adf7d07ef chat_core_connect_auto: dedup addresses by (addr,port) Evgeny 2026-07-15 10:32:06 +0300