feat: establish catalog identity and atomic file ownership

This commit is contained in:
Cline committed 2026-10-12 19:38:38 -05:00
1 parent 390a7a557a
commit 6b9fb54b4f
16 files changed
+1381 -23

No files matched your search

+3
View File
@@ -2,6 +2,7 @@
declare(strict_types=1);
use MeshVault\Catalog\CatalogService;
use MeshVault\Config\AppConfig;
use MeshVault\Console\ConsoleServices;
use MeshVault\Console\ContainerConsoleServices;
@@ -48,6 +49,8 @@ return static fn (AppConfig $config): array => [
// Repositories share one PDO connection so the job repository's atomic() is a real transaction.
CatalogRepositoryInterface::class => static fn (ContainerInterface $c): CatalogRepositoryInterface
=> new PdoCatalogRepository($c->get(PDO::class)),
CatalogService::class => static fn (ContainerInterface $c): CatalogService
=> new CatalogService($c->get(CatalogRepositoryInterface::class)),
ImportJobRepositoryInterface::class => static fn (ContainerInterface $c): ImportJobRepositoryInterface
=> new PdoImportJobRepository($c->get(PDO::class)),
ImportService::class => static fn (ContainerInterface $c): ImportService => new ImportService(