Expand description
The de.mako.process.initiated contract for an LF-answered Vorgang.
Nine inbound Prüfidentifikatoren put a supplier in the answering seat, split
across two Festlegungen — GPKE Strom (mako-gpke) and GeLi Gas
(mako-geli-gas) — but answered by one decision path in processd.
The workflows differ per Sparte; the facts their notification must carry do
not, because mako_pruefung’s trees branch on the same five SG4
elements whichever Festlegung the message came from.
So the contract lives here rather than in either workflow crate: both depend
on mako-engine already, and a payload built twice is a payload that drifts.
A Gas payload without the Transaktionsgrundergänzung escalates every Gas walk
at Prüfschritt 10.
§Absent is not null
LfVorgangsdaten::process_initiated omits a field the message did not
carry instead of writing null. A consumer that tests presence — and
DTM+471 is exactly such a test, because its presence is the answer to
E_0614 Prüfschritt 60 — reads Some(Value::Null) as „present“, and every
Kündigung then looks like one „zum nächstmöglichen Termin“: the branch that
may not be refused for Vertragsbindung.
Structs§
- LfVorgangsdaten
- The
SG4facts an LF-answered Vorgang carries beyond its Lokations-ID.