diff --git a/data/repo-awareness-snapshot.json b/data/repo-awareness-snapshot.json index c822dffea6..a238eb5cb7 100644 --- a/data/repo-awareness-snapshot.json +++ b/data/repo-awareness-snapshot.json @@ -2454,6 +2454,11 @@ "section": "decisions", "catalogued": true }, + { + "path": "docs/decisions/2026-10-17-overseas-line-centred-on-answer-home.md", + "section": "decisions", + "catalogued": true + }, { "path": "docs/decisions/2026-10-16-stuck-final-attempt-uses-existing-recovery.md", "section": "decisions", diff --git a/docs/decisions/2026-10-17-no-overseas-line-on-home-pages.md b/docs/decisions/2026-10-17-no-overseas-line-on-home-pages.md index e278c408d6..20ffe781ff 100644 --- a/docs/decisions/2026-10-17-no-overseas-line-on-home-pages.md +++ b/docs/decisions/2026-10-17-no-overseas-line-on-home-pages.md @@ -1,7 +1,7 @@ # Decision: The overseas AI line comes off the home pages -- **Status:** decided 2026-10-17 -- **Source:** `src/components/ClinicalDashboard.tsx`, find "the owner removed it from the home pages on" +- **Status:** decided 2026-10-17; superseded by 2026-10-17-overseas-line-centred-on-answer-home.md +- **Source:** `src/components/ClinicalDashboard.tsx`, find "where an Answer question goes. Centred on the" The owner asked for the line "Questions are sent to an overseas AI service (OpenAI) to search and write answers. Don't include patient details." to be removed from the home pages. The Answer home was the only @@ -10,3 +10,5 @@ information, and the privacy page still says questions may go to the OpenAI API replaces the 13 Oct 2026 wish to show the line on the Answer home before the first question. If this summary and the source ever differ, the source wins. + +**Superseded the same day** by [the centred Answer home line](2026-10-17-overseas-line-centred-on-answer-home.md): the owner chose to keep the line on the Answer home, centred. diff --git a/docs/decisions/2026-10-17-overseas-line-centred-on-answer-home.md b/docs/decisions/2026-10-17-overseas-line-centred-on-answer-home.md new file mode 100644 index 0000000000..2a689372d3 --- /dev/null +++ b/docs/decisions/2026-10-17-overseas-line-centred-on-answer-home.md @@ -0,0 +1,13 @@ +# Decision: The overseas AI line stays on the Answer home, centred like the line under each answer + +- **Status:** decided 2026-10-17 +- **Source:** `src/components/ClinicalDashboard.tsx`, find "where an Answer question goes. Centred on the" + +The owner first asked for the overseas AI line to come off the home pages, then chose to keep it on the +Answer home in the same style as the line under each answer: centred, with the same wording. The +line under each answer is centred by PR #3605, which is still open when this is recorded; until it +merges, only the home line is centred. The wording +itself is set once in `src/components/clinical-dashboard/answer-provider-notice.tsx`, so both places +always say the same thing. This replaces the earlier 17 Oct 2026 decision to remove the line from the home pages. + +If this summary and the source ever differ, the source wins. diff --git a/src/components/ClinicalDashboard.tsx b/src/components/ClinicalDashboard.tsx index d850e24520..35cca36dc0 100644 --- a/src/components/ClinicalDashboard.tsx +++ b/src/components/ClinicalDashboard.tsx @@ -2809,17 +2809,25 @@ function ClinicalDashboardContent({ // mode-specific branch so picking a mode on `/` changes only its // presentation and composer target; mode-owned content stays behind // its own route (/tools, /favourites, /dsm, …). - // No overseas-processing line here: the owner removed it from the home pages on - // 17 Oct 2026. It still shows under each answer, and /privacy carries the full wording. - { - setQuery(recentQuery); - void ask(recentQuery); - }} - /> + // One grid item, so a tall canvas cannot split the home and its line into two rows. +
+ { + setQuery(recentQuery); + void ask(recentQuery); + }} + /> + {/* Before the first question is sent: where an Answer question goes. Centred on the + Answer home (owner decision, 17 Oct 2026); PR #3605 centres the line under each + answer to match. It hangs below the home without taking layout space, so the + centred home and its composer sit in the same place in every mode. */} + {searchMode === "answer" && !clientDemoMode ? ( + + ) : null} +
) : activeModeResultKind === "differentials" ? ( { expect(note).toHaveAttribute("data-testid", "answer-provider-notice"); }); - it("is mounted under the latest answer only, never on the home and never in demo mode", () => { + it("is mounted on the Answer home and under the latest answer, never in demo mode", () => { // Source check as a stopgap: mounting the full ClinicalDashboard in each mode is too heavy for a unit // test. Cost: harmless reformatting can break it, and it cannot tell live code from dead code; the // Production UI tests cover the rendered notice. const source = readFileSync(resolve(process.cwd(), "src/components/ClinicalDashboard.tsx"), "utf8"); - expect(source.match(/ file.endsWith(".tsx")) .filter((file) => readFileSync(resolve(process.cwd(), "src", file), "utf8").includes(" file.split(sep).join("/")); expect(mounts).toEqual(["components/ClinicalDashboard.tsx"]); + // The home line is Answer-only, centred like the answer line (owner decision, 17 Oct 2026). + expect(source).toMatch( + /searchMode === "answer" && !clientDemoMode \? \(\s*\s*]*\/>\s*\) : null\}\s*<\/div>/, + ); expect(source).toMatch( /explicitDemoMode \|\|\s*answer\.demoMode === true[^?]*\? null : \(\s*