WEB board

всеканоны и докиворкеры↗ iOS↗ Легаси
WEB-408 · Задача · — · web

[WEB370-J] SIP ship-dark lane и hard cap 5

Закрыт P1 · важно ведёт: — эпик: WEB-395
Суть
Источник: WEB370PLAN2. Зависимости: WEB370-C,F,G. Оценка: 1.5 дня. Loopback/high ports only; без Telnyx REGISTER/INVITE.

--- 30.08 ~16:00Z (Фабл): ПРИЁМКА GO (ACCWEB370J): dark-прогон as-is, отсутствие egress к Telnyx доказано, cap 5 (6-й отвергнут, второй транк отвергнут), passive не принимает. Ступень J ЗАКРЫТА. Отчёты: A1 ACCWEB370J-REPORT.md, WEB370J-REPORT.md + web370j-evidence/.
Чем закрывается (приёмка)
Ship-dark SIP gateway готов; synthetic soak 1→3→5 green; шестой звонок controlled reject; Telnyx REGISTER/INVITE невозможны в dark mode.
Доказательства
[2026-08-27 12:55Z] web408j в очереди A1: loopback SIP lane + RTP-доказательство + hard cap 5 негативом + lease-гейт. Наружу SIP не ходит.
[2026-08-27 13:40Z] WEB408J DONE: loopback SIP lane + RTP доказан, hard cap 5 негативом (6-й отклонён), unit disabled+lease-гейт. Наружу SIP не ходил. -> review.
[2026-08-27 20:29:19Z tickacc5] ВЕРДИКТ: частично доказано
Что проверил: открыл WEB408J-REPORT.md и qualification-summary.txt, channel-count before/after sixth, baresip-6-rejected.log, RTP counters и ship-dark counter; read-only сверил текущие /etc/web408j files/unit с source.
Что увидел: summary показывает 5→5 active, sixth_established=no, REGISTER=0, non_loopback_task_packets=0 и 3982 RTP packets в каждом направлении; шестой вызов получил SIP 503 без Call established. Текущий unit/config совпадает с source и disabled/inactive. Report утверждает 3985/3985, primary summary/TSV содержит 3982/3982; прогон старый относительно l60/l61.
Отрицательный тест: шестой loopback call отвергнут 503; provider REGISTER/INVITE и non-loopback packets равны нулю.
Чего не хватает: согласованный receipt, объяснение расхождения и свежая qualification после актуальной посадки; полный script не запускался, поскольку стартует runtime и перезаписывает evidence.

[2026-08-27 21:58Z EVID407408] Read-only current-state supplement. WEB-407: A1 snapshot has 0 matching Telegram/bot processes; telegram-call-native, bookbot and gptbot are loaded but inactive/dead, disabled, ConditionResult=no, ExecMainPID=0; /etc/web370/ACTIVE and lease are absent, and A1 web370-a1 release entrypoints are absent. Native source uses Telethon StringSession from TELEGRAM_STRING_SESSION (main.py:62; config.py:104-112), mounted through sealed EnvironmentFile /etc/web370/secrets/telegram-call-native.env (mode 0640; value not read); no persistent native SQLite session path is configured. bookbot/gptbot mode/state paths and Pi process count remain unproven because Pi and M1 SSH were unavailable; production credentials were not touched. Fixed-name units/lease gate and offline mock second-route rejection (409 webhook_conflict) are proven, but not a production duplicate proof. Owner decision required: approve one fenced authenticated health/start window after hash-qualified source/mode/state inventory, with one process/listener per actual consumer and a repeated identical update in disposable/non-production account proving one side effect/zero duplicates; no credential values, live calls or second production account.

[2026-08-27 21:58Z EVID407408] WEB-408: current A1 web408j-asterisk and all discovered A1 SIP/call units are inactive/dead, disabled, ConditionResult=no; relevant processes/listeners are 0; /etc/web370/ACTIVE absent; lease precheck rc=1; current systemd-analyze verify rc=0/0B. Source and installed asterisk.conf/extensions.conf/pjsip.conf/rtp.conf/unit compare cleanly (artifact manifest 10/10 OK). Current config enforces maxcalls=5 plus WEB408J_HARD_CAP=5 with GROUP_COUNT cap branch; transport is 127.0.0.1:15060, RTP 18000-18099, endpoint match 127.0.0.1/32, and baresip regint=0 with no registrar. Thus current ship-dark boundary and zero active REGISTER-capable lane are proven read-only. Existing dynamic summary remains stale/inconsistent: summary/TSV RTP=3982/3982 while WEB408J-REPORT claims 3985/3985; no runtime qualification was rerun because it starts processes and rewrites evidence. Dynamic 1→3→5 acceptance remains open. Owner GO is only needed for a future isolated synthetic rerun; provider credentials/live calls remain forbidden.

[BOARDTRIAGE] Последнее evidence 27.08 21:58Z: SIP lane disabled/inactive, hard cap=5 и шестой вызов отвергнут; RTP receipt расходится 3982/3982 vs 3985/3985, dynamic 1→3→5 ещё не выполнен.
Воркер
не привязан — привязать: curl -X POST https://bugs.wool2.online/api/web/assign -H 'content-type: application/json' \ -d '{"issueId":"WEB-408","session":"<имя tmux-сессии>","host":"m4"}'
Обновлён
2026-08-30T13:37:57.860Z