Skip to content

fix(sniffs): allow Helper classes in Service/ directory#55

Merged
prikotov merged 1 commit into
masterfrom
task/allow-helpers-in-service-dir
May 23, 2026
Merged

fix(sniffs): allow Helper classes in Service/ directory#55
prikotov merged 1 commit into
masterfrom
task/allow-helpers-in-service-dir

Conversation

@prikotov
Copy link
Copy Markdown
Owner

Проблема

ServiceStructureSniff ошибочно ругался на Helper-классы внутри Service/ директории. По конвенции (core-patterns/helper.md) хелперы явно разрешены по пути:

Infrastructure\Service\{Context}\Helper\{Name}Helper

Это заставляло AI-агентов выкидывать Service\ из пути вместо исправления именования — тот же паттерн обхода, что и с NullNotificationBroadcaster.

Решение

В assertCompanionClassAllowed добавлен ранний возврат для классов с суффиксом Helper.

Тест

  • RutubeHelper.inc — Helper в Infrastructure\Service\...\Helper\ → проходит

Чек-лист

  • composer check пройден

ServiceStructureSniff incorrectly flagged Helper and Factory classes inside
Service/ directory as violations. Per conventions:
- core-patterns/helper.md: Infrastructure/Service/{Context}/Helper/{Name}Helper
- core-patterns/factory.md: Application/Service/{ServiceName}/{Name}Factory

Added early return in assertCompanionClassAllowed for classes with Helper
and Factory suffixes.
@prikotov prikotov force-pushed the task/allow-helpers-in-service-dir branch from 3655fb3 to 5b50217 Compare May 22, 2026 16:12
@prikotov prikotov merged commit f11e53b into master May 23, 2026
3 checks passed
@prikotov prikotov deleted the task/allow-helpers-in-service-dir branch May 23, 2026 01:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant