Описание функции
Зафиксировать и (опционально) выровнять naming boundary:
- HTTP:
Controllers/Api/Manager/*, Controllers/Api/Web/*
- Domain facades (MS2-style):
Controllers/Cart, Controllers/Order, Controllers/Customer, Delivery/Payment…
Сейчас оба живут под Controllers/ — disinformation для ревью и агентов.
Проблема, которую решает
Clean Code: имя вводит в заблуждение. Контрибьютор кладёт HTTP-логику в domain facade или наоборот. Аудит тратит время на объяснение «это не контроллер».
Предлагаемое решение
Минимум (docs)
- Секция в README/AGENTS (то, что коммитится) или
docs/комментарий в ServiceRegistry: таблица «ключ DI → класс → роль».
- PHPDoc на
Cart/Order/Customer: «Domain facade, не HTTP controller».
Опционально (rename, отдельный PR)
MiniShop3\Domain\Cart\Cart (или Facades\) + alias/bc layer на один major.
- Обновить
ms3_cart / class settings overrides.
Не смешивать rename с #362 (thin facade) в одном PR, если rename большой.
Альтернативные варианты
- Ничего не делать — только устное знание maintainers.
- Rename без docs — ломает кастомные extends у сайтов.
Примеры использования
Ревьюер видит Controllers/Api/... = HTTP; Domain/... или явный PHPDoc = facade для $ms3->cart.
Критерии приёмки
Дополнительный контекст
Tracker #361. Зависит логически от стабилизации #362.
Описание функции
Зафиксировать и (опционально) выровнять naming boundary:
Controllers/Api/Manager/*,Controllers/Api/Web/*Controllers/Cart,Controllers/Order,Controllers/Customer, Delivery/Payment…Сейчас оба живут под
Controllers/— disinformation для ревью и агентов.Проблема, которую решает
Clean Code: имя вводит в заблуждение. Контрибьютор кладёт HTTP-логику в domain facade или наоборот. Аудит тратит время на объяснение «это не контроллер».
Предлагаемое решение
Минимум (docs)
docs/комментарий вServiceRegistry: таблица «ключ DI → класс → роль».Cart/Order/Customer: «Domain facade, не HTTP controller».Опционально (rename, отдельный PR)
MiniShop3\Domain\Cart\Cart(илиFacades\) + alias/bc layer на один major.ms3_cart/ class settings overrides.Не смешивать rename с #362 (thin facade) в одном PR, если rename большой.
Альтернативные варианты
Примеры использования
Ревьюер видит
Controllers/Api/...= HTTP;Domain/...или явный PHPDoc = facade для$ms3->cart.Критерии приёмки
Дополнительный контекст
Tracker #361. Зависит логически от стабилизации #362.