Kanten zwischen Gateways umgehen die Ziel-Raute (#8)

- orthogonal_points(): Liegt bei Gateway -> Gateway der Stub des Starts
  schon jenseits des Ziel-Anschlusspunkts (z. B. Südpunkt unten, Ziel
  höher mit Nordpunkt), führt die Kante seitlich an der Ziel-Raute vorbei.
  Gleiches für den waagrechten Spiegelfall (Ost -> West).
- _ausweichachse(): Die Ausweichachse liegt im freien Gang direkt vor der
  Ziel-Spalte (AUSWEICHABSTAND 85), nicht in der Mitte zwischen Quelle und
  Ziel – dort stand im Referenzmodell die Aufgabe S43.
- Referenzmodell neu erzeugt: fünf Kanten korrigiert (vorher liefen alle
  fünf durch ein Gateway, gemeldet war nur S12->S13), dabei verschwindet
  auch die Kreuzung Flow_13/S40. Syntaxbeispiele unverändert.
- xfail für referenz_gewannenfestlegung entfernt; drei neue Tests in
  test_md_to_bpmn.py.
- Fallstricke: Ausweichachse; Strukturtests melden nur die erste Kreuzung.
- Tests: python -m pytest -q -> 92 bestanden.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-25 11:09:43 +02:00
co-authored by Claude Opus 5.5
parent 6050ce3296
commit 30b47a0fd1
6 changed files with 97 additions and 13 deletions
@@ -486,7 +486,8 @@
<bpmndi:BPMNEdge id="Flow_13_di" bpmnElement="Flow_13">
<di:waypoint x="2225" y="195"/>
<di:waypoint x="2225" y="220"/>
<di:waypoint x="2415" y="220"/>
<di:waypoint x="2330" y="220"/>
<di:waypoint x="2330" y="35"/>
<di:waypoint x="2415" y="35"/>
<di:waypoint x="2415" y="60"/>
<bpmndi:BPMNLabel>
@@ -541,7 +542,8 @@
<bpmndi:BPMNEdge id="Flow_20_di" bpmnElement="Flow_20">
<di:waypoint x="3175" y="110"/>
<di:waypoint x="3175" y="135"/>
<di:waypoint x="3365" y="135"/>
<di:waypoint x="3280" y="135"/>
<di:waypoint x="3280" y="35"/>
<di:waypoint x="3365" y="35"/>
<di:waypoint x="3365" y="60"/>
<bpmndi:BPMNLabel>
@@ -597,7 +599,8 @@
<bpmndi:BPMNEdge id="Flow_27_di" bpmnElement="Flow_27">
<di:waypoint x="3935" y="195"/>
<di:waypoint x="3935" y="220"/>
<di:waypoint x="4125" y="220"/>
<di:waypoint x="4040" y="220"/>
<di:waypoint x="4040" y="120"/>
<di:waypoint x="4125" y="120"/>
<di:waypoint x="4125" y="145"/>
</bpmndi:BPMNEdge>
@@ -641,7 +644,8 @@
<bpmndi:BPMNEdge id="Flow_33_di" bpmnElement="Flow_33">
<di:waypoint x="4125" y="195"/>
<di:waypoint x="4125" y="220"/>
<di:waypoint x="4315" y="220"/>
<di:waypoint x="4230" y="220"/>
<di:waypoint x="4230" y="120"/>
<di:waypoint x="4315" y="120"/>
<di:waypoint x="4315" y="145"/>
</bpmndi:BPMNEdge>
@@ -658,7 +662,8 @@
<bpmndi:BPMNEdge id="Flow_36_di" bpmnElement="Flow_36">
<di:waypoint x="2795" y="280"/>
<di:waypoint x="2795" y="305"/>
<di:waypoint x="3175" y="305"/>
<di:waypoint x="3090" y="305"/>
<di:waypoint x="3090" y="205"/>
<di:waypoint x="3175" y="205"/>
<di:waypoint x="3175" y="230"/>
<bpmndi:BPMNLabel>