From e8843d9499e5de76a7a8397f89d21dbe69363b1f Mon Sep 17 00:00:00 2001 From: evgeny Date: Thu, 22 Oct 2026 19:53:31 +0200 Subject: [PATCH] Track remaining media supernode replication audit separately --- doc/tasks.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/doc/tasks.md b/doc/tasks.md index 267d4785..50b616c1 100644 --- a/doc/tasks.md +++ b/doc/tasks.md @@ -138,6 +138,15 @@ Десять целевых наборов ASAN+UBSan с detect_leaks=1: PASS (/tmp/media-block-asan-test_*.log). Windows runtime/сборка не проверялись. Синхронные проверка и сборка блоков остаются в uasync. +[ ] **media_delivery: отдельно проверить и исправить репликацию суперузлов** — выявлено чтением кода 22.10.2026: + md_handle_super_repl проверяет только заголовок, затем читает num_entries записей по 56 байт без проверки payload. + md_handle_super_ack без проверки уменьшает uint8_t inflight_count: повторный/чужой ACK может исказить счётчик. + super_sync.last_recv_id записывается при приёме репликации и при ACK, а затем используется для SUPER_HELLO: + требуется разделить направление курсоров и сопоставить ACK с реально ожидающей пачкой. + Проверить также сужение 64-битных SQLite id до uint32_t seq/ack_seq и повторную отправку той же пачки в inflight. + Это отдельный участок; завершённые исправления BLOCK_CHUNK/BLOCK_DONE/relay не означают его корректность. + Динамическое воспроизведение этих дефектов и план исправления ещё не выполнены. + [+] **test_stream_service: убрать зависимость bootstrap-проверки от гонки TCP-handshake** — исправлено 22.10.2026: Падение на строке 409: REINIT=0 при probes=1/subflows=1/failures=0 и доставленной первой пачке. Встречный TCP-линк успевает сообщить peer_reset_id до ETCP CONFIRM: начальная эпоха уже известна,