Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
271e22b
Make Health Connect collection durable
PSchmiedmayer Aug 20, 2026
5fbc6e3
Add Grove FHIR Health Connect producer
PSchmiedmayer Aug 20, 2026
7e43ad0
Align the Health Connect Producer with the v0.2 Source-Neutral Contracts
PSchmiedmayer Aug 20, 2026
41eedfa
Pin the Grove FHIR Contract Checkout and Make the Module Docs Readabl…
PSchmiedmayer Aug 20, 2026
b13fc77
Advance the Grove FHIR Contract Pin
PSchmiedmayer Aug 20, 2026
8f39e1a
Target Every Superseded Output From the Conversion Provenance
PSchmiedmayer Aug 20, 2026
74ccd70
Advance the Grove FHIR Contract Pin
PSchmiedmayer Aug 20, 2026
3f4d33a
Advance the Grove FHIR Contract Pin
PSchmiedmayer Aug 21, 2026
026baff
Track the Reviewed Grove FHIR Revision
PSchmiedmayer Aug 21, 2026
22c3f4b
Track the Suppression-Aligned Grove FHIR Revision
PSchmiedmayer Aug 21, 2026
5059aea
Track the SDC-Aware Grove FHIR Revision
PSchmiedmayer Aug 21, 2026
23c6d88
Track the Providers-Adapter Grove FHIR Revision
PSchmiedmayer Aug 21, 2026
741e42b
Advance the Conformance Guide Pin to the Vocabulary Revision
PSchmiedmayer Aug 22, 2026
3b74ddb
Convert the Health Connect Quantity and Series Records to the Shared …
PSchmiedmayer Aug 22, 2026
490b689
Fan Out Nutrition Records Into Per-Nutrient Dietary Observations
PSchmiedmayer Aug 22, 2026
088c01f
Absorb the Coded Reproductive and Mindfulness Records Into Their Shar…
PSchmiedmayer Aug 22, 2026
aaec1bc
Re-pin the Health Connect Producer to the Version 0.3.0 Guide Cut
PSchmiedmayer Aug 22, 2026
108cbaf
Fan Out Exercise Sessions Into the Shared Workout and Segment Measure…
PSchmiedmayer Aug 22, 2026
613be9d
Advance the Guide Pin to the Retained-Coding Revision
PSchmiedmayer Aug 22, 2026
50d1e48
Code the Resting Heart Rate in the Grove Measurement System
PSchmiedmayer Aug 22, 2026
e8c752f
Pin the Grove FHIR Conformance Reference to the Recoded Catalog
PSchmiedmayer Aug 22, 2026
16503d2
Advance the Grove FHIR Pin to the Version-Neutral Catalog
PSchmiedmayer Aug 22, 2026
018b464
Derive the Health Connect Recording Device From Its Participant and H…
PSchmiedmayer Aug 23, 2026
5ea610d
Generate the Canonical Contract and Fail Closed on Every Rejected Record
PSchmiedmayer Aug 23, 2026
2e9e9c1
Read Every Adapter Canonical From the Catalog Rather Than Rebuilding It
PSchmiedmayer Aug 23, 2026
7ff4aef
Document the Export Journal Surface and Show a First Conversion
PSchmiedmayer Aug 23, 2026
5e82e85
Express Scope Keys and Event Sequences as Types Instead of Validated …
PSchmiedmayer Aug 23, 2026
c6aee26
Name the Health Connect Types for Their Subject and Match the Swift S…
PSchmiedmayer Aug 23, 2026
1e0fa28
Carry the Client Record Identity and Track the Current Grove FHIR Con…
PSchmiedmayer Aug 23, 2026
3c95cbf
Widen the Client Record Version and Drop the Withdrawn Canonical
PSchmiedmayer Aug 24, 2026
7515228
Adopt Readable Identifiers and Name Export Nodes in the Deployment Na…
PSchmiedmayer Aug 24, 2026
3eaae8e
Name the Deployment Graph With a URN the Validator Admits
PSchmiedmayer Aug 24, 2026
2a3161c
Track the Current Grove FHIR Contract
PSchmiedmayer Aug 24, 2026
4cf4b4b
Track the Current Grove FHIR Contract
PSchmiedmayer Aug 24, 2026
5393f80
Adopt the Composed SensorKit Output Identity
PSchmiedmayer Aug 24, 2026
5b0e336
Pin the Grove FHIR Contract to the 0.3.0 Release
PSchmiedmayer Aug 24, 2026
ce0c79d
Consume the Grove FHIR 0.4.0 Contract
PSchmiedmayer Aug 25, 2026
18f6d57
Pin the Health Connect Adapter to the 0.5.0 Guides
PSchmiedmayer Aug 26, 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
87 changes: 87 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,100 @@ name: Pull Request Checks

on:
pull_request:
types:
- opened
- synchronize
- reopened
- ready_for_review
- converted_to_draft
workflow_dispatch:

concurrency:
group: build-${{ github.ref }}
cancel-in-progress: true

jobs:
scoped_health_fhir:
if: github.event_name == 'pull_request' && github.event.pull_request.draft == true
name: Scoped Health/FHIR Development
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout Repository
uses: actions/checkout@v7
with:
persist-credentials: false
- name: Set Up JDK 21
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: "21"
cache: gradle
- name: Test Health Collection and FHIR Conversion
run: >-
./gradlew
:health:testDebugUnitTest
:health-fhir:testDebugUnitTest
:health-fhir:lintDebug
--console=plain

fhir_conformance:
name: FHIR R4 Conformance
runs-on: ubuntu-latest
permissions:
contents: read
env:
PYTHONDONTWRITEBYTECODE: "1"
steps:
- name: Checkout Repository
uses: actions/checkout@v7
with:
persist-credentials: false
- name: Checkout Grove FHIR v0.3 Contract
uses: actions/checkout@v7
with:
repository: SchmiedmayerLab/grove-fhir
# Pinned so a contract change is a visible edit here, not a silent CI drift.
ref: 0.5.0
path: .grove-fhir
persist-credentials: false
- name: Record the Exact Grove FHIR Revision
run: git -C .grove-fhir rev-parse --verify HEAD
- uses: actions/setup-node@v6
with:
node-version: "24"
cache: npm
cache-dependency-path: .grove-fhir/package-lock.json
- uses: actions/setup-python@v6
with:
python-version: "3.13.15"
- uses: actions/setup-java@v5
with:
distribution: temurin
java-version: "21.0.10+7.0.LTS"
cache: gradle
- uses: ruby/setup-ruby@v1
with:
ruby-version: "3.3.12"
bundler-cache: false
- name: Select the Locked Bundler
run: gem install bundler -v 4.0.16 --no-document
- name: Build the Applicable Grove FHIR Packages
working-directory: .grove-fhir
run: |
npm ci
./Scripts/build-guides.sh mobile health-connect
- name: Validate Emitted Health Connect Resources
run: >-
./Scripts/validate-health-connect-fhir-conformance.sh
--grove-fhir .grove-fhir
--mobile-package .grove-fhir/mobile/output/package.tgz
--health-connect-package .grove-fhir/health-connect/output/package.tgz
--validator-jar .grove-fhir/.build/fhir-tools/validator_cli.jar

android:
if: github.event_name != 'pull_request' || github.event.pull_request.draft == false
name: Android
uses: SchmiedmayerLab/.github/.github/workflows/android.yml@v0.5
permissions:
Expand All @@ -33,6 +119,7 @@ jobs:

release_bundle:
name: Signed Release Bundle
if: github.event_name != 'pull_request' || github.event.pull_request.draft == false
needs:
- android
runs-on: ubuntu-latest
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ Kotlin & Android Version of the My Heart Counts ecosystem.
- **Onboarding**: Provides Onboarding screens for the
application. [View the module](./onboarding/)
- **Contact**: Provides Contact screens. [View the module](./contact/)
- **Health Connect FHIR R4**: Produces deterministic Grove-conformant Mobile and
Health Connect resource graphs from the closed supported record inventory.
[View the module contract](./health-fhir/README.md)

### Study Bundle

Expand Down
Loading