Problem Statement. app.module.ts lists 30+ imports directly. As NestJS modules grow,
this becomes painful: a unit test of any module currently pulls in everything.
Technical Context. app/backend/src/app.module.ts.
Expected Outcome. A feature-modules.ts registry returns an array of DynamicModules
per domain (claims, campaigns, evidence, etc.). A single import uses
FeatureModuleRegistry.forRoot() reduces the file size to < 80 lines.
Acceptance Criteria.
- New
AppModule < 80 lines.
- A unit-test in
app/backend/test/app-module.spec.ts ensures that no feature module is
imported twice.
Files or modules likely to be affected.
app.module.ts,
new feature-modules.registry.ts.
Difficulty. Medium
Estimated effort. M
Database & Data Model — Issues 49–56
Backlog item #48 from `docs/maintainer-issue-backlog.md.
Problem Statement.
app.module.tslists 30+ imports directly. As NestJS modules grow,this becomes painful: a unit test of any module currently pulls in everything.
Technical Context.
app/backend/src/app.module.ts.Expected Outcome. A
feature-modules.tsregistry returns an array ofDynamicModulesper domain (claims, campaigns, evidence, etc.). A single import uses
FeatureModuleRegistry.forRoot()reduces the file size to < 80 lines.Acceptance Criteria.
AppModule< 80 lines.app/backend/test/app-module.spec.tsensures that no feature module isimported twice.
Files or modules likely to be affected.
app.module.ts,new
feature-modules.registry.ts.Difficulty. Medium
Estimated effort. M
Database & Data Model — Issues 49–56
Backlog item #48 from `docs/maintainer-issue-backlog.md.