58 lines
4.9 KiB
Markdown
58 lines
4.9 KiB
Markdown
# Дайджест hour 2026-10-05 ~14:00 UTC
|
||
|
||
## Батч задач (1/1 закрыта)
|
||
|
||
1. **t-261005135853-186b42 [M] — ЗАКРЫТА** (гейтвей: входящие документы на диск).
|
||
Диагноз подтверждён: `harness/tg_inbox.py` качал только voice (voice-пайплайн),
|
||
documents/photo терялись — file_id в событии есть, файла нет (кейс 4 PDF-выписок
|
||
Alex 05.10, доставал вручную getFile'ом).
|
||
Фикс: `save_document()` — при kind=document|photo getFile→download→атомарная
|
||
запись (.part→rename) в `inbox/files/<file_unique_id>.<ext>` (новый
|
||
`paths.inbox_files_dir()`, env `SIMBIOT_INBOX_FILES_DIR`); фото — максимальный
|
||
размер. В MessageReceived теперь `file_path` (абс, открывается с любого уровня)
|
||
+ `file_name`/`file_size`/`mime_type` — триаж видит что за файл без getFile.
|
||
Идемпотентно по file_unique_id (повторный апдейт не перекачивает), сбой
|
||
скачивания (истёкший у TG файл, HTTP 400/410) не валит поллер — file_id
|
||
остаётся в событии для ручного достёгивания. Голосовые — как раньше.
|
||
Верификация: `tests/test_tg_documents.py` — 22 PASS (document e2e, photo e2e,
|
||
идемпотентность, сбой, _file_ext); регресс voice_video/seen_indication/
|
||
inbox_batch — зелёный. Поллер перезапущен, активен (systemd). Коммит c5c3e8f.
|
||
Живая проверка: следующий отправленный боту документ сам появится в inbox/files/.
|
||
|
||
## Батч входящих m-516173771..777 (7 сообщений, один разговор) — отвечено сводно
|
||
|
||
Контекст: Alex скинул 4 PDF-выписки → «гейтвей их не сохраняет» (→ задача выше,
|
||
закрыта этим же тиком) → «сделай реальную ссылку на оплату в баксах с alipay»
|
||
→ «на $100» → «ссылку» → «а тут уже почему-то нету алипей, хоть в предыдущей
|
||
линке был».
|
||
|
||
Сделано:
|
||
- Боевой $100-линк подтверждён и отдан: https://buy.stripe.com/3cIdR82WH4RpfPY3EY1B60c
|
||
(plink_1UNCSvBT53G7FGSQDqXJOE8W, price $100 USD one_time, livemode).
|
||
- Почему нет Alipay — разбрано по факам, а не догадкой: через live-API проверена
|
||
payment_method_configuration — alipay/wechat_pay/paypal `available=false`
|
||
(методы НЕ активированы в боевом аккаунте Stripe), card и amazon_pay — on.
|
||
Попытки: пересоздание линка с явными методами → «ensure the type is activated
|
||
in your dashboard»; Checkout Session с явными методами → тот же отказ;
|
||
включение display_preference через API → невозможно (available=false).
|
||
Вывод: единственный путь — ручной шаг в дашборде (Settings → Payment methods),
|
||
после чего пересоздание линка — одна команда. Alex'у дана инструкция и обещание
|
||
пересоздать по сигналу «алипей включил».
|
||
- Amazon Pay в payment links Stripe не поддерживается в принципе (список
|
||
допустимых payment_method_types его не содержит; он работает только динамически
|
||
в чекауте — потому и был виден в старых линках без явных методов).
|
||
|
||
## Инциденты/эскалации
|
||
|
||
- Эскалаций от нижних уровней за час нет (4 тихих минутных тика, 0 событий выше
|
||
порога — LLM не запускался, burn экономлен).
|
||
- В ходе теста поймал и починил собственный баг: ранние выходы save_document
|
||
возвращали кортеж (None, None) вместо None — тест ловит такие вещи именно
|
||
поэтому.
|
||
|
||
## AUM-фильтр часа
|
||
|
||
Фикс гейтвея — прямая база долгосрочной AUM: до него входящие документы Алекса
|
||
(выписки банков — материал для учёта AUM/оборотки) терялись физически, а ручное
|
||
доставание съедало тики уровней. Alipay-линк — короткий доход (предзаказы $100),
|
||
но блокер снят до предела: осталась одна ручная кнопка у Alex.
|