Skip to content

feat: add visit_occurrence_id, operator_concept_id, and UNCHECKED mapping status to OMOP row types#185

Merged
gavinsharp merged 5 commits into
mainfrom
fern-bot/2026-06-15_16-37-47_037
Jun 15, 2026
Merged

feat: add visit_occurrence_id, operator_concept_id, and UNCHECKED mapping status to OMOP row types#185
gavinsharp merged 5 commits into
mainfrom
fern-bot/2026-06-15_16-37-47_037

Conversation

@fern-api

@fern-api fern-api Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

16.0.0 → 16.1.0

Added

  • ConditionOccurrenceRow.visit_occurrence_id, DrugExposureRow.visit_occurrence_id, MeasurementRow.visit_occurrence_id, ObservationRow.visit_occurrence_id, and ProcedureOccurrenceRow.visit_occurrence_id — new optional field linking each clinical OMOP row back to its visit_occurrence row.
  • MeasurementRow.operator_concept_id — new optional field carrying the OMOP "Meas Value Operator" standard concept (<, <=, >, >=) parsed from a FHIR valueQuantity.comparator or numeric-string value; 0 when no operator is present.

Changed

  • MappingEntry.target_code — field semantics updated: now populated for ALREADY_STANDARD and MAPPED rows (the standard concept's own code) in addition to UNCHECKED suggestions; omitted only for UNMAPPED rows.
  • client.fhir2omop.create() docstring — clarifies that concept_id=0 covers both UNMAPPED (no standard match) and UNCHECKED (unverified text-only suggestion), and documents that operator_concept_id is the one non-zero non-resolved concept on measurement rows.

Replay note: the Fern-replay pyproject.toml conflict (bundled openapi.json packaging) is already resolved on this branch — the patch was made version-clean (content_hash 29d85120, status cleared). Do not run fern replay resolve; the include block and bundled spec are intact and the version stays 16.1.0. (This is the known one-shot stopgap for the recurring replay/auto-version conflict; it re-poisons on the next regen — durable fix is Fern-side.)

fern-api Bot and others added 5 commits June 15, 2026 16:37
Generated by Fern
CLI Version: unknown
Generators:
  - fernapi/fern-python-sdk: 5.14.13
…, and UNCHECKED mapping status to OMOP row types

Extends the fhir2omop OMOP CDM row models with visit linkage and
measurement operator support, and clarifies the semantics of
concept_id=0 to cover both UNMAPPED and UNCHECKED codings.

Key changes:
- Add optional `visit_occurrence_id` field to `ConditionOccurrenceRow`, `DrugExposureRow`, `MeasurementRow`, `ObservationRow`, and `ProcedureOccurrenceRow`
- Add optional `operator_concept_id` field to `MeasurementRow` for OMOP "Meas Value Operator" concepts parsed from FHIR value comparators
- Clarify `MappingEntry.target_code` docstring: now populated for ALREADY_STANDARD and MAPPED rows (not just UNCHECKED), and omitted for UNMAPPED
- Update `Summary` docstring to note that each coded resource is counted once per resolved concept
- Refresh client and raw_client docstrings to document the UNCHECKED mapping status and `operator_concept_id` behavior
- Sync code-examples.json and openapi.json to spec commit 5084e30

🌿 Generated with Fern
Patches with unresolved conflicts (1):
  - patch-6516695e: Release 15.0.2: restore bundled openapi.json packaging (#169)
    Run `fern-replay resolve` to apply these customizations.
…onflict)

The 16.1.0 regen re-poisoned patch-6516695e with the [tool.poetry] version line
(theirs_snapshot frozen at 16.0.0, base at the 0.0.0.dev0 placeholder), producing
the recurring "unresolved customization conflicts" banner on pyproject.toml.

Set theirs_snapshot's version to the 0.0.0.dev0 base so the customization delta is
include-only, revert patch_content to the include-only hunk (content_hash 29d85120),
and clear status:unresolved. Lock-only; version stays 16.1.0 and the bundled
openapi.json packaging is unaffected. Known one-shot stopgap (re-poisons on the next
regen) — durable fix is Fern-side; see the replay bug report.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@gavinsharp gavinsharp merged commit c77bfcb into main Jun 15, 2026
6 checks passed
gavinsharp added a commit that referenced this pull request Jun 15, 2026
…n clean)

#186 itself merged clean (no conflict — #185's surgery held), but the regen
re-captured theirs_snapshot at 16.2.0, which would re-conflict on the next bump.
Version-clean it (theirs->0.0.0.dev0, include-only patch, hash 29d85120). Lock-only.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
gavinsharp added a commit that referenced this pull request Jun 18, 2026
* [fern-generated] Update SDK

Generated by Fern
CLI Version: unknown
Generators:
  - fernapi/fern-python-sdk: 5.14.13

* [fern-autoversion] feat: add "aidbox" provider, visit_occurrence_id fields, and operator_concept_id

Expand the SDK with new FHIR provider support, additional OMOP row
fields, and updated MappingEntry/Summary semantics that align with the
16.1.0 API spec commit.

Key changes:
- Add `"aidbox"` to the `Provider` union literal type, enabling Aidbox as a supported FHIR provider
- Add optional `visit_occurrence_id` field to `ConditionOccurrenceRow`, `DrugExposureRow`, `ProcedureOccurrenceRow`, `MeasurementRow`, and `ObservationRow`
- Add optional `operator_concept_id` field to `MeasurementRow` carrying the OMOP "Meas Value Operator" concept for comparator-qualified numeric values
- Update `MappingEntry.target_code` description: now populated for `ALREADY_STANDARD` and `MAPPED` rows (the standard concept's own code), omitted only for `UNMAPPED`
- Clarify `Summary` field descriptions to reflect per-concept (not per-coding) counting semantics
- Update code examples and OpenAPI spec to reflect `target_code` presence on `ALREADY_STANDARD` mappings

🌿 Generated with Fern

* [fern-replay] Applied customizations

Patches applied (1):
  - patch-6516695e: Release 15.0.2: restore bundled openapi.json packaging (#169)

* chore: sync OpenAPI spec + code-examples for 64f369254225bd6c2d4c58d87f59165d7e8e8dc9

* docs(changelog): scope this release to the aidbox provider addition

Fern's auto-changelog re-listed already-shipped fhir2omop changes (already on
main and published) as new — its changelog diff base was stale. The only real
change in this release is the new "aidbox" Provider value.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* fix(replay): version-clean the bundled-openapi patch (keeps next regen clean)

#186 itself merged clean (no conflict — #185's surgery held), but the regen
re-captured theirs_snapshot at 16.2.0, which would re-conflict on the next bump.
Version-clean it (theirs->0.0.0.dev0, include-only patch, hash 29d85120). Lock-only.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: fern-api <115122769+fern-api[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Gavin Sharp <gavin@phenoml.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
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