VEU.WathBody/1-docs/4-modules/m03-program-store/readme.md

2.7 KiB
Raw Blame History

Модуль m03-program-store — план разработки

План по алгоритму d-dev (std1\_rules\d\d-dev.md), адаптация к сервисному модулю; шлюзы «Пользователь!» — d-dev-4. Требования — module_reqs.md.

Шаг d-dev Состав Статус
0. Персистентная подготовка module_reqs.md, readme.md, SKILL.md ✅
1. Список единиц к реализации методы ProgramStore — module_reqs разд. 4 (7 методов) ✅
1.3. Утверждение списка — Пользователь! ✅ (2026-10-18)
2. Спецификации единиц api_specs\ модуля — 2 файла (жизненный цикл 01; чтение 02) ✅
2.4. Утверждение спецификаций — Пользователь! ✅ (2026-10-18)
3. Код и тесты Server.WatchBody.Core\Programs\ProgramStore.cs + интеграционные тесты (docker watchbody-pg): 19 тестов, все PASS; сборка 0 ошибок ✅
3.4. Утверждение реализации — Пользователь! ✅ (2026-10-18)
4. Завершение сборка и тесты зелёные; критерии приёмки module_reqs разд. 5 проверены ✅ (2026-10-18: сборка 0 ошибок, тесты Web 44/44 + Core 55/55 PASS на момент закрытия; после З-35 — Core 56/56)

Примечания:

  • Разработка поштучно: методы сервиса небольшой группой (жизненный цикл 1–4, чтение 5–7) — шлюзы 1.3/2.4 можно проходить одной группой.
  • Потребители ProgramStore (подключение в следующих модулях): m05 — создание draft author=rules; m06 — импорт пакета программы; m08 — admin-API программ. Sync в m02 остаётся на репозиториях (v1).
  • Интеграционные тесты Core-сервисов живут в Server.WatchBody.Web.Tests (общая docker-инфраструктура: TestApp, подключение из конфига); юнит-инфраструктура Core.Tests (fake-транспорт ConnectionStringTest) для сервиса над репозиториями не подходит.
  • jsonb нормализует пробелы — сравнение body в тестах через JsonElement.DeepEquals.
  • Прогон тестов — PostgreSQL 17 в docker watchbody-pg (порт 5433, БД watchbody), как в m01/m02.