Skip to content

feat(mockups): wire Therapy Compass to the imported content library#650

Merged
BigSimmo merged 2 commits into
mainfrom
claude/therapy-compass-pages-rz0m5l
Jul 14, 2026
Merged

feat(mockups): wire Therapy Compass to the imported content library#650
BigSimmo merged 2 commits into
mainfrom
claude/therapy-compass-pages-rz0m5l

Conversation

@BigSimmo

@BigSimmo BigSimmo commented Jul 14, 2026

Copy link
Copy Markdown
Owner

Summary

Follow-up to #646 (merged). Turns the Therapy Compass mockup at /mockups/therapy-compass into a fully data-driven tool backed by the uploaded Therapy Compass content export, and wires every screen together.

Data (populated from the export). The export's data/therapies.json / pathways.json / reference files were trimmed to the fields the UI renders and shipped as static JSON under public/mockups/therapy-compass/, fetched once client-side and cached:

  • 211 therapies (name, category, modality, summary, use-for, cautions, delivery steps, mechanism, brief/15-min versions, sources, patient-sheet templates, clinician scripts, review checklist, completeness scores, tags)
  • 12 pathways with ordered steps resolved to therapy slugs (all 64 steps resolve)
  • categories, tags and measures

It's a dev-only route (production 404, robots disallow), so these assets never enter the production JS bundle.

Every screen now renders real records and cross-links:

  • Home — featured therapies + real pathways + a working search box
  • Search — live full-text search + tag / brief / reviewed filters across all 211 records, with an empty state
  • Detail — full record: summary, mechanism, numbered delivery steps, safety/cautions, at-a-glance rail, category-derived related therapies, and source provenance
  • Compare — 2–4 real therapies side by side, an inline "add therapy" picker, a computed decision summary (shortest delivery / source status), and Priorities / Differences / All-fields tabs that actually filter rows
  • Recommend — constraint chips + free-text drive a live ranking (top match + ranked list)
  • Pathways — all 12 pathways; each step opens its linked therapy record
  • Brief Intervention — real 5-min / 15-min / grounding steps and clinician scripts, filterable record list
  • Patient Sheet — per-therapy explanation, plan steps and homework on a printable sheet, with a therapy picker, tone and section toggles
  • Review Queue — records needing review, sorted by review-completeness, with source/index/review meters

Cross-navigation is wired throughout (open record → Detail; Compare adds to the set; Brief / Patient sheet open the selected therapy; pathway steps and recommendations open records), and a live "N to review" chip sits in the top nav. A shared data layer (data/types, the fetch+cache loader, and pure selectors for search/rank/related/compare) plus icon/ui/control primitives keep the screens lean.

Verification

Dev-only mockup. Ran:

  • npm run lint (clean, --max-warnings 0), typecheck (clean for every new/changed file), Prettier --check, sitemap:check

  • ✅ Browser QA via Chromium/Playwright across all screens (light + dark): search filters 211 records; Detail/Brief/Sheet render the selected record's real fields; Compare shows real side-by-side data with the add-picker; Recommend ranks live; Pathways steps open records; Review Queue lists needs-review records. No console warnings.

  • Data assets are added to .prettierignore (generated/minified, like public/demo-documents/).

  • npm run verify:pr-local — not run to completion in this sandbox (its typecheck step trips on optional deps not installed here, e.g. @testing-library/*, @axe-core/playwright); the individual gates above were run directly. CI Build / Static PR checks cover these with a full install.

  • npm run verify:ui — CI Critical UI smoke / UI regression cover the Chromium suite.

Clinical Governance Preflight

N/A for production surfaces — this is a static, dev-only mockup. It does not touch ingestion, answer generation, search/ranking of live documents, document access, privacy, production env, Supabase, or clinical output. The bundled content is the export's own de-identified reference data (the export deliberately excludes patient sheets, favourites, usage logs and credentials), and its reviewStatus, confidenceLevel, warnings, sources and review checklists are preserved and surfaced (needs-review badges, "N to review", source provenance) rather than presented as validated. No schema, RLS, or service-role changes.

Notes

Data was trimmed with a one-off transform (kept out of the repo); the committed assets are the trimmed JSON only. relations/measureLinks are empty in the export, so "related therapies" is derived by shared category/tags.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TJaXJntdH7Q98ejoSZF46K


Generated by Claude Code

Summary by CodeRabbit

  • New Features
    • Added a data-driven Therapy Compass experience with searchable therapy discovery, pathways, recommendations, and comparison views.
    • Improved therapy details with step-by-step delivery content, patient-sheet building, and source/provenance and review-status indicators.
    • Added review queues and a top-navigation “to review” warning when items are pending.
  • Style
    • Introduced a shared icon set, reusable UI primitives (tags/badges/tiles/meters), and consistent control styling.
    • Added a loading spin animation with improved reduced-motion behavior.

Replace the placeholder screens with a fully data-driven implementation
backed by the Therapy Compass content export — 211 therapies, 12 pathways,
plus categories, tags and measures — trimmed to the UI fields and shipped
as static JSON under public/mockups/therapy-compass/, fetched client-side
(dev-only route, so no production bundle impact).

Every screen now renders and cross-links real records:
- Home: featured therapies + real pathways + working search
- Search: live full-text + tag/brief/reviewed filters over all 211 records
- Detail: full record (summary, mechanism, numbered delivery steps, cautions,
  at-a-glance, category-derived related therapies, source provenance)
- Compare: 2-4 real therapies side by side with an inline add picker, a
  computed decision summary, and Priorities/Differences/All tabs
- Recommend: constraint-driven ranking with a top match + ranked list
- Pathways: 12 real pathways whose steps open the linked therapy record
- Brief Intervention: real 5-min / 15-min / grounding steps + clinician scripts
- Patient Sheet: per-therapy explanation, plan steps and homework on the sheet
- Review Queue: records needing review with source/index/review meters

A shared data layer (data/types, the fetch+cache loader, and pure selectors
for search/rank/related/compare) plus icon/ui/control primitives keep the
screens lean, and a live "N to review" indicator sits in the top nav.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TJaXJntdH7Q98ejoSZF46K
@supabase

supabase Bot commented Jul 14, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sjrfecxgysukkwxsowpy because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: fd5e7e10-8bc4-4167-b2a8-68979b422e44

📥 Commits

Reviewing files that changed from the base of the PR and between 33a6bbe and 2f25918.

📒 Files selected for processing (12)
  • public/mockups/therapy-compass/pathways.json
  • public/mockups/therapy-compass/therapies.json
  • src/components/therapy-compass/bindings.tsx
  • src/components/therapy-compass/data/select.ts
  • src/components/therapy-compass/data/use-therapy-data.ts
  • src/components/therapy-compass/icons.tsx
  • src/components/therapy-compass/nav.tsx
  • src/components/therapy-compass/screens/detail-screen.tsx
  • src/components/therapy-compass/screens/other-screen.tsx
  • src/components/therapy-compass/screens/pathways-screen.tsx
  • src/components/therapy-compass/therapy-card.tsx
  • src/components/therapy-compass/ui.tsx
🚧 Files skipped from review as they are similar to previous changes (11)
  • public/mockups/therapy-compass/pathways.json
  • src/components/therapy-compass/nav.tsx
  • src/components/therapy-compass/data/use-therapy-data.ts
  • src/components/therapy-compass/therapy-card.tsx
  • src/components/therapy-compass/data/select.ts
  • src/components/therapy-compass/screens/other-screen.tsx
  • src/components/therapy-compass/screens/pathways-screen.tsx
  • src/components/therapy-compass/icons.tsx
  • src/components/therapy-compass/screens/detail-screen.tsx
  • src/components/therapy-compass/ui.tsx
  • src/components/therapy-compass/bindings.tsx

📝 Walkthrough

Walkthrough

Therapy Compass is converted from static mockup content to a data-driven experience with cached JSON loading, typed therapy and pathway models, search and recommendation utilities, shared UI primitives, centralized bindings, and interactive screens.

Changes

Therapy Compass

Layer / File(s) Summary
Dataset contracts and selection logic
public/mockups/therapy-compass/*, src/components/therapy-compass/data/*
Adds typed therapy data, cached JSON loading, search, related-therapy, recommendation, and summary utilities.
Shared controls and presentation primitives
src/components/therapy-compass/controls.ts, icons.tsx, ui.tsx, therapy-card.tsx, nav.tsx, styles.tsx
Adds reusable controls, icons, cards, status/loading components, review indicators, meters, and animation styles.
Provider state and navigation bindings
src/components/therapy-compass/bindings.tsx
Connects loaded data to selection, navigation, search, comparison, recommendation, pathway, brief, and sheet state.
Primary data-driven screens
src/components/therapy-compass/screens/home-screen.tsx, search-screen.tsx, detail-screen.tsx, brief-screen.tsx
Replaces static home, search, detail, and brief content with interactive therapy-backed rendering.
Comparison and recommendation workflows
src/components/therapy-compass/screens/compare-screen.tsx, recommend-screen.tsx
Adds dynamic comparison rows, selection controls, ranked recommendations, and constraint handling.
Pathways, sheets, and review queue
src/components/therapy-compass/screens/pathways-screen.tsx, sheets-screen.tsx, other-screen.tsx
Renders pathways, editable patient sheets, and review queues from loaded therapy data.

Estimated code review effort: 4 (Complex) | ~60 minutes

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant TherapyCompass
  participant TcProvider
  participant TherapyData
  participant TherapyScreen
  User->>TherapyCompass: open Therapy Compass
  TherapyCompass->>TcProvider: initialize bindings
  TcProvider->>TherapyData: load therapy dataset
  TherapyData-->>TcProvider: return therapies and pathways
  TcProvider-->>TherapyScreen: provide derived state
  User->>TherapyScreen: search or select therapy
  TherapyScreen->>TcProvider: invoke binding action
  TcProvider-->>TherapyScreen: update results and screen
Loading
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description is detailed, but it omits template-required verification items like eval:retrieval:quality for the changed search/ranking behavior. Add the missing required verification checklist items, especially eval:retrieval:quality, and complete any other template checks that apply.
Docstring Coverage ⚠️ Warning Docstring coverage is 26.53% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly states the main change: wiring the Therapy Compass mockup to imported content.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/therapy-compass-pages-rz0m5l

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint install failed. For unrecoverable errors, disable the tool in CodeRabbit configuration.


Comment @coderabbitai help to get the list of available commands.

@BigSimmo
BigSimmo marked this pull request as ready for review July 14, 2026 10:27
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

🧹 Nitpick comments (4)
src/components/therapy-compass/styles.tsx (1)

22-27: 🧹 Nitpick | 🔵 Trivial

Reduced-motion change — confirm UI verification gate was run.

This is a reduced-motion CSS change; per repo guidelines this class of change should be run through npm run ensure and npm run verify:ui (Chromium UI gate) before merge. The PR notes full UI verification wasn't completed locally due to missing optional deps — please confirm CI covers this specific path.

As per coding guidelines: "For UI, frontend, browser, routing, styling, reduced-motion, or forced-colors changes, run npm run ensure before browser work and use npm run verify:ui as the Chromium UI gate."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/components/therapy-compass/styles.tsx` around lines 22 - 27, Confirm that
the reduced-motion styling in the .tc-root .tc-spin and `@keyframes` tc-spin rules
is covered by CI or run npm run ensure followed by npm run verify:ui, and report
the verification status before merge.

Source: Coding guidelines

src/components/therapy-compass/ui.tsx (1)

107-123: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick win

LoadingState isn't announced to assistive tech.

The container has no role="status"/aria-live region, so screen-reader users get no cue when a screen begins/finishes loading (used across search, review queue, detail, etc.).

♿ Proposed fix
 export function LoadingState({ label = "Loading therapy library…" }: { label?: string }) {
   return (
     <div
+      role="status"
+      aria-live="polite"
       style={s(
         `display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:280px;color:var(--text-soft);`,
       )}
     >
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/components/therapy-compass/ui.tsx` around lines 107 - 123, Update the
LoadingState component to make its loading message available to assistive
technology by adding an appropriate status role and live-region behavior to its
outer container. Keep the existing visual structure and label rendering
unchanged.
src/components/therapy-compass/icons.tsx (1)

57-63: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

CompassIcon and TargetIcon are pixel-identical.

Both render the exact same three-circle SVG. Consider aliasing one to the other to avoid drift if either is tweaked later.

♻️ Optional dedupe
-export const TargetIcon = makeIcon(
-  <>
-    <circle cx="12" cy="12" r="9" />
-    <circle cx="12" cy="12" r="5.2" />
-    <circle cx="12" cy="12" r="1.6" fill="currentColor" stroke="none" />
-  </>,
-);
+export const TargetIcon = CompassIcon;

Also applies to: 84-90

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/components/therapy-compass/icons.tsx` around lines 57 - 63, Deduplicate
the identical CompassIcon and TargetIcon definitions by aliasing one exported
symbol to the other. Update CompassIcon or TargetIcon while preserving both
public exports and their existing rendering behavior, so future changes cannot
cause them to drift.
src/components/therapy-compass/bindings.tsx (1)

1-1: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

"Needs review" filter is reimplemented in three places. t.reviewStatus !== "reviewed" is duplicated independently across the nav badge count, the review-queue memo, and the review-queue header count; centralizing it on TcBindings removes the drift risk.

  • src/components/therapy-compass/bindings.tsx#L200-269: add a memoized reviewCount/unreviewedTherapies derived from therapies and expose it on the returned value (and TcBindings type).
  • src/components/therapy-compass/nav.tsx#L18-18: replace the local reviewCount computation with b.reviewCount (or equivalent) from bindings.
  • src/components/therapy-compass/screens/other-screen.tsx#L15-22: base the queue memo on the shared unreviewedTherapies list instead of re-filtering b.therapies.
  • src/components/therapy-compass/screens/other-screen.tsx#L76-76: use the shared reviewCount binding instead of recomputing .filter(...).length inline on every render.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/components/therapy-compass/bindings.tsx` at line 1, Centralize the
unreviewed-therapy derivation in the TcBindings value: add memoized
unreviewedTherapies and reviewCount fields based on therapies, and include them
in the TcBindings type and returned value. Update nav.tsx to use b.reviewCount,
and update other-screen.tsx to derive queue and header counts from
b.unreviewedTherapies and b.reviewCount instead of independently filtering
b.therapies.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@public/mockups/therapy-compass/pathways.json`:
- Line 1: Remove the markdown NICE link text and URLs from the step.description
values for behavioural-parent-training and group-relapse-prevention-programmes
in the sleep pathway, leaving the surrounding clinical descriptions as plain
text.
- Line 1: Clean the generated copy in the pathways JSON: complete the truncated
description for therapySlug
eating-disorder-focused-cognitive-behavioural-therapy-cbt-ed-cbt-e within
neurodevelopmental-pathway, and remove raw Markdown links plus
utm_source=chatgpt.com query text from descriptions in sleep-pathway while
preserving their readable content.

In `@src/components/therapy-compass/data/select.ts`:
- Around line 201-211: Update shortestDelivery so it ranks therapies using a
dedicated sortable duration value or robustly normalized duration parsing,
rather than the first number extracted from free-form timeRequired prose.
Preserve the null result for empty input and the briefInterventionAvailable
adjustment, while ensuring the SHORTEST DELIVERY summary selects the therapy
with the truly shortest duration.

In `@src/components/therapy-compass/data/use-therapy-data.ts`:
- Around line 14-21: Update loadDataset to validate each fetch response’s ok
status before parsing JSON, and throw a clear error identifying the failed
dataset asset (therapies, pathways, or reference). Preserve the existing
TherapyDataset assembly and concurrent Promise.all loading behavior.

In `@src/components/therapy-compass/screens/detail-screen.tsx`:
- Around line 129-131: Update the rendering around the “Clinical snapshot”
BodyRow so it is shown only when clinicalSummary or mechanism is available, and
do not fall back to mechanism when clinicalSummary is empty. Keep the separate
“How it works” row controlled by mechanism, preventing duplicate text while
preserving both sections when clinicalSummary exists.

In `@src/components/therapy-compass/screens/pathways-screen.tsx`:
- Around line 3-20: Update the footer actions in PathwaysScreen so Copy pathway
has an onClick handler that performs the intended copy action, and make Patient
sheet search pathway.steps for the first step with a therapySlug rather than
checking only steps[0]. Preserve the existing behavior when no linked therapy
exists.

In `@src/components/therapy-compass/therapy-card.tsx`:
- Around line 130-141: Update the type imports in therapy-card.tsx to import
ReactNode from react, then replace React.ReactNode with ReactNode in both
CardCell.icon and TherapyListItem.trailing props. Keep the existing prop types
and component behavior unchanged.

---

Nitpick comments:
In `@src/components/therapy-compass/bindings.tsx`:
- Line 1: Centralize the unreviewed-therapy derivation in the TcBindings value:
add memoized unreviewedTherapies and reviewCount fields based on therapies, and
include them in the TcBindings type and returned value. Update nav.tsx to use
b.reviewCount, and update other-screen.tsx to derive queue and header counts
from b.unreviewedTherapies and b.reviewCount instead of independently filtering
b.therapies.

In `@src/components/therapy-compass/icons.tsx`:
- Around line 57-63: Deduplicate the identical CompassIcon and TargetIcon
definitions by aliasing one exported symbol to the other. Update CompassIcon or
TargetIcon while preserving both public exports and their existing rendering
behavior, so future changes cannot cause them to drift.

In `@src/components/therapy-compass/styles.tsx`:
- Around line 22-27: Confirm that the reduced-motion styling in the .tc-root
.tc-spin and `@keyframes` tc-spin rules is covered by CI or run npm run ensure
followed by npm run verify:ui, and report the verification status before merge.

In `@src/components/therapy-compass/ui.tsx`:
- Around line 107-123: Update the LoadingState component to make its loading
message available to assistive technology by adding an appropriate status role
and live-region behavior to its outer container. Keep the existing visual
structure and label rendering unchanged.
🪄 Autofix (Beta)

❌ Autofix failed (check again to retry)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 3d53876b-86e6-4f76-a103-20ca8772b227

📥 Commits

Reviewing files that changed from the base of the PR and between 570e6ba and 33a6bbe.

📒 Files selected for processing (23)
  • .prettierignore
  • public/mockups/therapy-compass/pathways.json
  • public/mockups/therapy-compass/reference.json
  • public/mockups/therapy-compass/therapies.json
  • src/components/therapy-compass/bindings.tsx
  • src/components/therapy-compass/controls.ts
  • src/components/therapy-compass/data/select.ts
  • src/components/therapy-compass/data/types.ts
  • src/components/therapy-compass/data/use-therapy-data.ts
  • src/components/therapy-compass/icons.tsx
  • src/components/therapy-compass/nav.tsx
  • src/components/therapy-compass/screens/brief-screen.tsx
  • src/components/therapy-compass/screens/compare-screen.tsx
  • src/components/therapy-compass/screens/detail-screen.tsx
  • src/components/therapy-compass/screens/home-screen.tsx
  • src/components/therapy-compass/screens/other-screen.tsx
  • src/components/therapy-compass/screens/pathways-screen.tsx
  • src/components/therapy-compass/screens/recommend-screen.tsx
  • src/components/therapy-compass/screens/search-screen.tsx
  • src/components/therapy-compass/screens/sheets-screen.tsx
  • src/components/therapy-compass/styles.tsx
  • src/components/therapy-compass/therapy-card.tsx
  • src/components/therapy-compass/ui.tsx

Comment thread public/mockups/therapy-compass/pathways.json Outdated
Comment thread src/components/therapy-compass/data/select.ts Outdated
Comment thread src/components/therapy-compass/data/use-therapy-data.ts
Comment thread src/components/therapy-compass/screens/detail-screen.tsx Outdated
Comment thread src/components/therapy-compass/screens/pathways-screen.tsx
Comment thread src/components/therapy-compass/therapy-card.tsx
@BigSimmo
BigSimmo enabled auto-merge (squash) July 14, 2026 10:56
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Note

Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it.

⚠️ Branch updated during autofix.

The branch was updated while autofix was in progress. Please try again.

- Data: strip markdown links, tracking params and bare URLs from the generated
  content, and trim source truncations to a sentence boundary, so nothing
  renders as raw markdown/URL in the plain-text UI.
- Loader: check response.ok and throw a clear per-asset error before parsing.
- Detail: don't fall back to `mechanism` for the Clinical snapshot, so it no
  longer duplicates the "How it works" row when a summary is absent.
- Compare: rank "shortest delivery" with a normalised duration weight (minutes
  vs sessions, smallest value) instead of the first number in free-form prose.
- Pathways: wire the "Copy pathway" button to the clipboard, and target the
  first linked step for "Patient sheet" (disabled when none is linked).
- LoadingState: add role="status" / aria-live so screen readers are notified.
- Dedupe identical TargetIcon/CompassIcon; centralise the "needs review"
  derivation (reviewCount/unreviewedTherapies) on bindings and reuse it in the
  nav and review queue; import ReactNode instead of React.ReactNode.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TJaXJntdH7Q98ejoSZF46K
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Note

Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it.

The agent ran but didn't make any changes. The issues may already be fixed or require manual intervention.

@BigSimmo

Copy link
Copy Markdown
Owner Author

@codex review and fix issues and enable merge successfully

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

Testing

  • PATH="$HOME/.nvm/versions/node/v24.15.0/bin:$PATH" npm ci
  • node -e "JSON.parse(require('fs').readFileSync('public/mockups/therapy-compass/pathways.json','utf8')); console.log('pathways json ok')"
  • PATH="$HOME/.nvm/versions/node/v24.15.0/bin:$PATH" npm run typecheck
  • PATH="$HOME/.nvm/versions/node/v24.15.0/bin:$PATH" npm run lint
  • ⚠️ npm run typecheck initially failed before dependency installation because the default shell resolved Node 20 and node_modules/typescript/bin/tsc was not present; after npm ci with Node 24, typecheck passed.

No commit or PR was created because there were no new changes to commit; the worktree is clean.

View task →

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants