feat(clinical): add Form 12A statutory manifest, CV medications, and therapy compass governance copy (#DTSABC, #4AM8Z0, #PM9SP1) - #2448
Conversation
Remaining Lucide size={15} and 1px shadow spreads were blocking the
token contract. Map those to named tokens, drop unused v2 line-height
companions, and record leftover Hazard 2/3 items in FIX-GUIDE.
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com> # Conflicts: # src/components/therapy-compass/therapy-card.tsx
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep quoted contract numbers in lockstep with the baseline JSON, and replace nested brief-duration ternaries plus leftover Lucide size={16} on screens this sweep already touched.
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…therapy compass governance copy (#DTSABC, #4AM8Z0, #PM9SP1)
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Warning Review limit reachedNext included review available in 30 seconds. View limit detailsLimit details: You’ve used the included review currently available. Your 102 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. Review configuration: ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (14)
📒 Files selected for processing (23)
Comment |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_d46446ad-9185-4209-ad55-1e7249dd05c0) |
…anifest_update # Conflicts: # data/outstanding-issues-snapshot.json # data/repo-awareness-snapshot.json # docs/design-system/FIX-GUIDE.md # docs/design-system/GATES.md # docs/design-system/TOKENS.md # scripts/design-system-contract-baseline.json # src/app/globals.css # src/components/specifiers/specifier-builder-page.tsx # src/components/specifiers/specifier-ui.tsx # src/components/therapy-compass/screens/compare-screen.tsx # src/components/therapy-compass/screens/sheets-screen.tsx # src/components/therapy-compass/workspace.tsx # tests/ckb-v2-token-contract.test.ts # tests/design-system-adoption.test.ts # tests/design-system-contract-utils.test.ts
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f36f94da02
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
CI triageCI failed on this PR. Automated classification of the 2 failed job(s):
Compared with main CI run #14369 (cancelled). That run's conclusion is an aggregate and did not exercise Classification is evidence routing, not permission to ignore a failure. Exact quarantined Playwright identities remain governed by the flake ledger. |
… the gemfibrozil self-class overmatch Two P1 findings from the PR #2448 review, both in the interaction-index generator: - "ACEi + Diuretic + NSAID" rows fired on any single class alone (another ACEi, an NSAID by itself, or a diuretic by itself), since the generated index unioned each class's matches into one flat counterparty list. build-medication-interaction-index.ts now recognises a "+"-joined clause as a required combination and records requiredGroups; the evaluator only fires such a row once every group has a match in the patient's list. This also fixes the same defect on the corpus's seven pre-existing rows using the identical pattern, not only ramipril's new row. - Simvastatin's and atorvastatin's gemfibrozil rows used the generic words "statin" and "(Fibrate)" to describe their own mechanism, which the generator resolved as sibling-class counterparties (every other statin, fenofibrate) — a patient on an unrelated statin alone triggered a HIGH "Gemfibrozil ... Contraindicated" alert. Denied at the source via the existing sourceDenySlugs mechanism, since gemfibrozil itself is not in the catalogue. Regenerated data/medication-interaction-index.json and docs/medication-interaction-lexicon-review.md, added regression tests for both scenarios, and verified no existing interaction alert was weakened (182 -> 189 medication tests, all passing). RAG impact: none — this touches only the medication-interaction catalogue and evaluator, not src/lib/rag/** or retrieval/answer surfaces. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JYtcTz6zLPb1v38ahfeCSH
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_fc7c68f3-3cf9-4ec6-b02e-f5f8b6b9f3d5) |
…ate' into clinical_governance_manifest_update
…anifest_update # Conflicts: # data/outstanding-issues-snapshot.json
Two pending done-mutations on #PM9SP1 made reconciliation ambiguous, which the inbox correctly refuses to guess at. 44e5f87c (queued 2026-08-27 by PR #2448) records only the Therapy Compass relabel; c772a1b8 records the same close plus the five further sites the 2026-09-01 sweep found, including the prescribing patient-profile panel and the medication record footer. Cancelling the narrower one so the archived outcome describes everything that was wrong rather than a subset. Nothing is lost - the surviving outcome states Therapy Compass had already been corrected. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015uQ7pGjA4hBxi9TRNsfjAL
Summary
This PR implements three clinical reference data, statutory form manifest, and policy copy tasks with full Clinical Governance Preflight compliance:
#DTSABC— Form 12A Statutory Authority & Criteria (data/forms-catalog.json):public/forms-pdf/form-12a.pdf(WA Mental Health Act 2014 Form 12A – Nomination of Nominated Person).maker(s273/s275),threshold(s273/s276),clock(s277/s278),purpose,authorises(s263/s266),doesNotAuthorise(explicitly stating lack of proxy consent / substitute decision-making power), andpriorityFactscards (clock,authority,criteria).tests/forms.test.ts.#4AM8Z0— Cardiovascular Medications Catalogue Additions (data/medications-snapshot.json):Tritace,Ramace,Prilace,Zocor,Lipex,Simvar), and tags (ACEi,STATIN,S4) tosrc/lib/medication-entities.ts.data/medication-interaction-index.json(531 rows) and refresheddocs/medication-interaction-lexicon-review.md.tests/medications.test.tsand added badge/interaction assertions intests/medication-badges.test.ts.#PM9SP1— Therapy Compass Policy Copy Relabelling:src/components/therapy-compass/**,src/lib/app-modes.ts,scripts/generate-site-map.ts, andpublic/therapy-compass-data/pathways.jsonto strictly adhere to TGA Software as a Medical Device (SaMD) exemption boundaries.Verification
npm run verify:cheap/ focused clinical suites passed locally:tests/forms.test.ts(12 tests)tests/medications.test.ts(41 tests)tests/medication-badges.test.ts(17 tests)tests/medication-entities.test.ts(14 tests)tests/medication-interactions.test.ts(53 tests)tests/medication-patient-alerts.test.ts(23 tests)tests/medication-interaction-lexicon-coverage.test.ts(34 tests)tests/therapy-compass-mode-wiring.test.ts(19 tests)tests/therapy-compass-pathways.test.ts(9 tests)npm run check:medication-interactions(531 rows up to date)npm run check:medication-lexicon-report(37 terms up to date)npm run check:outstanding-issues(36 pending requests, snapshot synchronized)npm run sitemap:checkpassed cleanlyRisk and rollout
f36f94da0.Clinical Governance Preflight
Clinical KB Database(sjrfecxgysukkwxsowpy)Notes
#DTSABC,#4AM8Z0, and#PM9SP1.Note
Medium Risk
Changes statutory form guidance and medication interaction alerting—clinically consequential reference data, but additive and test-gated rather than runtime auth or prescribing logic.
Overview
Replaces Form 12A placeholder copy in
data/forms-catalog.jsonwith WA Mental Health Act 2014–grounded fields (maker, threshold, authority limits, filing/copies) plus newpriorityFacts(clock, authority, criteria), tighter traps/pre-use checks, and section-tagged search terms—aligned withtests/forms.test.ts.Adds full Ramipril and Simvastatin monographs to
data/medications-snapshot.jsonand regeneratesdata/medication-interaction-index.json: new drug slugs, expanded ACEi/statin class resolution (e.g. ramipril on triple-whammy and hyperkalemia rows, simvastatin on CYP3A4/macrolide edges), and updated index stats.docs/medication-interaction-lexicon-review.mdreflects the new catalogue size and term counts.Closes three outstanding-issue inbox items (
#DTSABC,#4AM8Z0,#PM9SP1recorded in snapshot/inbox JSON). Remaining diff is mostly repo-awareness snapshot refresh and design-system/docs housekeeping (README front door, adoption count 55, contract token wording, scripts-index gate entries).Reviewed by Cursor Bugbot for commit fd67829. Configure here.