fix(ccr0316): correct $send-message return type and document preconditions#292
Merged
jhntrifork merged 2 commits intoJun 16, 2026
Merged
Conversation
…tions The `return` parameter on Appointment-send-message was declared as `type: Reference` with `targetProfile: ehealth-message`, but the operation actually returns the created Communication resource embedded in the Parameters response (per CCR0316 §6 and the fut-patient implementation). A strict consumer or code generator following the OperationDefinition would expect a Reference and break. - Return parameter: `type` → `Communication`, drop `targetProfile`, expand `documentation` to mention the ehealth-message profile and the completed/stopped status semantics. - Add an `comment` field listing the preconditions that yield HTTP 400 (appointment profile/status, participant status, RelatedPerson active/period/telecom-purpose) and explain the persisted-on-failure audit behaviour. - Cross-link the description to ehealth-relatedperson, ehealth-appointment and ehealth-message profile pages. - Update the release_2026.3 changelog entry accordingly.
sorendaugbjerg
approved these changes
Jun 16, 2026
…files The description linked to the generic ehealth-appointment profile, but the operation only applies to video appointments. Point it at ehealth-videoappointment and ehealth-group-videoappointment to match the precondition already documented in comment.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to the original CCR0316 IG work (commit e407e68d) and downstream fut-patient PR #3334.
The
returnparameter onAppointment-send-messagewas declared astype: ReferencewithtargetProfile: ehealth-message. The operation actually returns the created Communication resource embedded in aParametersresponse — both per CCR0316 §6 (OUT return ... type Communication) and per the fut-patient implementation (SendMessageOperationHandler→Parameterswithresult.getParameterFirstRep().getResource()returning aCommunication). A strict consumer or code generator that trusts the OperationDefinition would expect a Reference and break.This PR corrects the contract and fills out the documentation that was previously sparse.
Changes
type→Communication, droptargetProfile, rewritedocumentationto point at the ehealth-message profile and document thecompleted/stoppedstatus semantics.commentfield listing the preconditions that yieldHTTP 400 Bad Request— appointment profile (video/group-video) and status (booked/pending), participant status (accepted/tentative/needs-action), RelatedPersonactive/period/telecom:video-appointment-reminder-sms— and a note on the persist-on-failure audit behaviour.descriptionto the ehealth-relatedperson, ehealth-appointment and ehealth-message profile pages.Downstream impact
No code changes required in fut-patient — the implementation already matches the corrected contract. Consumers that hand-rolled their own client from the previous (Reference-typed) OperationDefinition will need to update once they pick up this release.