Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
c9a8109
feat(browse): section-named A to Z lists with nothing typed; DSM by c…
claude Oct 11, 2026
ed4c15b
feat(safety-plan): give the safety plan the normal app header
claude Oct 11, 2026
727ecd6
feat(therapy-compass): explain Incomplete once and slim desktop resul…
claude Oct 11, 2026
95e7695
feat(services): call button with visible number on every result card
claude Oct 11, 2026
550feb2
Forms gets Forms, Clock and Act tabs; MHA clock handover copy and blu…
claude Oct 11, 2026
ddf2c82
chore: refresh repo-awareness snapshot for the new Forms clock and Sa…
claude Oct 11, 2026
c1ec141
fix(safety-plan): ask before an in-app link discards an unsaved plan
claude Oct 11, 2026
177ba14
Merge remote-tracking branch 'origin/main' into claude/clinical-reorg…
claude Oct 11, 2026
2c40330
Merge origin/main into claude/clinical-reorganisation-j1e2kv
claude Oct 11, 2026
7e14bcb
fix: 2 findings — Protect safety plans during history navigation; Guard
qodo-code-review[bot] Oct 11, 2026
7371e65
fix: Include Act citations in handover limits
qodo-code-review[bot] Oct 11, 2026
ad72937
fix: guard safety plan Back and shell navigation; carry Act qualifica…
claude Oct 11, 2026
6017b93
Merge branch 'main' into claude/clinical-reorganisation-j1e2kv
BigSimmo Oct 11, 2026
a976638
Merge branch 'main' into claude/clinical-reorganisation-j1e2kv
BigSimmo Oct 11, 2026
6b5d2a2
fix: Include repeat intervals in copied handovers
qodo-code-review[bot] Oct 11, 2026
11567fd
fix: 2 findings — Skip leftover safety-plan history entries; Track safet
qodo-code-review[bot] Oct 11, 2026
2f1cb3d
fix: Align punctuation-only queries with browse mode
qodo-code-review[bot] Oct 11, 2026
1c3852b
fix: Preserve Forms list sort selection
qodo-code-review[bot] Oct 11, 2026
a053dc3
Keep src/lib free of component imports: move the MHA clock form type …
claude Oct 11, 2026
598c5fc
Merge remote-tracking branch 'origin/claude/clinical-reorganisation-j…
claude Oct 11, 2026
3932f1e
Restore the Admin audience rules a bot fix reverted; keep its Forms s…
claude Oct 11, 2026
1dc2c20
Safety plan: remember on the sentinel whether a page came before; kee…
claude Oct 11, 2026
9038573
Merge branch 'main' into claude/clinical-reorganisation-j1e2kv
BigSimmo Oct 11, 2026
9f629d0
Merge branch 'main' into claude/clinical-reorganisation-j1e2kv
BigSimmo Oct 11, 2026
33bafdf
Safety plan: a reload keeps you on the plan instead of leaving
claude Oct 11, 2026
0076f30
fix: Exclude Clock from recorded visits
qodo-code-review[bot] Oct 11, 2026
07295a9
fix: Ignore stale safety-plan sentinels
qodo-code-review[bot] Oct 11, 2026
2d07a51
Psychiatry history: never record the Act page or MHA clock as a form …
claude Oct 11, 2026
183d86a
Merge remote-tracking branch 'origin/claude/clinical-reorganisation-j…
claude Oct 11, 2026
97d1979
Safety plan: adopt a sentinel left by a reload so a confirmed leave s…
claude Oct 11, 2026
aa8b022
Safety plan: step back off a sentinel left by a reload so Back reache…
claude Oct 11, 2026
e148713
Services shortlist smoke test: take the remaining Add button after th…
claude Oct 11, 2026
234f503
Header mode menu and option links ask before leaving a page with unsa…
claude Oct 11, 2026
d970bdd
Header: keep the leave guard within the file's line budget
claude Oct 11, 2026
40a36df
Mode menu: ask before closing, so declining to leave keeps the menu a…
claude Oct 11, 2026
f6b3052
Test: header option pushes now go through the leave check
claude Oct 11, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion data/repo-awareness-snapshot.json
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,11 @@
"file": "src/app/auth/reset-password/page.tsx",
"area": "product"
},
{
"path": "/forms/clock",
"file": "src/app/(search-app)/forms/clock/page.tsx",
"area": "product"
},
{
"path": "/documents/[id]",
"file": "src/app/(search-app)/documents/[id]/page.tsx",
Expand Down Expand Up @@ -780,7 +785,7 @@
},
{
"path": "/safety-plan",
"file": "src/app/safety-plan/page.tsx",
"file": "src/app/(search-app)/safety-plan/page.tsx",
"area": "product"
},
{
Expand Down
14 changes: 10 additions & 4 deletions docs/codebase-index.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ Local task coordination lives in `.superpowers/`: ignored task briefs, review pa
| `/medications/[slug]` (bare `/medications` redirects to `/?mode=prescribing`) | `src/app/(search-app)/medications/` |
| `/privacy` | `src/app/privacy/page.tsx` → `privacy-quiet-signal-page.tsx` + `privacy-page-content.tsx` |
| `/reference/colour-coding` | `src/app/reference/` |
| `/safety-plan` | `src/app/safety-plan/page.tsx` |
| `/safety-plan` | `src/app/(search-app)/safety-plan/page.tsx` |
| `/calculators`, `/calculators/search` | `src/app/(search-app)/calculators/` |
| `/services/search`, `/services/[slug]` | `src/app/(search-app)/services/` |
| `/therapy-compass/search`, `/recommend`, `/compare`, `/pathways`, `/review`, `/[slug]`, `/[slug]/brief`, `/[slug]/sheet` | `src/app/(search-app)/therapy-compass/` |
Expand Down Expand Up @@ -217,7 +217,7 @@ Local task coordination lives in `.superpowers/`: ignored task briefs, review pa
| `/medications/[slug]` (bare `/medications` redirects to `/?mode=prescribing`) | `src/app/(search-app)/medications/` |
| `/privacy` | `src/app/privacy/page.tsx` → `privacy-quiet-signal-page.tsx` + `privacy-page-content.tsx` |
| `/reference/colour-coding` | `src/app/reference/` |
| `/safety-plan` | `src/app/safety-plan/page.tsx` |
| `/safety-plan` | `src/app/(search-app)/safety-plan/page.tsx` |
| `/calculators`, `/calculators/search` | `src/app/(search-app)/calculators/` |
| `/services/search`, `/services/[slug]` | `src/app/(search-app)/services/` |
| `/therapy-compass/search`, `/recommend`, `/compare`, `/pathways`, `/review`, `/[slug]`, `/[slug]/brief`, `/[slug]/sheet` | `src/app/(search-app)/therapy-compass/` |
Expand Down Expand Up @@ -580,8 +580,14 @@ Limits come only from `mhaTimers` (`src/lib/on-call/mha-timers.ts`), so a countd
the signed switch is on (a passed limit is red); otherwise the owner-approved quote-only lines from
the form-page Timeline. Every limit, countdown or not, carries the Act's own words and a
section-labelled link to the Act (the hazard-analysis control). `/psychiatry/*` are information
pages, so the clock page has no shared composer. The page also copies the running clocks for handover (form and made-at time
only) and offers Undo after a removal. Linked from the hub's "For a shift" list on Ask and Tools.
pages, so the clock page has no shared composer. The page also copies the running clocks for handover (each form's code
and name, made-at time, and the limits the page already shows — a signed-off countdown's end as a Perth time,
otherwise the not-calculated line; never time left) and offers Undo after a removal. Linked from the hub's "For a
shift" list on Ask and Tools. The same page is also Clinical Forms' **Clock** tab at `/forms/clock` (breadcrumb
"Forms"): Forms has three tabs — Forms (`/forms/search`), Clock and Act (`/forms/act`) — registered in
`src/lib/mode-secondary-navigation.ts`; the shell draws the bar on the list, and Clock and Act (information pages)
mount it themselves through `src/components/forms/forms-mode-nav.tsx`. Both clock routes read their form list
from `src/lib/psychiatry-hub/mha-clock-forms.ts` on the server.
The hub and the clock page are drawn with the flat list parts in
`src/components/psychiatry/psychiatry-flat.tsx`.

Expand Down
8 changes: 4 additions & 4 deletions docs/design-system/ADOPTION.md
Original file line number Diff line number Diff line change
Expand Up @@ -367,12 +367,12 @@ product exclusions; the only route-only dispositions are the documented legacy-r
surfaces. Shared shell/component roots carry their own explicit `shared-shell` disposition.

Registered public components: 55
Declared product roots: 231
Declared product roots: 232
Roots with a literal `.ckb-v2` opt-in: 1
Roots inheriting `.ckb-v2` from the global `<html>`: 230
Roots inheriting `.ckb-v2` from the global `<html>`: 231
Production surfaces observed under v2: 14/14
Dynamic `ckb-v2` constructions: 0
Declared production page routes: 223/223
Declared production page routes: 224/224

Source observation and contract declaration are independent. A literal `ckb-v2` on the global `<html>` makes every production surface inherit v2, but it does not approve that adoption.
The Proof column summarizes each surface's dark, forced-colours, 320px, print and browser declarations; exact statuses and evidence paths live in the manifest.
Expand All @@ -381,7 +381,7 @@ Observed v2 under a compatibility declaration fails closed. A declared v2 shell
| Surface | Disposition | Routes | Roots | Declared shell | Observed shell (mount) | Proof | Baseline |
| ---------------------------------- | --------------- | -----: | ----: | -------------- | -------------------------- | -------------- | -------------- |
| `root-shell-and-settings` | shared-shell | 3 | 6 | v2 | v2 (inherited-global-root) | passed | not-committed |
| `catalogues-forms-and-info` | owned | 180 | 180 | v2 | v2 (inherited-global-root) | passed | not-committed |
| `catalogues-forms-and-info` | owned | 181 | 181 | v2 | v2 (inherited-global-root) | passed | not-committed |
| `differentials` | owned | 7 | 7 | v2 | v2 (inherited-global-root) | passed | not-committed |
| `formulation` | owned | 6 | 6 | v2 | v2 (inherited-global-root) | passed | not-committed |
| `specifiers` | owned | 6 | 6 | v2 | v2 (inherited-global-root) | passed | not-committed |
Expand Down
3 changes: 2 additions & 1 deletion docs/design-system/adoption-contract.json
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@
"src/app/(search-app)/first-nations/talking/page.tsx",
"src/app/(search-app)/forms/[slug]/page.tsx",
"src/app/(search-app)/forms/act/page.tsx",
"src/app/(search-app)/forms/clock/page.tsx",
"src/app/(search-app)/forms/page.tsx",
"src/app/(search-app)/forms/search/page.tsx",
"src/app/(search-app)/medications/[slug]/page.tsx",
Expand Down Expand Up @@ -667,7 +668,7 @@
"src/app/auth/reset-password/page.tsx",
"src/app/privacy/page.tsx",
"src/app/reference/colour-coding/page.tsx",
"src/app/safety-plan/page.tsx"
"src/app/(search-app)/safety-plan/page.tsx"
],
"routeRoots": true,
"roots": [],
Expand Down
49 changes: 31 additions & 18 deletions docs/design-system/adoption-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3357,6 +3357,7 @@
"src/app/(search-app)/first-nations/talking/page.tsx",
"src/app/(search-app)/forms/[slug]/page.tsx",
"src/app/(search-app)/forms/act/page.tsx",
"src/app/(search-app)/forms/clock/page.tsx",
"src/app/(search-app)/forms/page.tsx",
"src/app/(search-app)/forms/search/page.tsx",
"src/app/(search-app)/medications/[slug]/page.tsx",
Expand Down Expand Up @@ -4260,6 +4261,16 @@
"v2MountMode": "inherited-global-root",
"sanctionedPatternsPresent": []
},
{
"file": "src/app/(search-app)/forms/clock/page.tsx",
"exists": true,
"imports": [],
"importedFamilies": [],
"literalCkbV2": false,
"dynamicCkbV2": false,
"v2MountMode": "inherited-global-root",
"sanctionedPatternsPresent": []
},
{
"file": "src/app/(search-app)/forms/page.tsx",
"exists": true,
Expand Down Expand Up @@ -6089,10 +6100,10 @@
"disposition": "owned",
"documentedDisposition": null,
"routes": [
"src/app/(search-app)/safety-plan/page.tsx",
"src/app/auth/reset-password/page.tsx",
"src/app/privacy/page.tsx",
"src/app/reference/colour-coding/page.tsx",
"src/app/safety-plan/page.tsx"
"src/app/reference/colour-coding/page.tsx"
],
"routeRoots": true,
"proofApplicability": "required",
Expand Down Expand Up @@ -6138,44 +6149,44 @@
],
"roots": [
{
"file": "src/app/auth/reset-password/page.tsx",
"file": "src/app/(search-app)/safety-plan/page.tsx",
"exists": true,
"imports": [],
"importedFamilies": [],
"literalCkbV2": false,
"dynamicCkbV2": false,
"v2MountMode": "inherited-global-root",
"sanctionedPatternsPresent": ["PasswordRecoveryForm"]
"sanctionedPatternsPresent": ["PatientSafetyPlan"]
},
{
"file": "src/app/privacy/page.tsx",
"file": "src/app/auth/reset-password/page.tsx",
"exists": true,
"imports": [],
"importedFamilies": [],
"literalCkbV2": false,
"dynamicCkbV2": false,
"v2MountMode": "inherited-global-root",
"sanctionedPatternsPresent": ["PrivacyPage"]
"sanctionedPatternsPresent": ["PasswordRecoveryForm"]
},
{
"file": "src/app/reference/colour-coding/page.tsx",
"file": "src/app/privacy/page.tsx",
"exists": true,
"imports": [],
"importedFamilies": [],
"literalCkbV2": false,
"dynamicCkbV2": false,
"v2MountMode": "inherited-global-root",
"sanctionedPatternsPresent": ["ColourCodingReferencePage"]
"sanctionedPatternsPresent": ["PrivacyPage"]
},
{
"file": "src/app/safety-plan/page.tsx",
"file": "src/app/reference/colour-coding/page.tsx",
"exists": true,
"imports": [],
"importedFamilies": [],
"literalCkbV2": false,
"dynamicCkbV2": false,
"v2MountMode": "inherited-global-root",
"sanctionedPatternsPresent": ["PatientSafetyPlan"]
"sanctionedPatternsPresent": ["ColourCodingReferencePage"]
}
]
},
Expand Down Expand Up @@ -6448,6 +6459,7 @@
"src/app/(search-app)/first-nations/talking/page.tsx",
"src/app/(search-app)/forms/[slug]/page.tsx",
"src/app/(search-app)/forms/act/page.tsx",
"src/app/(search-app)/forms/clock/page.tsx",
"src/app/(search-app)/forms/page.tsx",
"src/app/(search-app)/forms/search/page.tsx",
"src/app/(search-app)/formulation/[slug]/page.tsx",
Expand Down Expand Up @@ -6525,6 +6537,7 @@
"src/app/(search-app)/roster/swaps/page.tsx",
"src/app/(search-app)/roster/team/page.tsx",
"src/app/(search-app)/roster/today/page.tsx",
"src/app/(search-app)/safety-plan/page.tsx",
"src/app/(search-app)/services/[slug]/page.tsx",
"src/app/(search-app)/services/page.tsx",
"src/app/(search-app)/services/search/page.tsx",
Expand Down Expand Up @@ -6578,8 +6591,7 @@
"src/app/(search-app)/tools/page.tsx",
"src/app/auth/reset-password/page.tsx",
"src/app/privacy/page.tsx",
"src/app/reference/colour-coding/page.tsx",
"src/app/safety-plan/page.tsx"
"src/app/reference/colour-coding/page.tsx"
],
"declared": [
"src/app/(display)/teaching/display/[token]/page.tsx",
Expand Down Expand Up @@ -6673,6 +6685,7 @@
"src/app/(search-app)/first-nations/talking/page.tsx",
"src/app/(search-app)/forms/[slug]/page.tsx",
"src/app/(search-app)/forms/act/page.tsx",
"src/app/(search-app)/forms/clock/page.tsx",
"src/app/(search-app)/forms/page.tsx",
"src/app/(search-app)/forms/search/page.tsx",
"src/app/(search-app)/formulation/[slug]/page.tsx",
Expand Down Expand Up @@ -6750,6 +6763,7 @@
"src/app/(search-app)/roster/swaps/page.tsx",
"src/app/(search-app)/roster/team/page.tsx",
"src/app/(search-app)/roster/today/page.tsx",
"src/app/(search-app)/safety-plan/page.tsx",
"src/app/(search-app)/services/[slug]/page.tsx",
"src/app/(search-app)/services/page.tsx",
"src/app/(search-app)/services/search/page.tsx",
Expand Down Expand Up @@ -6803,16 +6817,15 @@
"src/app/(search-app)/tools/page.tsx",
"src/app/auth/reset-password/page.tsx",
"src/app/privacy/page.tsx",
"src/app/reference/colour-coding/page.tsx",
"src/app/safety-plan/page.tsx"
"src/app/reference/colour-coding/page.tsx"
],
"undeclared": [],
"missing": [],
"duplicates": []
},
"adoption": {
"literalCkbV2RootCount": 1,
"inheritedCkbV2RootCount": 230,
"inheritedCkbV2RootCount": 231,
"dynamicCkbV2RootCount": 0,
"v2MountedSurfaceCount": 14,
"declaredV2SurfaceCount": 14
Expand All @@ -6821,8 +6834,8 @@
"registeredComponentCount": 55,
"previewCount": 55,
"productImportedComponentCount": 48,
"rootCount": 231,
"productionRouteCount": 223,
"nextUiEntryCount": 331
"rootCount": 232,
"productionRouteCount": 224,
"nextUiEntryCount": 333
}
}
5 changes: 4 additions & 1 deletion docs/organisation/systems/app-experience.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@
"src/app/privacy/**",
"src/app/reference/**",
"src/app/robots.ts",
"src/app/safety-plan/**",
"src/app/sitemap.ts",
"src/app/work-mode.css",
"src/components/AccessibleTable.tsx",
Expand Down Expand Up @@ -169,6 +168,7 @@
"src/lib/mode-home-composer.ts",
"src/lib/mode-picker-hints.ts",
"src/lib/mode-secondary-navigation.ts",
"src/lib/navigation-guards.ts",
"src/lib/patient-profile-storage.ts",
"src/lib/pdf-documents.ts",
"src/lib/phone-mode-groups.ts",
Expand All @@ -186,6 +186,7 @@
"src/lib/search-scope-filter-chips.ts",
"src/lib/search-shell-props.ts",
"src/lib/service-best-fit.ts",
"src/lib/service-call.ts",
"src/lib/service-core-groups.ts",
"src/lib/service-facets.ts",
"src/lib/service-navigator-metrics.ts",
Expand Down Expand Up @@ -224,6 +225,7 @@
"tests/audit-*",
"tests/auth-panel-product-truth.dom.test.tsx",
"tests/bbox-overlay.test.ts",
"tests/browse-a-to-z.dom.test.tsx",
"tests/calculator-focus-return.dom.test.tsx",
"tests/calculator-sheet-close.dom.test.tsx",
"tests/calculators-mode.dom.test.tsx",
Expand Down Expand Up @@ -300,6 +302,7 @@
"tests/mobile-*",
"tests/mode-*",
"tests/navigation-back-button.dom.test.tsx",
"tests/navigation-guards.test.ts",
"tests/offline-pack-content.test.ts",
"tests/page-secondary-navigation.dom.test.tsx",
"tests/patient-*",
Expand Down
Loading
Loading