5.2 KiB
Raw Blame History

Проверка и поставка

Выполнено при apply 23.10.2026

  • Ветка arm-core: statements-lib; ветка библиотеки: statements-library-packaging-checks.
  • Версия библиотеки: 9 тестов (включая приоритет маркера, оба fallback и явно переданный путь).
  • Библиотека: 291 тест проходит, включая существующие golden-сценарии; исправлен старый путь RULES_DIR в tests/test_loader.py.
  • Wheel и sdist: /tmp/statements-library-release/, рядом README и SHA256SUMS. Все 8 YAML присутствуют в обоих артефактах. Wheel установлен в чистое окружение, из /tmp с python -I проверены импорт, стандартные правила и версия 0.1.1. Публикации в реестр не было.
  • arm-core: make lint проходит (Ruff, форматирование 303 файлов, mypy 169 исходников ядра).
  • Интеграция: test_intake_statements_version_mismatch проходит; все 14 тестов test_statements_v2_edit.py проходят при доступе к локальному PostgreSQL.
  • Полный unit-прогон: 1556 passed, 10 skipped, 3 failed при DEBUG=false. Два сбоя dev-маршрутов связаны с параметром запуска: тестовое окружение требует DEBUG=true. Повтор с DEBUG=true: 61 passed (все случаи соответствующего теста маршрутов, test_me_and_dev_token.py и профильные тесты движка/домена). Оба сбоя dev-маршрутов устранены корректным параметром запуска; продуктовый код не менялся.
  • Конфигурация: исключён старый pytest testpath; arm_statements явно third-party в Ruff; mypy использует аннотации внешней библиотеки без проверки её внутренних ошибок и строгих overrides хоста.

Уточнения для отдельного change общих docs

  1. ../docs/context/03-architecture.md: общая нормализация поставляется как дистрибутив pylib-ai-arm-statements, импорт arm_statements; исходники/YAML обслуживаются в репозитории библиотеки, встроенной копии и sync-statements в ядре нет. Локальный make venv устанавливает библиотеку; make install переустанавливает её; путь задаётся STATEMENTS_DIR.
  2. ../docs/context/07-open-questions.md: требуется согласовать идентификатор поставки между сервисами и ядром (маркер VERSION или версия дистрибутива) и выпуск уникальных версий. Новый номер OQ не назначается этим локальным change; доменные правила §7/§11 не меняются.
  3. Комментарий recognition_job.statements_version в DBML по-прежнему относится к прежней схеме: его уточнение остаётся отдельным документальным обновлением без новых полей и миграций. Описание service.statements_version общей JSON-схемы уже согласовано отдельным docs change.
  4. По явному выбору пользователя общая схема обновлена отдельным change ../docs/openspec/changes/document-statements-library-contract в одноимённой ветке. Изменены только два description; JSON без этих аннотаций полностью совпадает с прежним. Все 18 примеров docs валидны, тест test_vendored_contracts_are_identical_to_docs проходит. Точечные заметки добавлены в 03-architecture, 07-open-questions и 09-delivery-plan; статус остальных сервисов не изменяется.

Границы

.env.test, tests/test_config.py и посторонние файлы не изменялись этим apply. Основные specs не синхронизированы, change не архивирован. Неподтверждённые проверки не отмечаются выполненными.

Итоговый прогон после согласования docs

DEBUG=true pytest tests -m "not integration": 1559 passed, 10 skipped, 1125 deselected. Все 18/18 задач arm-core и 3/3 задачи отдельного docs change выполнены. Общий контракт, lint/type-проверки, тесты библиотеки и профильная интеграция подтверждены. Оба change остаются открытыми до отдельного sync/archive.