From product execution BOM to confirmed visits
The appointment service does not reinterpret the package. It validates the immutable booking contract, expands it into a plan and visits, and confirms only an accepted proposal. Select a step to inspect its input, processing, and output.
Product traits, package, version
Validate required/choice items, repetition, time/resource provenance, dependencies, and visit grouping before publishing.
Immutable execution BOM
version · provenance
snapshotHash
Plan · visits · proposal · consent · hold
Place the supplied treatment obligations on real resources and confirm only an agreed proposal.
Input
Output
Example · lifting focused-care package
One purchase becomes four treatment obligations and three visit candidates.
PackageExecutionSnapshot
AppointmentPlan revision 1
Visit candidates
PROPOSED · specialist + consultation room
Same visit · device + procedure + recovery
Seven days after treatment · separate visit
Only future work is recalculated
Completed facts and existing confirmed appointments stay protected; only affected unfinished items become a new visit or proposal.
Completed treatment
Pin the original productVersionId and planRevisionId. Never rewrite it during a version switch.
Partial fulfillment
Keep completed items and create a new AppointmentItem for each remaining attempt.
Closure or equipment downtime
Do not silently overwrite a confirmed appointment. Create a proposal and obtain consent.