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

medplum / medplum / 24110647826
92%
main: 92%

Build:
Build:
LAST BUILD BRANCH: gh-readonly-queue/main/pr-8863-50f67228a00b92091c37757a0c090196bafb83f8
DEFAULT BRANCH: main
Ran 08 Apr 2026 12:23AM UTC
Jobs 1
Files 763
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

08 Apr 2026 12:10AM UTC coverage: 91.93% (+0.003%) from 91.927%
24110647826

push

github

web-flow
Update scheduling "availability" subextension to be shaped like R5/R6 Availability type (#8755)

* Add `availability.r4` extension encoding R5 Availability shape

Introduces a new `availability.r4` sub-extension on
SchedulingParametersExtension that mirrors the FHIR R5 `Availability`
datatype (availableTime start/end pairs + notAvailableTime) encoded as
valid R4 nested extensions. This runs parallel to the existing
`availability` (Timing-based) extension, with both formats accepted on
Schedule and neither permitted on HealthcareService.

This shape has some desirable properties:

- Long term support plan: when Medplum adopts later FHIR versions, this
  can be painlessly migrated into the native `Availability` format.

- Matches user expectations: describing availability is more commonly
  described by humans as "start time - end time" than "start time +
  duration" (Compare "9am - 5pm" with "starting at 9am lasting for 8
  hours).

The `notAvailableTime` field is fully typed but not yet processed by the
scheduling logic. This will not be supported in our initial
implementation, but may be added later.

Signed-off-by: Noah Silas <noah@medplum.com>

* Use start/end time scheduling types

Since we are moving towards a style of defining availability as start
time + end time, pushing that shape through the entire system will make
things behave more naturally on special cases like DST transitions.

To that end, we change our intermediate representation of scheduling
parameters from a start-time + duration model.

Signed-off-by: Noah Silas <noah@medplum.com>

* Update docs for `availability.r4` shape

Signed-off-by: Noah Silas <noah@medplum.com>

* Remove older "availability" scheduling param

This is an incremental step; remove all the places we were relying on
the old shape of "availability". The next commit will rename
`availability.r4` -> `availability`.

Doing this step first makes it easier to find places that haven't been
updated to the new form yet a... (continued)

18237 of 20774 branches covered (87.79%)

Branch coverage included in aggregate %.

23 of 23 new or added lines in 2 files covered. (100.0%)

33068 of 35035 relevant lines covered (94.39%)

14318.56 hits per line

Jobs
ID Job ID Ran Files Coverage
1 24110647826.1 08 Apr 2026 12:23AM UTC 763
91.93
GitHub Action Run
Source Files on build 24110647826
  • Tree
  • List 763
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • a65b39e5 on github
  • Prev Build on gh-readonly-queue/main/pr-8901-06c06b9ae3e293bc10f14a0e74b7b6870ad406e8 (#24104730261)
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