Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
10 changes: 5 additions & 5 deletions .fern/metadata.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
{
"cliVersion": "5.118.0",
"cliVersion": "5.128.0",
"generatorName": "fernapi/fern-python-sdk",
"generatorVersion": "5.18.1",
"generatorVersion": "5.30.0",
"generatorConfig": {
"client_class_name": "PhenomlClient",
"wire_tests": {
"enabled": true
}
},
"originGitCommit": "26224ef37e22adb507f28c21e8991d4a27822bde",
"originGitCommit": "963927d77bf1a9feab3fa0eee0c37e3812b79507",
"originGitCommitIsDirty": true,
"invokedBy": "ci",
"requestedVersion": "AUTO",
"ciProvider": "unknown",
"sdkVersion": "17.0.0"
}
"sdkVersion": "17.1.0"
}
27 changes: 21 additions & 6 deletions .fern/replay.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,21 @@
## [17.1.0] - 2026-09-17
### Added
- **`client.implementation_guides.create_version(...)` and `get_version(...)`** — new sync and async methods for publishing and retrieving immutable canonical FHIR package versions beneath a named implementation guide family.
- **`client.lang2fhir_batch`** — new sync and async client covering the full batch FHIR extraction job lifecycle (`create`, `upload_item`, `finalize`, `cancel`, `get`, `get_results`, `get_result`).
- **`client.profiles.versions`** — new sync and async client for managing immutable retained StructureDefinition versions (`list`, `create`, `get`, `delete`).
- **`ResourceReviewResult.remediated` and `ResourceReviewFinding.unaudited`** — new optional fields on review results; `remediated` lists resources auto-corrected without quarantine, `unaudited` flags inconclusive findings.
- **New Pydantic models** — `ImplementationGuideVersionDetail`, `FhirImplementationGuide`, `ResourceReviewRemediated`, `BatchJob`, `BatchError`, `BatchCounts`, `BatchItemStatus`, and related response types added across `phenoml.implementation_guides`, `phenoml.lang2fhir`, and `phenoml.lang2fhir_batch`.

### Changed
- **`token` parameter on `PhenomlClient` and `AsyncPhenomlClient`** — now accepts `Union[str, Callable[[], str]]`, allowing a plain bearer token string to be passed directly.
- **`client.lang2fhir.document` and `client.lang2fhir.document_multi`** — now accept RTF and XML/C-CDA content types (dedicated instances only) and raise `ForbiddenError` on HTTP 403.
- **`implementation_guides.delete(...)`** — now also removes any exact canonical package versions beneath the guide in addition to name-level metadata.
- **TCP keepalive and `Content-Type` suppression** — the HTTP transport now enables TCP keepalive probes on all connections and omits the `Content-Type` header on bodyless requests.
- **`ImplementationGuideSummary` and `ProfileSummary`** — gain new optional fields (`canonical_url`, `version_count`, `status`, `date`, `canonical`) exposing publication metadata.

### Fixed
- **SSE stream handlers in `agent.chat`** — empty SSE data frames are now skipped instead of being passed to the JSON parser, preventing spurious parse errors during streaming.

## [17.0.0] - 2026-09-09
### Breaking Changes
- **`ProfileSummary`** — `id`, `source`, `resource_type`, `url`, `version`, `fhir_version`, `implementation_guide`, `created_at`, and `updated_at` are now required; remove `None` guards for these fields.
Expand Down
79 changes: 75 additions & 4 deletions code-examples.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
"metadata": {
"language": "python",
"packageName": "phenoml",
"sdkVersion": "17.0.0",
"specCommit": "26224ef37e22adb507f28c21e8991d4a27822bde",
"sdkVersion": "17.1.0",
"specCommit": "963927d77bf1a9feab3fa0eee0c37e3812b79507",
"generatorName": "fernapi/fern-python-sdk"
},
"renderRules": {
Expand Down Expand Up @@ -3250,7 +3250,7 @@
"body": {
"version": "R4",
"resource": "questionnaire",
"content": "JVBERi0xLjQKJeLjz9MK...(base64-encoded PDF or image bytes)"
"content": "JVBERi0xLjQKJeLjz9MK...(base64-encoded document bytes)"
}
},
"response": {
Expand Down Expand Up @@ -3312,7 +3312,7 @@
"request": {
"body": {
"version": "R4",
"content": "JVBERi0xLjQKJeLjz9MK...(base64-encoded PDF or image bytes)",
"content": "JVBERi0xLjQKJeLjz9MK...(base64-encoded document bytes)",
"provider": "medplum",
"config": {
"split_classifications": [
Expand Down Expand Up @@ -3957,6 +3957,77 @@
]
}
},
"POST /fhir/implementation-guides/{name}/versions": {
"httpMethod": "POST",
"httpPath": "/fhir/implementation-guides/{name}/versions",
"request": {
"body": null
},
"response": {
"body": null
},
"render": {
"callTemplate": "client.implementation_guides.implementation_guides.create_version(name={{name}}, {{__body__}})",
"params": [
{
"name": "name",
"kind": "string"
}
],
"body": {
"fieldSeparator": ", ",
"fields": [
{
"jsonKey": "implementation_guide",
"fieldTemplate": "implementation_guide={{value}}",
"kind": "object",
"required": true
},
{
"jsonKey": "profile_refs",
"fieldTemplate": "profile_refs={{value}}",
"kind": "list",
"required": true,
"items": {
"jsonKey": "",
"fieldTemplate": "{{value}}",
"kind": "string",
"required": true
}
},
{
"jsonKey": "profile_context",
"fieldTemplate": "profile_context={{value}}",
"kind": "string",
"required": false
}
]
}
}
},
"GET /fhir/implementation-guides/{name}/versions/{version}": {
"httpMethod": "GET",
"httpPath": "/fhir/implementation-guides/{name}/versions/{version}",
"request": {
"body": null
},
"response": {
"body": null
},
"render": {
"callTemplate": "client.implementation_guides.implementation_guides.get_version(name={{name}}, version={{version}})",
"params": [
{
"name": "name",
"kind": "string"
},
{
"name": "version",
"kind": "string"
}
]
}
},
"GET /fhir/profiles": {
"httpMethod": "GET",
"httpPath": "/fhir/profiles",
Expand Down
Loading