API-R1-01/02: типизированный контракт и диагностика входных данных
Принятое решение по актуальности — 20.09.2026
Переработать контракт входа/API. Сохранить полезные DTO и диагностику; убрать отменённые обязательные поля, сохранить числовые/дробные ID и их типы, принять railway по новому ТЗ.
Основание: APP-2026-09-19, аудит исходной версии f1ded11293255838b3155f515ae11cc7522c63ca относительно main 43e20364f00101c7d61642dbcfa349c8f0b14ba4. Рекомендации приняты владельцем проекта; фиксация разрешена командой «Фиксируем».
Связанные задачи общего Beads trasser:
-
trasser-data02— [DATA02] Обновить входную модель, ID и системы координат; исполнительrylengim. -
trasser-data03— [DATA03] Обновить импорт и диагностику; исполнительrylengim. -
trasser-data04— [DATA04] Согласовать контракты модулей и API; исполнительrylengim. -
trasser-api02— [API02] Обновить реальный API и OpenAPI; исполнительrylengim.
Полный реестр: trasser-data01, trasser-plan-20260920. Перенос выполнять в рамках существующих критериев задач; сохранять ссылку на исходную версию и прикладывать проверки нового кандидата. После подтверждённого переноса старые MR можно закрывать как заменённые. Для !32 (closed) уже опубликован нормативный пакет через !33 (merged); остатки старой реализации/CI рассматриваются отдельно.
Проверка актуальности была статической, с чтением существующего CI; новых испытаний приложения не было. Принятие рекомендаций не является приёмкой кода. Исторические описания и результаты ниже сохранены; их PASS не подтверждает новый baseline. Фиксация не меняет ветки, состояние MR, назначения или личные решения проверяющих.
Первый пакет API-R1-01/02: HTTP-ответы описаны DTO и синхронизированы с OpenAPI 1.1.0. Ошибочные типы ссылок больше не приводятся к строкам; циклы upstream блокируют STRICT; ошибки импорта содержат известное поле, ID и позицию, БД и файлы откатываются. Добавлены HTTP-регрессии и таблица требований в docs/runtime-contracts/r1-api-intake-review.md. Локально прошли 106 Java-тестов, 17 независимых HTTP-тестов, 4 самопроверки verifier, 86 CI-самопроверок и 730 проверок документов. Синтетический файл 3 000 058 504 байт импортирован за 63 с на Windows/H2, пик процесса 1,36 ГБ; проверка экспорта — 111 утверждений. SHA-256 JAR и ограничения зафиксированы в docs/acceptance-evidence/api-intake-local-2026-09-18.json. Это частичный пакет: внешний формат, асинхронный Dataset, идемпотентность и полная конкурсная приёмка остаются открытыми. CI этого MR проверяет Linux/PostgreSQL и обе сборки. Beads недоступен по SSH; статусы задач не изменялись. Подготовлено Codex по поручению пользователя; личное review Андрея не подменяется.