diff --git a/docs/organisation/systems/source-intake.json b/docs/organisation/systems/source-intake.json index f63aa5ab8e..af35ef2f29 100644 --- a/docs/organisation/systems/source-intake.json +++ b/docs/organisation/systems/source-intake.json @@ -130,8 +130,10 @@ "tests/deep-*", "tests/docling-*", "tests/document-cover-thumbnails.test.ts", + "tests/document-detail-demo-window.test.ts", "tests/document-enrichment-*", "tests/document-enrichment.test.ts", + "tests/document-extraction-source-fidelity.test.ts", "tests/document-index-units.test.ts", "tests/document-label-coverage.test.ts", "tests/document-label-governance.test.ts", diff --git a/tests/maintain-docs-system.test.ts b/tests/maintain-docs-system.test.ts index b230b9c7fb..b34cba31ff 100644 --- a/tests/maintain-docs-system.test.ts +++ b/tests/maintain-docs-system.test.ts @@ -202,6 +202,21 @@ describe("maintain-docs-system pipeline", () => { expect(classifyRepositoryPath("tests/calculators-new-score.test.ts").resolvedSystem).toBe("clinical-content"); }); + it("owns ingestion tests under source-intake even where app-experience's document-* glob would claim them", () => { + // The code under test is source-intake's (src/lib/extractors/**, worker/**, src/lib/document-detail.ts), + // so explicit source-intake entries beat app-experience's broad tests/document-* glob. + for (const testPath of [ + "tests/document-extraction-source-fidelity.test.ts", + "tests/document-detail-demo-window.test.ts", + ]) { + expect(classifyRepositoryPath(testPath).resolvedSystem).toBe("source-intake"); + } + // Document viewer and search UI tests stay with app-experience. + for (const testPath of ["tests/document-viewer-shell.dom.test.tsx", "tests/search-pins.test.ts"]) { + expect(classifyRepositoryPath(testPath).resolvedSystem).toBe("app-experience"); + } + }); + describe("placeUnplacedFiles", () => { it("places unplaced files into matching system manifests, deduplicating and sorting files[]", () => { const root = makeTempFixture();