Appearance
Document + Reporting Cross-Cutting Verified Anchors
Scope
This index lists the verified files used by the cross-cutting chapter:
Verified anchors
Document-facing boundary
NGB.Application.Abstractions/Services/IDocumentService.csNGB.Application.Abstractions/Services/DocumentActions.csNGB.Runtime/Documents/DocumentService.csNGB.Runtime/Documents/Actions/DocumentActionQueryService.csNGB.Runtime/Documents/Actions/DocumentActionDispatcher.csNGB.Runtime/Documents/Derivations/IDocumentDerivationService.cs
Document persistence boundary
NGB.Persistence/Documents/IDocumentRepository.csNGB.Persistence/Documents/Universal/IDocumentReader.csNGB.Persistence/Documents/Universal/IDocumentWriter.csNGB.Persistence/Documents/Universal/IDocumentPartsReader.csNGB.Persistence/Documents/Universal/IDocumentPartsWriter.cs
Reporting runtime boundary
NGB.Runtime/Reporting/ReportEngine.csNGB.Runtime/Reporting/ReportExecutionPlanner.csNGB.Runtime/Reporting/ReportSheetBuilder.csNGB.Runtime/Reporting/ReportDefinitionRuntimeModel.csNGB.Runtime/Reporting/ReportDatasetDefinition.csNGB.Runtime/Reporting/ReportDatasetFieldDefinition.cs
PostgreSQL reporting execution boundary
NGB.PostgreSql/Reporting/IPostgresReportDatasetSource.csNGB.PostgreSql/Reporting/PostgresReportDatasetCatalog.csNGB.PostgreSql/Reporting/PostgresReportSqlBuilder.csNGB.PostgreSql/Reporting/PostgresReportDatasetExecutor.cs
Why these anchors matter
This set is enough to verify the following claims without introducing speculative file paths:
- generic document CRUD/graph/effects and interactive Document Actions are separate application boundaries;
- document lifecycle / graph / effects / derivation remain document-facing surfaces without putting action flags into the effects DTO;
- the reporting runtime explicitly enriches document-facing fields when reports include interactive document display columns;
- PostgreSQL reporting execution injects support ids that make that enrichment possible;
- final report rendering happens after planning and enrichment, not inside raw SQL execution.
What is intentionally out of scope
This anchor set does not prove every downstream UI detail or every API route. It is intentionally focused on the runtime and persistence boundary where document-facing and report-facing execution meet.
For adjacent chapters, see: