|
All checks were successful
CI / changes (pull_request) Successful in 9s
CI Trade-In / changes (pull_request) Successful in 9s
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / backend-tests (pull_request) Successful in 3m10s
Четыре правки HOLD-ревью PR #2732, форма таблиц не меняется: 1. Коллизия номера: 232_listings_observation_time_meaning.sql несёт открытый PR #2742 (не main, поэтому пропущено в прошлый раз). Переименовано 232 -> 233 (git mv, история сохранена), manifest обновлён. Урок задокументирован в шапке файла: сверять номер нужно по main И по всем открытым PR-веткам. Перепроверено дважды (main + 5 остальных открытых веток) — 233 свободен. 2. payments_status_check дополнен пятью реальными in-flight статусами из канонического источника (OpenAPI-спека developer.tbank.ru/schemas/eacq/ openapi.yaml, схема Confirm-2, v1.24): CHECKING, CHECKED, PROCESSING, COMPLETING, COMPLETED. Это статусы, которые GetState/CheckOrder вернёт по зависшему платежу — их читает реконсиляция PR-E; пропуск реального значения был единственным опасным направлением ошибки CHECK. 3. Блок про источник статусов переписан: убрана ссылка на сторонний Go-клиент и формулировка "enum рендерится клиентским JS" — источник истины теперь openapi.yaml. Отдельно зафиксировано: GetState/CheckOrder объявляют Status свободной строкой (maxLength: 20, без enum) — наш CHECK строже контракта поставщика, осознанно. 4. Контракт 'UNKNOWN' переадресован: теперь явно на обработчик нотификаций И задачу реконсиляции (GetState/CheckOrder, PR-E), а не только на вебхуки. Побочно подтверждено спекой: AUTHORIZED_AND_CHARGED/RECEIPT_REGISTERED отсутствуют (плюс maxLength:20 делает первое физически невозможным); 3DS_CHECKING/3DS_CHECKED и PREAUTHORIZING есть; ATTEMPTS_EXPIRED/PAY_CHECKING нет; PARTIAL_REVERSED/REFUND_FAILED тоже нет в спеке — оставлены как безвредный запас, комментарий перестал ложно утверждать обратное. Полный pytest: 3858 passed, 10 skipped, 0 failed. |
||
|---|---|---|
| .. | ||
| app | ||
| data/sql | ||
| scripts | ||
| tests | ||
| .dockerignore | ||
| Dockerfile | ||
| pyproject.toml | ||