• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

scarver2 / ehr-portal / 23982340674
77%

Build:
DEFAULT BRANCH: main
Ran 04 Apr 2026 03:56PM UTC
Jobs 1
Files 48
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

04 Apr 2026 03:55PM UTC coverage: 68.373% (-9.7%) from 78.037%
23982340674

push

github

web-flow
feature: clinical patient search with risk scoring (#64)

* feature: clinical patient search with risk scoring

- Add risk_score/risk_level columns to patients with migration and backfill job
- Introduce RiskScoreService (0-100 scorer: conditions, surgeries, encounters)
- Add RecalculateRiskScoreJob for async score recalculation
- Extend Patient model with search scopes: by_risk_level, highest_risk, with_condition, with_surgery
- Add patientSearch GraphQL query ranked highest-risk first
- Add risk_score/risk_level fields to PatientType
- Add shoulda-matchers ~> 6.4 to test group with rails_helper config
- Add /api/mcp/search Next.js proxy route forwarding to GraphQL
- Add RiskBadge and PatientSearch components to portal
- Wire PatientSearch into dashboard under Clinical Patient Search card
- Update CLAUDE.md: PR approval/CI verification workflow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* chore: fix launch.json to use mise absolute path for api server

Non-login shell subprocesses don't have mise on PATH; use absolute path
to ensure the correct Ruby version is used when launching the dev server.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: populate shoulda-matchers checksum in Gemfile.lock

Bundler 4 requires CHECKSUMS entries to have sha256 values. The initial
lockfile entry had an empty checksum, causing CI deployment-mode bundle
install to fail with a frozen lockfile error.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: add absolute paths for all Homebrew tools to CLAUDE.md

Documents gh, bun, kamal, Redis, PostgreSQL paths so Claude doesn't
need to search for them across sessions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: resolve RuboCop and Steep CI failures

- Migration: add frozen_string_literal comment; use change_table bulk: true
  to satisfy Rails/BulkChangeTable cop
- Patient model: prefix joins with all. for Steep type inference; suppress
  Rails/Redundan... (continued)

385 of 609 branches covered (63.22%)

Branch coverage included in aggregate %.

17 of 47 new or added lines in 3 files covered. (36.17%)

523 of 719 relevant lines covered (72.74%)

16.16 hits per line

Uncovered Changes

Lines Coverage ∆ File
19
35.38
apps/ehr-portal/src/components/provider/PatientSearch.tsx
9
0.0
apps/ehr-portal/src/app/api/mcp/search/route.ts
2
14.29
apps/ehr-portal/src/components/provider/RiskBadge.tsx
Jobs
ID Job ID Ran Files Coverage
1 23982340674.1 04 Apr 2026 03:56PM UTC 48
68.37
GitHub Action Run
Source Files on build 23982340674
  • Tree
  • List 48
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #23982340674
  • bc886efb on github
  • Prev Build on main (#23663238214)
  • Next Build on main (#23982340668)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc