Skip to content

API v6 learning cycle with 112 registration and reviewed DDS snapshots

Mingiyan requested to merge codex/full-r1-20260922 into main

Обновление интеграции 24.09.2026: ветка согласована с main 58b555f8 (!7 (merged)–!11 (merged) и !13 (merged)), commit 3220b45e. Устранены конфликты .gitignore, CI и генерируемой документации; сохранены backend jobs и обязательные PostgreSQL/Compose jobs, исправления аудита и HTTP-адаптера. Локально документационная валидация и 228 тестов PASS; PDF пересобран (166 страниц), контрольные страницы визуально проверены. Приёмочные статусы и история сохранены.

MERGE BLOCKER: product/ci-manifest.json отсутствует; tools/ci_product.py validate воспроизводимо падает. В docs/startup/stack-review.json нет выбранных компонентов SP01. Для честной настройки манифеста нужны реальные команды/артефакты build/test/integration/package/deploy/rollback и доказательства выбранного стека. Продуктовые gates сохранены, Draft не снят, main не изменён. Следующие исторические результаты относятся к 2c11075e; проверку объединённой версии показывает новый head pipeline.


Реализован учебный контур API v6 на PostgreSQL: доступ, роли, группы, аудит, источники и утверждённые сценарии, занятия 112/ДДС, попытки, экспертный пересмотр, отчёты PDF/CSV/JSON, комментарии и сертификаты. Реализованы 68 из 116 канонических операций; число операций не является процентом готовности ТЗ.

Преподаватель может подготовить задания ДДС из опубликованного банка, карточек обучаемых 112 или смешанного набора. Ранее learner_snapshot/mixed возвращали 503. Теперь каждый снимок связан с точными исходными attempt/card revision и SHA-256, принадлежит преподавателю той же организации и требует scenario_approve. Преподаватель вводит обезличенный текст и учебный адрес, выбирает опубликованное задание ДДС и явно подтверждает применимость его рубрики. Сервер переносит только разрешённые структурные поля; контакты, исходные координаты/адреса, произвольные факты, служебная история и скрытые ответы 112 не попадают в новую попытку. Ручную очистку свободного текста проверяет эксперт; автоматического обнаружения персональных данных нет. Рубрика, эталоны, каталог форм, таймеры и происхождение сохраняются в frozen bank. Каждая выдача получает новую учебную регистрацию и время направления. Все три режима используют общий repeat_shuffled; изменения исходника и перезапуск не переписывают выданное задание.

АРМ 112 поддерживает несколько типов активного классификатора, независимые условные формы, явные правила служб и отдельное подтверждение регистрации. Черновой выбор не направляет службы; информационные получатели отделены от реагирующих. Без утверждённого каталога/предметного профиля зависимые действия закрыты. Каталог задаёт доверенный оператор через --operator-catalog; синтетические каталоги и решения в тестах не являются утверждениями заказчика.

Учебные команды и локальные черновики восстанавливаются через IndexedDB с изоляцией пользователей, точными event_id/seq/revision/Idempotency-Key и согласованием вкладок. Пересмотр оценки требует полномочия, ревизии, причины и доказательств; pending_review не становится нулём. Отчёты сохраняют неизменяемые карточки, события, оценки и комментарии. Контрольный разбор закрыт до необходимых условий. Сертификат связан с точной успешной оценкой завершённого занятия; пересмотр отзывает прежний PDF.

Проверка коммита 2c11075e: локально 93 PostgreSQL 17.11/HTTP, 9 Python unit, 10 Node client и 227 документационных тестов — успешно. В локальном Edge прошли 6 проверок подготовки снимка, ручного подтверждения, смешанного набора, приватности и выполнения ДДС до оценивания; ошибок JavaScript нет. Временные схемы и тестовый сервер удалены, PostgreSQL остановлен. Стартовый PDF пересобран (166 страниц); изменённые страницы визуально проверены, ссылки и provenance прошли проверку. Пересчитаны зависимые fingerprints приёмочных процедур; результаты продукта остаются Not run. Локальный архив чистого коммита: SHA-256 fa1a32f6fc34a7b14fbf5fb8e939b06e9e37514ef8eefa4d54960f0be1d1af13.

GitLab pipeline #10104, commit 2c11075e: документационная валидация, backend build, 93 PostgreSQL 17.11/HTTP, 9 Python unit, 10 Node client, 227 документационных тестов, research и доставка документации — SUCCESS. Получены PG/JUnit/build artifacts; хеши всех 153 файлов CI-сборки совпали с локальным чистым коммитом. Локальный браузерный прогон не выдаётся за CI. Общий pipeline FAILED на validate:product: Application code requires product/ci-manifest.json. Зависимые продуктовые стадии skipped; дополнительный manual research job не запускался.

Полный R1 не готов. Остаются дополнительные действия АРМ, визуальный редактор и реальные утверждённые формы/эталоны, адаптация и рекомендации, ИИ/SIP, карты, прогноз, production manifest, стек SP01, стенд и предметная приёмка. Product gate не ослаблен. Инструкции: backend/README.md, backend/LEARNER_SNAPSHOTS.md, backend/OPERATOR_112.md, backend/RECOVERY.md, backend/ASSESSMENT_REPORTS.md и backend/feedback-certificates.md. Дополнительные read-only UI-маршруты operator-context и snapshot-preview не увеличивают число канонических API.

Edited by am@muniev.ru

Merge request reports

Loading