Skip to content

API/TS: Add regression tests and on-the-fly examples for #137#139

Merged
ryukzak merged 8 commits intomainfrom
fix/profile-duplicate-meta-key
Apr 20, 2026
Merged

API/TS: Add regression tests and on-the-fly examples for #137#139
ryukzak merged 8 commits intomainfrom
fix/profile-duplicate-meta-key

Conversation

@ryukzak
Copy link
Copy Markdown
Collaborator

@ryukzak ryukzak commented Apr 20, 2026

Summary

  • Add regression tests for duplicate meta key in createResource() when a profile makes meta required (TS Profile: duplicate meta object literal key when meta is a factory param (TS1117) #137)
  • Add examples/on-the-fly/ — examples that generate types from registry packages at CI time (gitignored output)
    • kbv-r4/ — German KBV profiles (kbv.ita.for@1.3.1), uses ignorePackageIndex for corrupt package indices
    • norge-r4/ — Norwegian profiles (moved from examples/nodge-r4.ts into proper example structure)
  • Add examples/local-package-folder/ PatientMetaRequired profile test
  • Add ignorePackageIndex option to APIBuilder (threads to fhir-canonical-manager@0.0.23)
  • Refactor APIBuilder options filtering from exclusion-list to explicit pick

CI & scripts cleanup

  • Add CI jobs for test-local-package-folder-example and test-on-the-fly-example
  • CI workflows now use make targets instead of bun run scripts
  • Drop bun-version: latest everywhere (it's the default)
  • Flatten single-value matrices in sdk-tests (csharp, python)
  • Rename test-python-sdk-testtest-python-sdk (same for fhirpy)
  • release.yml: use make test, add --frozen-lockfile
  • Remove dead package.json scripts (test:integration, test:performance, test:helpers, codegen, quality, etc.)
  • Makefile: rename test-codegentest, remove format/test-typeschema/test-register targets, lint is now read-only check

Config change

APIBuilder now accepts ignorePackageIndex to bypass corrupt .index.json files:

// before
const builder = new APIBuilder({})

// after — use when a dependency ships a broken .index.json
const builder = new APIBuilder({ ignorePackageIndex: true })

@ryukzak ryukzak force-pushed the fix/profile-duplicate-meta-key branch from 0afa025 to 031868f Compare April 20, 2026 14:43
@ryukzak ryukzak force-pushed the fix/profile-duplicate-meta-key branch from 29f5ec0 to 53bf99d Compare April 20, 2026 15:11
@ryukzak ryukzak merged commit 2cbb9dd into main Apr 20, 2026
37 checks passed
@ryukzak ryukzak deleted the fix/profile-duplicate-meta-key branch April 20, 2026 15:26
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.

1 participant