29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { HierarchyAuditRepository } from './hierarchy-audit.repository.js';
|
|
import { HierarchyGrantEvaluationService } from './hierarchy-grant-evaluation.js';
|
|
import { HierarchyController } from './hierarchy.controller.js';
|
|
import { HierarchyRepository } from './hierarchy.repository.js';
|
|
import { HierarchyService } from './hierarchy.service.js';
|
|
|
|
/**
|
|
* Hierarchy (tenancy/authorization structure) feature module.
|
|
*
|
|
* M4-1b-i shipped the audit event + outbox machinery (contract 1 §5.2);
|
|
* M4-1b-ii adds the command family — the closed route surface asserted by
|
|
* the route-inventory witness — plus grant evaluation (contract 2 §3).
|
|
* HierarchyRepository is the sole class-table writer (writer-coverage
|
|
* allowlist); every mutation runs authorize → mutate → audit in one
|
|
* transaction.
|
|
*/
|
|
@Module({
|
|
controllers: [HierarchyController],
|
|
providers: [
|
|
HierarchyAuditRepository,
|
|
HierarchyGrantEvaluationService,
|
|
HierarchyRepository,
|
|
HierarchyService,
|
|
],
|
|
exports: [HierarchyAuditRepository, HierarchyGrantEvaluationService],
|
|
})
|
|
export class HierarchyModule {}
|