2026-05-14 04:21:34 +00:00
|
|
|
parameters:
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
_defaults:
|
|
|
|
|
autowire: true
|
|
|
|
|
autoconfigure: true
|
|
|
|
|
|
|
|
|
|
App\:
|
|
|
|
|
resource: '../src/'
|
|
|
|
|
exclude:
|
|
|
|
|
- '../src/Domain/'
|
|
|
|
|
- '../src/Kernel.php'
|
2026-05-14 04:31:33 +00:00
|
|
|
|
|
|
|
|
App\Domain\Article\Repository\ArticleRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineArticleRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Article\Repository\ArticleTypeRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineArticleTypeRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Channel\Repository\PlatformRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrinePlatformRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Order\Repository\CustomerRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineCustomerRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Order\Repository\OrderRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineOrderRepository
|
feat: implement Plan 2 — Article Management API
- 6 new domain repository interfaces (StoragePath, ArticlePhoto, AttributeValue, ChannelField, ArticleTypePlatformConfig, AttributeMapping)
- 6 Doctrine repository implementations
- StorageManager with multi-path quota-aware file storage (LocalStorageManager)
- Application services: ArticleTypeService, ArticleService, ArticleValidator, PhotoService, PlatformService, MappingService
- REST controllers: ArticleType, Article, Photo, Platform, Mapping (all under /api prefix)
- inventory_number sequence migration
- 22 unit tests passing, PHPStan level 9 clean, CS Fixer clean
- Fixed phpdoc_to_comment CS Fixer rule (disabled) to preserve @var type annotations
- Fixed PHPStan: User::getUserIdentifier non-empty-string, AIPipelineJob nullable missingFields
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 05:19:20 +00:00
|
|
|
|
|
|
|
|
App\Domain\Storage\Repository\StoragePathRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineStoragePathRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Article\Repository\ArticlePhotoRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineArticlePhotoRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Article\Repository\AttributeValueRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineAttributeValueRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Channel\Repository\ChannelFieldRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineChannelFieldRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Channel\Repository\ArticleTypePlatformConfigRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineArticleTypePlatformConfigRepository
|
|
|
|
|
|
|
|
|
|
App\Domain\Channel\Repository\AttributeMappingRepositoryInterface:
|
|
|
|
|
alias: App\Infrastructure\Persistence\Repository\DoctrineAttributeMappingRepository
|
|
|
|
|
|
|
|
|
|
App\Application\Storage\StorageManagerInterface:
|
|
|
|
|
alias: App\Infrastructure\Storage\LocalStorageManager
|