@nanobpm/nano-workforce 0.102.0 → 0.103.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/SPEC.md +24 -2
- package/app/failingChecksSupersede.test.ts +93 -0
- package/app/feature.test.ts +71 -0
- package/app/feature.ts +42 -0
- package/app/featureReadiness.test.ts +165 -0
- package/app/featureReadiness.ts +151 -0
- package/app/github.ts +69 -7
- package/app/mergeCiReattempt.test.ts +138 -0
- package/app/mergeRebaseArm.test.ts +5 -2
- package/e2e/feature-preflight.e2e.ts +191 -0
- package/openapi.yaml +102 -2
- package/operations/startFeature.ts +29 -1
- package/package.json +1 -1
- package/resources/processes/feature.bpmn +300 -77
- package/resources/processes/merge-loop.bpmn +162 -88
- package/resources/prompts/fix-ci.md +32 -12
|
@@ -21,8 +21,87 @@
|
|
|
21
21
|
</nano:shapes>
|
|
22
22
|
</bpmn:extensionElements>
|
|
23
23
|
<bpmn:startEvent id="Start" name="Issue submitted">
|
|
24
|
-
<bpmn:outgoing>
|
|
24
|
+
<bpmn:outgoing>f_toReadinessGw</bpmn:outgoing>
|
|
25
25
|
</bpmn:startEvent>
|
|
26
|
+
<bpmn:exclusiveGateway id="gw-readiness" name="gated (has readiness probe)?" default="f_readiness_skip">
|
|
27
|
+
<bpmn:incoming>f_toReadinessGw</bpmn:incoming>
|
|
28
|
+
<bpmn:outgoing>f_readiness_gate</bpmn:outgoing>
|
|
29
|
+
<bpmn:outgoing>f_readiness_skip</bpmn:outgoing>
|
|
30
|
+
</bpmn:exclusiveGateway>
|
|
31
|
+
<bpmn:subProcess id="readiness-preflight" name="Await upstream readiness (preflight)">
|
|
32
|
+
<bpmn:incoming>f_readiness_gate</bpmn:incoming>
|
|
33
|
+
<bpmn:outgoing>f_readiness_done</bpmn:outgoing>
|
|
34
|
+
<bpmn:multiInstanceLoopCharacteristics>
|
|
35
|
+
<bpmn:extensionElements>
|
|
36
|
+
<zeebe:loopCharacteristics inputCollection="=readinessProbes" inputElement="probe" outputCollection="resolvedArtifacts" outputElement="=resolvedArtifact" />
|
|
37
|
+
</bpmn:extensionElements>
|
|
38
|
+
</bpmn:multiInstanceLoopCharacteristics>
|
|
39
|
+
<bpmn:startEvent id="pf_start" name="Awaiting readiness">
|
|
40
|
+
<bpmn:outgoing>pf_toProbe</bpmn:outgoing>
|
|
41
|
+
</bpmn:startEvent>
|
|
42
|
+
<bpmn:serviceTask id="preflight-probe" name="Probe readiness (poll)">
|
|
43
|
+
<bpmn:extensionElements>
|
|
44
|
+
<zeebe:taskDefinition type="pr.readiness-probe" />
|
|
45
|
+
<zeebe:properties>
|
|
46
|
+
<zeebe:property name="io.nanobpm.dataEnvelope.in" value="ReadinessProbeIn" />
|
|
47
|
+
<zeebe:property name="io.nanobpm.dataEnvelope.out" value="ReadinessProbeOut" />
|
|
48
|
+
</zeebe:properties>
|
|
49
|
+
</bpmn:extensionElements>
|
|
50
|
+
<bpmn:incoming>pf_toProbe</bpmn:incoming>
|
|
51
|
+
<bpmn:outgoing>pf_probed</bpmn:outgoing>
|
|
52
|
+
</bpmn:serviceTask>
|
|
53
|
+
<bpmn:boundaryEvent id="be_pf_probe_timeout" name="Probe timed out" attachedToRef="preflight-probe">
|
|
54
|
+
<bpmn:outgoing>pf_probeTimedOut</bpmn:outgoing>
|
|
55
|
+
<bpmn:timerEventDefinition id="ted_pf_probe_timeout">
|
|
56
|
+
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">=probeTimeout</bpmn:timeDuration>
|
|
57
|
+
</bpmn:timerEventDefinition>
|
|
58
|
+
</bpmn:boundaryEvent>
|
|
59
|
+
<bpmn:exclusiveGateway id="pf_gw" name="upstream ready?" default="pf_escalate">
|
|
60
|
+
<bpmn:incoming>pf_probed</bpmn:incoming>
|
|
61
|
+
<bpmn:outgoing>pf_ready</bpmn:outgoing>
|
|
62
|
+
<bpmn:outgoing>pf_escalate</bpmn:outgoing>
|
|
63
|
+
</bpmn:exclusiveGateway>
|
|
64
|
+
<bpmn:userTask id="readiness-escalation-pf" name="Upstream readiness stalled (human)">
|
|
65
|
+
<bpmn:extensionElements>
|
|
66
|
+
<zeebe:formDefinition formId="readiness-escalation" />
|
|
67
|
+
<zeebe:userTask />
|
|
68
|
+
<zeebe:assignmentDefinition candidateGroups="operators" />
|
|
69
|
+
</bpmn:extensionElements>
|
|
70
|
+
<bpmn:incoming>pf_escalate</bpmn:incoming>
|
|
71
|
+
<bpmn:incoming>pf_probeTimedOut</bpmn:incoming>
|
|
72
|
+
<bpmn:outgoing>pf_toResolution</bpmn:outgoing>
|
|
73
|
+
</bpmn:userTask>
|
|
74
|
+
<bpmn:boundaryEvent id="be_pf_sla" name="SLA elapsed" attachedToRef="readiness-escalation-pf">
|
|
75
|
+
<bpmn:outgoing>pf_sla</bpmn:outgoing>
|
|
76
|
+
<bpmn:timerEventDefinition id="ted_pf_sla">
|
|
77
|
+
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">=escalationSlaTimeout</bpmn:timeDuration>
|
|
78
|
+
</bpmn:timerEventDefinition>
|
|
79
|
+
</bpmn:boundaryEvent>
|
|
80
|
+
<bpmn:exclusiveGateway id="pf_gw_res" name="resolution?" default="pf_proceed">
|
|
81
|
+
<bpmn:incoming>pf_toResolution</bpmn:incoming>
|
|
82
|
+
<bpmn:outgoing>pf_proceed</bpmn:outgoing>
|
|
83
|
+
<bpmn:outgoing>pf_abandon</bpmn:outgoing>
|
|
84
|
+
</bpmn:exclusiveGateway>
|
|
85
|
+
<bpmn:endEvent id="pf_end" name="Readiness settled">
|
|
86
|
+
<bpmn:incoming>pf_ready</bpmn:incoming>
|
|
87
|
+
<bpmn:incoming>pf_proceed</bpmn:incoming>
|
|
88
|
+
<bpmn:incoming>pf_abandon</bpmn:incoming>
|
|
89
|
+
<bpmn:incoming>pf_sla</bpmn:incoming>
|
|
90
|
+
</bpmn:endEvent>
|
|
91
|
+
<bpmn:sequenceFlow id="pf_toProbe" sourceRef="pf_start" targetRef="preflight-probe" />
|
|
92
|
+
<bpmn:sequenceFlow id="pf_probed" sourceRef="preflight-probe" targetRef="pf_gw" />
|
|
93
|
+
<bpmn:sequenceFlow id="pf_ready" name="ready" sourceRef="pf_gw" targetRef="pf_end">
|
|
94
|
+
<bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=ready = true</bpmn:conditionExpression>
|
|
95
|
+
</bpmn:sequenceFlow>
|
|
96
|
+
<bpmn:sequenceFlow id="pf_escalate" name="stalled" sourceRef="pf_gw" targetRef="readiness-escalation-pf" />
|
|
97
|
+
<bpmn:sequenceFlow id="pf_probeTimedOut" name="timed out" sourceRef="be_pf_probe_timeout" targetRef="readiness-escalation-pf" />
|
|
98
|
+
<bpmn:sequenceFlow id="pf_toResolution" sourceRef="readiness-escalation-pf" targetRef="pf_gw_res" />
|
|
99
|
+
<bpmn:sequenceFlow id="pf_proceed" name="acknowledge" sourceRef="pf_gw_res" targetRef="pf_end" />
|
|
100
|
+
<bpmn:sequenceFlow id="pf_abandon" name="abandon" sourceRef="pf_gw_res" targetRef="pf_end">
|
|
101
|
+
<bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=resolution = "abandon"</bpmn:conditionExpression>
|
|
102
|
+
</bpmn:sequenceFlow>
|
|
103
|
+
<bpmn:sequenceFlow id="pf_sla" name="SLA auto-abandon" sourceRef="be_pf_sla" targetRef="pf_end" />
|
|
104
|
+
</bpmn:subProcess>
|
|
26
105
|
<bpmn:serviceTask id="ensure-base-branch" name="Ensure base branch">
|
|
27
106
|
<bpmn:extensionElements>
|
|
28
107
|
<zeebe:taskDefinition type="pr.ensure-base-branch" />
|
|
@@ -34,7 +113,8 @@
|
|
|
34
113
|
<zeebe:input source="=baseBranch" target="baseBranch" />
|
|
35
114
|
</zeebe:ioMapping>
|
|
36
115
|
</bpmn:extensionElements>
|
|
37
|
-
<bpmn:incoming>
|
|
116
|
+
<bpmn:incoming>f_readiness_skip</bpmn:incoming>
|
|
117
|
+
<bpmn:incoming>f_readiness_done</bpmn:incoming>
|
|
38
118
|
<bpmn:outgoing>f_toImplement</bpmn:outgoing>
|
|
39
119
|
</bpmn:serviceTask>
|
|
40
120
|
<bpmn:serviceTask id="implement-task" name="Implement (agent)">
|
|
@@ -44,7 +124,7 @@
|
|
|
44
124
|
<zeebe:linkedResource resourceId="feature.md" bindingType="latest" resourceType="GenericScript" linkName="prompt" />
|
|
45
125
|
</zeebe:linkedResources>
|
|
46
126
|
<zeebe:ioMapping>
|
|
47
|
-
<zeebe:input source="=" --- " + task.prompt + (if (baseBranchBrief = null) then "" else baseBranchBrief) + (if (customInstructions = null) then "" else " --- ## Operator custom instructions The operator supplied these instructions for this run — follow them: " + customInstructions)" target="appendPrompt" />
|
|
127
|
+
<zeebe:input source="=" --- " + task.prompt + (if (baseBranchBrief = null) then "" else baseBranchBrief) + (if (resolvedArtifacts = null or count(resolvedArtifacts[item != null]) = 0) then "" else (" --- **Bound upstream readiness (intake gate).** This feature was scheduled to wait until an upstream landed and published. Build/install/clone against EXACTLY these resolved published versions (the ones first carrying the awaited capability), and bump the consumer dependency to them — never merely the newest: " + string join(resolvedArtifacts[item != null], " "))) + (if (customInstructions = null) then "" else " --- ## Operator custom instructions The operator supplied these instructions for this run — follow them: " + customInstructions)" target="appendPrompt" />
|
|
48
128
|
<zeebe:output source="=status" target="status" />
|
|
49
129
|
<zeebe:output source="=question" target="question" />
|
|
50
130
|
</zeebe:ioMapping>
|
|
@@ -145,7 +225,12 @@
|
|
|
145
225
|
<bpmn:incoming>f_toEndConverged</bpmn:incoming>
|
|
146
226
|
<bpmn:incoming>f_blockedEnd</bpmn:incoming>
|
|
147
227
|
</bpmn:endEvent>
|
|
148
|
-
<bpmn:sequenceFlow id="
|
|
228
|
+
<bpmn:sequenceFlow id="f_toReadinessGw" sourceRef="Start" targetRef="gw-readiness" />
|
|
229
|
+
<bpmn:sequenceFlow id="f_readiness_gate" name="gated" sourceRef="gw-readiness" targetRef="readiness-preflight">
|
|
230
|
+
<bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=readinessProbes != null and count(readinessProbes) > 0</bpmn:conditionExpression>
|
|
231
|
+
</bpmn:sequenceFlow>
|
|
232
|
+
<bpmn:sequenceFlow id="f_readiness_skip" name="no gate" sourceRef="gw-readiness" targetRef="ensure-base-branch" />
|
|
233
|
+
<bpmn:sequenceFlow id="f_readiness_done" sourceRef="readiness-preflight" targetRef="ensure-base-branch" />
|
|
149
234
|
<bpmn:sequenceFlow id="f_toImplement" sourceRef="ensure-base-branch" targetRef="implement-task" />
|
|
150
235
|
<bpmn:sequenceFlow id="w_toGw" sourceRef="implement-task" targetRef="w_gw" />
|
|
151
236
|
<bpmn:sequenceFlow id="w_escalate" name="escalated" sourceRef="w_gw" targetRef="record-feature-escalation">
|
|
@@ -180,173 +265,311 @@
|
|
|
180
265
|
<dc:Bounds x="63" y="143" width="70" height="28" />
|
|
181
266
|
</bpmndi:BPMNLabel>
|
|
182
267
|
</bpmndi:BPMNShape>
|
|
268
|
+
<bpmndi:BPMNShape id="BPMNShape_gw-readiness" bpmnElement="gw-readiness" isMarkerVisible="true">
|
|
269
|
+
<dc:Bounds x="216" y="95" width="50" height="50" />
|
|
270
|
+
<bpmndi:BPMNLabel>
|
|
271
|
+
<dc:Bounds x="206" y="48" width="71" height="42" />
|
|
272
|
+
</bpmndi:BPMNLabel>
|
|
273
|
+
</bpmndi:BPMNShape>
|
|
274
|
+
<bpmndi:BPMNShape id="BPMNShape_readiness-preflight" bpmnElement="readiness-preflight">
|
|
275
|
+
<dc:Bounds x="366" y="240" width="100" height="80" />
|
|
276
|
+
</bpmndi:BPMNShape>
|
|
183
277
|
<bpmndi:BPMNShape id="BPMNShape_ensure-base-branch" bpmnElement="ensure-base-branch">
|
|
184
|
-
<dc:Bounds x="
|
|
278
|
+
<dc:Bounds x="566" y="80" width="100" height="80" />
|
|
185
279
|
</bpmndi:BPMNShape>
|
|
186
280
|
<bpmndi:BPMNShape id="BPMNShape_implement-task" bpmnElement="implement-task">
|
|
187
|
-
<dc:Bounds x="
|
|
281
|
+
<dc:Bounds x="766" y="80" width="100" height="80" />
|
|
188
282
|
</bpmndi:BPMNShape>
|
|
189
283
|
<bpmndi:BPMNShape id="BPMNShape_w_gw" bpmnElement="w_gw" isMarkerVisible="true">
|
|
190
|
-
<dc:Bounds x="
|
|
284
|
+
<dc:Bounds x="966" y="95" width="50" height="50" />
|
|
191
285
|
<bpmndi:BPMNLabel>
|
|
192
|
-
<dc:Bounds x="
|
|
286
|
+
<dc:Bounds x="954" y="76" width="74" height="14" />
|
|
193
287
|
</bpmndi:BPMNLabel>
|
|
194
288
|
</bpmndi:BPMNShape>
|
|
195
289
|
<bpmndi:BPMNShape id="BPMNShape_record-feature-escalation" bpmnElement="record-feature-escalation">
|
|
196
|
-
<dc:Bounds x="
|
|
290
|
+
<dc:Bounds x="1116" y="240" width="100" height="80" />
|
|
197
291
|
</bpmndi:BPMNShape>
|
|
198
292
|
<bpmndi:BPMNShape id="BPMNShape_feature-escalation" bpmnElement="feature-escalation">
|
|
199
|
-
<dc:Bounds x="
|
|
293
|
+
<dc:Bounds x="1316" y="240" width="100" height="80" />
|
|
200
294
|
</bpmndi:BPMNShape>
|
|
201
295
|
<bpmndi:BPMNShape id="BPMNShape_w_gw_answer" bpmnElement="w_gw_answer" isMarkerVisible="true">
|
|
202
|
-
<dc:Bounds x="
|
|
296
|
+
<dc:Bounds x="1516" y="255" width="50" height="50" />
|
|
203
297
|
<bpmndi:BPMNLabel>
|
|
204
|
-
<dc:Bounds x="
|
|
298
|
+
<dc:Bounds x="1513" y="236" width="56" height="14" />
|
|
205
299
|
</bpmndi:BPMNLabel>
|
|
206
300
|
</bpmndi:BPMNShape>
|
|
207
301
|
<bpmndi:BPMNShape id="BPMNShape_record-feature" bpmnElement="record-feature">
|
|
208
|
-
<dc:Bounds x="
|
|
302
|
+
<dc:Bounds x="1666" y="80" width="100" height="80" />
|
|
209
303
|
</bpmndi:BPMNShape>
|
|
210
304
|
<bpmndi:BPMNShape id="BPMNShape_gw-blocked" bpmnElement="gw-blocked" isMarkerVisible="true">
|
|
211
|
-
<dc:Bounds x="
|
|
305
|
+
<dc:Bounds x="1866" y="95" width="50" height="50" />
|
|
212
306
|
<bpmndi:BPMNLabel>
|
|
213
|
-
<dc:Bounds x="
|
|
307
|
+
<dc:Bounds x="1861" y="76" width="60" height="14" />
|
|
214
308
|
</bpmndi:BPMNLabel>
|
|
215
309
|
</bpmndi:BPMNShape>
|
|
216
310
|
<bpmndi:BPMNShape id="BPMNShape_feature-blocked" bpmnElement="feature-blocked">
|
|
217
|
-
<dc:Bounds x="
|
|
311
|
+
<dc:Bounds x="2016" y="400" width="100" height="80" />
|
|
218
312
|
</bpmndi:BPMNShape>
|
|
219
313
|
<bpmndi:BPMNShape id="BPMNShape_record-blocked-ack" bpmnElement="record-blocked-ack">
|
|
220
|
-
<dc:Bounds x="
|
|
314
|
+
<dc:Bounds x="2216" y="400" width="100" height="80" />
|
|
221
315
|
</bpmndi:BPMNShape>
|
|
222
316
|
<bpmndi:BPMNShape id="BPMNShape_gw-converge" bpmnElement="gw-converge" isMarkerVisible="true">
|
|
223
|
-
<dc:Bounds x="
|
|
317
|
+
<dc:Bounds x="2041" y="95" width="50" height="50" />
|
|
224
318
|
<bpmndi:BPMNLabel>
|
|
225
|
-
<dc:Bounds x="
|
|
319
|
+
<dc:Bounds x="2033" y="76" width="67" height="14" />
|
|
226
320
|
</bpmndi:BPMNLabel>
|
|
227
321
|
</bpmndi:BPMNShape>
|
|
228
322
|
<bpmndi:BPMNShape id="BPMNShape_converge" bpmnElement="converge">
|
|
229
|
-
<dc:Bounds x="
|
|
323
|
+
<dc:Bounds x="2216" y="240" width="100" height="80" />
|
|
230
324
|
</bpmndi:BPMNShape>
|
|
231
325
|
<bpmndi:BPMNShape id="BPMNShape_End" bpmnElement="End">
|
|
232
|
-
<dc:Bounds x="
|
|
326
|
+
<dc:Bounds x="2416" y="102" width="36" height="36" />
|
|
233
327
|
<bpmndi:BPMNLabel>
|
|
234
|
-
<dc:Bounds x="
|
|
328
|
+
<dc:Bounds x="2417" y="83" width="34" height="14" />
|
|
235
329
|
</bpmndi:BPMNLabel>
|
|
236
330
|
</bpmndi:BPMNShape>
|
|
237
331
|
<bpmndi:BPMNShape id="BPMNShape_be_feature_sla" bpmnElement="be_feature_sla">
|
|
238
|
-
<dc:Bounds x="
|
|
332
|
+
<dc:Bounds x="1348" y="302" width="36" height="36" />
|
|
239
333
|
<bpmndi:BPMNLabel>
|
|
240
|
-
<dc:Bounds x="
|
|
334
|
+
<dc:Bounds x="1324" y="383" width="84" height="14" />
|
|
241
335
|
</bpmndi:BPMNLabel>
|
|
242
336
|
</bpmndi:BPMNShape>
|
|
243
|
-
<bpmndi:BPMNEdge id="
|
|
337
|
+
<bpmndi:BPMNEdge id="BPMNEdge_f_toReadinessGw" bpmnElement="f_toReadinessGw">
|
|
244
338
|
<di:waypoint x="116" y="120" />
|
|
245
339
|
<di:waypoint x="216" y="120" />
|
|
246
340
|
</bpmndi:BPMNEdge>
|
|
341
|
+
<bpmndi:BPMNEdge id="BPMNEdge_f_readiness_skip" bpmnElement="f_readiness_skip">
|
|
342
|
+
<di:waypoint x="266" y="120" />
|
|
343
|
+
<di:waypoint x="566" y="120" />
|
|
344
|
+
<bpmndi:BPMNLabel>
|
|
345
|
+
<dc:Bounds x="391" y="98" width="50" height="14" />
|
|
346
|
+
</bpmndi:BPMNLabel>
|
|
347
|
+
</bpmndi:BPMNEdge>
|
|
247
348
|
<bpmndi:BPMNEdge id="BPMNEdge_f_toImplement" bpmnElement="f_toImplement">
|
|
248
|
-
<di:waypoint x="
|
|
249
|
-
<di:waypoint x="
|
|
349
|
+
<di:waypoint x="666" y="120" />
|
|
350
|
+
<di:waypoint x="766" y="120" />
|
|
250
351
|
</bpmndi:BPMNEdge>
|
|
251
352
|
<bpmndi:BPMNEdge id="BPMNEdge_w_toGw" bpmnElement="w_toGw">
|
|
252
|
-
<di:waypoint x="
|
|
253
|
-
<di:waypoint x="
|
|
353
|
+
<di:waypoint x="866" y="120" />
|
|
354
|
+
<di:waypoint x="966" y="120" />
|
|
254
355
|
</bpmndi:BPMNEdge>
|
|
255
356
|
<bpmndi:BPMNEdge id="BPMNEdge_w_done" bpmnElement="w_done">
|
|
256
|
-
<di:waypoint x="
|
|
257
|
-
<di:waypoint x="
|
|
357
|
+
<di:waypoint x="1016" y="120" />
|
|
358
|
+
<di:waypoint x="1666" y="120" />
|
|
258
359
|
<bpmndi:BPMNLabel>
|
|
259
|
-
<dc:Bounds x="
|
|
360
|
+
<dc:Bounds x="1325" y="98" width="32" height="14" />
|
|
260
361
|
</bpmndi:BPMNLabel>
|
|
261
362
|
</bpmndi:BPMNEdge>
|
|
262
363
|
<bpmndi:BPMNEdge id="BPMNEdge_f_toBlockedGw" bpmnElement="f_toBlockedGw">
|
|
263
|
-
<di:waypoint x="
|
|
264
|
-
<di:waypoint x="
|
|
364
|
+
<di:waypoint x="1766" y="120" />
|
|
365
|
+
<di:waypoint x="1866" y="120" />
|
|
265
366
|
</bpmndi:BPMNEdge>
|
|
266
367
|
<bpmndi:BPMNEdge id="BPMNEdge_f_notBlocked" bpmnElement="f_notBlocked">
|
|
267
|
-
<di:waypoint x="
|
|
268
|
-
<di:waypoint x="
|
|
368
|
+
<di:waypoint x="1916" y="120" />
|
|
369
|
+
<di:waypoint x="2041" y="120" />
|
|
269
370
|
<bpmndi:BPMNLabel>
|
|
270
|
-
<dc:Bounds x="
|
|
371
|
+
<dc:Bounds x="1940" y="98" width="78" height="14" />
|
|
271
372
|
</bpmndi:BPMNLabel>
|
|
272
373
|
</bpmndi:BPMNEdge>
|
|
273
374
|
<bpmndi:BPMNEdge id="BPMNEdge_f_noConverge" bpmnElement="f_noConverge">
|
|
274
|
-
<di:waypoint x="
|
|
275
|
-
<di:waypoint x="
|
|
375
|
+
<di:waypoint x="2091" y="120" />
|
|
376
|
+
<di:waypoint x="2416" y="120" />
|
|
276
377
|
<bpmndi:BPMNLabel>
|
|
277
|
-
<dc:Bounds x="
|
|
378
|
+
<dc:Bounds x="2218" y="98" width="71" height="14" />
|
|
278
379
|
</bpmndi:BPMNLabel>
|
|
279
380
|
</bpmndi:BPMNEdge>
|
|
280
381
|
<bpmndi:BPMNEdge id="BPMNEdge_w_abandon" bpmnElement="w_abandon">
|
|
281
|
-
<di:waypoint x="
|
|
282
|
-
<di:waypoint x="
|
|
283
|
-
<di:waypoint x="
|
|
382
|
+
<di:waypoint x="1566" y="280" />
|
|
383
|
+
<di:waypoint x="1716" y="280" />
|
|
384
|
+
<di:waypoint x="1716" y="160" />
|
|
385
|
+
<bpmndi:BPMNLabel>
|
|
386
|
+
<dc:Bounds x="1615" y="258" width="53" height="14" />
|
|
387
|
+
</bpmndi:BPMNLabel>
|
|
388
|
+
</bpmndi:BPMNEdge>
|
|
389
|
+
<bpmndi:BPMNEdge id="BPMNEdge_f_readiness_gate" bpmnElement="f_readiness_gate">
|
|
390
|
+
<di:waypoint x="241" y="145" />
|
|
391
|
+
<di:waypoint x="241" y="280" />
|
|
392
|
+
<di:waypoint x="366" y="280" />
|
|
284
393
|
<bpmndi:BPMNLabel>
|
|
285
|
-
<dc:Bounds x="
|
|
394
|
+
<dc:Bounds x="246" y="206" width="39" height="14" />
|
|
286
395
|
</bpmndi:BPMNLabel>
|
|
287
396
|
</bpmndi:BPMNEdge>
|
|
288
397
|
<bpmndi:BPMNEdge id="BPMNEdge_w_escalate" bpmnElement="w_escalate">
|
|
289
|
-
<di:waypoint x="
|
|
290
|
-
<di:waypoint x="
|
|
291
|
-
<di:waypoint x="
|
|
398
|
+
<di:waypoint x="991" y="145" />
|
|
399
|
+
<di:waypoint x="991" y="280" />
|
|
400
|
+
<di:waypoint x="1116" y="280" />
|
|
292
401
|
<bpmndi:BPMNLabel>
|
|
293
|
-
<dc:Bounds x="
|
|
402
|
+
<dc:Bounds x="996" y="206" width="67" height="14" />
|
|
294
403
|
</bpmndi:BPMNLabel>
|
|
295
404
|
</bpmndi:BPMNEdge>
|
|
296
405
|
<bpmndi:BPMNEdge id="BPMNEdge_f_blocked" bpmnElement="f_blocked">
|
|
297
|
-
<di:waypoint x="
|
|
298
|
-
<di:waypoint x="
|
|
299
|
-
<di:waypoint x="
|
|
406
|
+
<di:waypoint x="1891" y="145" />
|
|
407
|
+
<di:waypoint x="1891" y="440" />
|
|
408
|
+
<di:waypoint x="2016" y="440" />
|
|
300
409
|
<bpmndi:BPMNLabel>
|
|
301
|
-
<dc:Bounds x="
|
|
410
|
+
<dc:Bounds x="1896" y="286" width="53" height="14" />
|
|
302
411
|
</bpmndi:BPMNLabel>
|
|
303
412
|
</bpmndi:BPMNEdge>
|
|
304
413
|
<bpmndi:BPMNEdge id="BPMNEdge_f_converge" bpmnElement="f_converge">
|
|
305
|
-
<di:waypoint x="
|
|
306
|
-
<di:waypoint x="
|
|
307
|
-
<di:waypoint x="
|
|
414
|
+
<di:waypoint x="2066" y="145" />
|
|
415
|
+
<di:waypoint x="2066" y="280" />
|
|
416
|
+
<di:waypoint x="2216" y="280" />
|
|
308
417
|
<bpmndi:BPMNLabel>
|
|
309
|
-
<dc:Bounds x="
|
|
418
|
+
<dc:Bounds x="2071" y="206" width="60" height="14" />
|
|
310
419
|
</bpmndi:BPMNLabel>
|
|
311
420
|
</bpmndi:BPMNEdge>
|
|
421
|
+
<bpmndi:BPMNEdge id="BPMNEdge_f_readiness_done" bpmnElement="f_readiness_done">
|
|
422
|
+
<di:waypoint x="466" y="280" />
|
|
423
|
+
<di:waypoint x="616" y="280" />
|
|
424
|
+
<di:waypoint x="616" y="160" />
|
|
425
|
+
</bpmndi:BPMNEdge>
|
|
312
426
|
<bpmndi:BPMNEdge id="BPMNEdge_w_toEscalationTask" bpmnElement="w_toEscalationTask">
|
|
313
|
-
<di:waypoint x="
|
|
314
|
-
<di:waypoint x="
|
|
427
|
+
<di:waypoint x="1216" y="280" />
|
|
428
|
+
<di:waypoint x="1316" y="280" />
|
|
315
429
|
</bpmndi:BPMNEdge>
|
|
316
430
|
<bpmndi:BPMNEdge id="BPMNEdge_w_toAnswerGw" bpmnElement="w_toAnswerGw">
|
|
317
|
-
<di:waypoint x="
|
|
318
|
-
<di:waypoint x="
|
|
431
|
+
<di:waypoint x="1416" y="280" />
|
|
432
|
+
<di:waypoint x="1516" y="280" />
|
|
319
433
|
</bpmndi:BPMNEdge>
|
|
320
434
|
<bpmndi:BPMNEdge id="BPMNEdge_f_toBlockedAck" bpmnElement="f_toBlockedAck">
|
|
321
|
-
<di:waypoint x="
|
|
322
|
-
<di:waypoint x="
|
|
435
|
+
<di:waypoint x="2116" y="440" />
|
|
436
|
+
<di:waypoint x="2216" y="440" />
|
|
323
437
|
</bpmndi:BPMNEdge>
|
|
324
438
|
<bpmndi:BPMNEdge id="BPMNEdge_f_blockedEnd" bpmnElement="f_blockedEnd">
|
|
325
|
-
<di:waypoint x="
|
|
326
|
-
<di:waypoint x="
|
|
327
|
-
<di:waypoint x="
|
|
439
|
+
<di:waypoint x="2316" y="440" />
|
|
440
|
+
<di:waypoint x="2434" y="440" />
|
|
441
|
+
<di:waypoint x="2434" y="138" />
|
|
328
442
|
</bpmndi:BPMNEdge>
|
|
329
443
|
<bpmndi:BPMNEdge id="BPMNEdge_f_toEndConverged" bpmnElement="f_toEndConverged">
|
|
330
|
-
<di:waypoint x="
|
|
331
|
-
<di:waypoint x="
|
|
332
|
-
<di:waypoint x="
|
|
444
|
+
<di:waypoint x="2316" y="280" />
|
|
445
|
+
<di:waypoint x="2434" y="280" />
|
|
446
|
+
<di:waypoint x="2434" y="138" />
|
|
333
447
|
</bpmndi:BPMNEdge>
|
|
334
448
|
<bpmndi:BPMNEdge id="BPMNEdge_w_sla" bpmnElement="w_sla">
|
|
335
|
-
<di:waypoint x="
|
|
336
|
-
<di:waypoint x="1016" y="358" />
|
|
449
|
+
<di:waypoint x="1366" y="338" />
|
|
337
450
|
<di:waypoint x="1366" y="358" />
|
|
338
|
-
<di:waypoint x="
|
|
451
|
+
<di:waypoint x="1716" y="358" />
|
|
452
|
+
<di:waypoint x="1716" y="160" />
|
|
339
453
|
<bpmndi:BPMNLabel>
|
|
340
|
-
<dc:Bounds x="
|
|
454
|
+
<dc:Bounds x="1557" y="325" width="88" height="28" />
|
|
341
455
|
</bpmndi:BPMNLabel>
|
|
342
456
|
</bpmndi:BPMNEdge>
|
|
343
457
|
<bpmndi:BPMNEdge id="BPMNEdge_w_answerLoop" bpmnElement="w_answerLoop">
|
|
344
|
-
<di:waypoint x="
|
|
345
|
-
<di:waypoint x="
|
|
346
|
-
<di:waypoint x="
|
|
347
|
-
<di:waypoint x="
|
|
458
|
+
<di:waypoint x="1541" y="305" />
|
|
459
|
+
<di:waypoint x="1541" y="360" />
|
|
460
|
+
<di:waypoint x="816" y="360" />
|
|
461
|
+
<di:waypoint x="816" y="160" />
|
|
462
|
+
<bpmndi:BPMNLabel>
|
|
463
|
+
<dc:Bounds x="1154" y="338" width="49" height="14" />
|
|
464
|
+
</bpmndi:BPMNLabel>
|
|
465
|
+
</bpmndi:BPMNEdge>
|
|
466
|
+
</bpmndi:BPMNPlane>
|
|
467
|
+
</bpmndi:BPMNDiagram>
|
|
468
|
+
<bpmndi:BPMNDiagram id="BPMNDiagram_readiness-preflight">
|
|
469
|
+
<bpmndi:BPMNPlane id="BPMNPlane_readiness-preflight" bpmnElement="readiness-preflight">
|
|
470
|
+
<bpmndi:BPMNShape id="BPMNShape_pf_start" bpmnElement="pf_start">
|
|
471
|
+
<dc:Bounds x="80" y="102" width="36" height="36" />
|
|
472
|
+
<bpmndi:BPMNLabel>
|
|
473
|
+
<dc:Bounds x="65" y="143" width="67" height="28" />
|
|
474
|
+
</bpmndi:BPMNLabel>
|
|
475
|
+
</bpmndi:BPMNShape>
|
|
476
|
+
<bpmndi:BPMNShape id="BPMNShape_preflight-probe" bpmnElement="preflight-probe">
|
|
477
|
+
<dc:Bounds x="216" y="80" width="100" height="80" />
|
|
478
|
+
</bpmndi:BPMNShape>
|
|
479
|
+
<bpmndi:BPMNShape id="BPMNShape_pf_gw" bpmnElement="pf_gw" isMarkerVisible="true">
|
|
480
|
+
<dc:Bounds x="416" y="95" width="50" height="50" />
|
|
481
|
+
<bpmndi:BPMNLabel>
|
|
482
|
+
<dc:Bounds x="370" y="150" width="63" height="28" />
|
|
483
|
+
</bpmndi:BPMNLabel>
|
|
484
|
+
</bpmndi:BPMNShape>
|
|
485
|
+
<bpmndi:BPMNShape id="BPMNShape_readiness-escalation-pf" bpmnElement="readiness-escalation-pf">
|
|
486
|
+
<dc:Bounds x="566" y="80" width="100" height="80" />
|
|
487
|
+
</bpmndi:BPMNShape>
|
|
488
|
+
<bpmndi:BPMNShape id="BPMNShape_pf_gw_res" bpmnElement="pf_gw_res" isMarkerVisible="true">
|
|
489
|
+
<dc:Bounds x="766" y="95" width="50" height="50" />
|
|
490
|
+
<bpmndi:BPMNLabel>
|
|
491
|
+
<dc:Bounds x="751" y="76" width="81" height="14" />
|
|
492
|
+
</bpmndi:BPMNLabel>
|
|
493
|
+
</bpmndi:BPMNShape>
|
|
494
|
+
<bpmndi:BPMNShape id="BPMNShape_pf_end" bpmnElement="pf_end">
|
|
495
|
+
<dc:Bounds x="916" y="102" width="36" height="36" />
|
|
496
|
+
<bpmndi:BPMNLabel>
|
|
497
|
+
<dc:Bounds x="900" y="69" width="69" height="28" />
|
|
498
|
+
</bpmndi:BPMNLabel>
|
|
499
|
+
</bpmndi:BPMNShape>
|
|
500
|
+
<bpmndi:BPMNShape id="BPMNShape_be_pf_probe_timeout" bpmnElement="be_pf_probe_timeout">
|
|
501
|
+
<dc:Bounds x="248" y="142" width="36" height="36" />
|
|
502
|
+
<bpmndi:BPMNLabel>
|
|
503
|
+
<dc:Bounds x="225" y="203" width="83" height="28" />
|
|
504
|
+
</bpmndi:BPMNLabel>
|
|
505
|
+
</bpmndi:BPMNShape>
|
|
506
|
+
<bpmndi:BPMNShape id="BPMNShape_be_pf_sla" bpmnElement="be_pf_sla">
|
|
507
|
+
<dc:Bounds x="598" y="142" width="36" height="36" />
|
|
508
|
+
<bpmndi:BPMNLabel>
|
|
509
|
+
<dc:Bounds x="574" y="223" width="84" height="14" />
|
|
510
|
+
</bpmndi:BPMNLabel>
|
|
511
|
+
</bpmndi:BPMNShape>
|
|
512
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_toProbe" bpmnElement="pf_toProbe">
|
|
513
|
+
<di:waypoint x="116" y="120" />
|
|
514
|
+
<di:waypoint x="216" y="120" />
|
|
515
|
+
</bpmndi:BPMNEdge>
|
|
516
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_probed" bpmnElement="pf_probed">
|
|
517
|
+
<di:waypoint x="316" y="120" />
|
|
518
|
+
<di:waypoint x="416" y="120" />
|
|
519
|
+
</bpmndi:BPMNEdge>
|
|
520
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_escalate" bpmnElement="pf_escalate">
|
|
521
|
+
<di:waypoint x="466" y="120" />
|
|
522
|
+
<di:waypoint x="566" y="120" />
|
|
523
|
+
<bpmndi:BPMNLabel>
|
|
524
|
+
<dc:Bounds x="480" y="98" width="53" height="14" />
|
|
525
|
+
</bpmndi:BPMNLabel>
|
|
526
|
+
</bpmndi:BPMNEdge>
|
|
527
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_toResolution" bpmnElement="pf_toResolution">
|
|
528
|
+
<di:waypoint x="666" y="120" />
|
|
529
|
+
<di:waypoint x="766" y="120" />
|
|
530
|
+
</bpmndi:BPMNEdge>
|
|
531
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_proceed" bpmnElement="pf_proceed">
|
|
532
|
+
<di:waypoint x="816" y="120" />
|
|
533
|
+
<di:waypoint x="916" y="120" />
|
|
534
|
+
<bpmndi:BPMNLabel>
|
|
535
|
+
<dc:Bounds x="824" y="128" width="84" height="14" />
|
|
536
|
+
</bpmndi:BPMNLabel>
|
|
537
|
+
</bpmndi:BPMNEdge>
|
|
538
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_ready" bpmnElement="pf_ready">
|
|
539
|
+
<di:waypoint x="441" y="145" />
|
|
540
|
+
<di:waypoint x="441" y="200" />
|
|
541
|
+
<di:waypoint x="934" y="200" />
|
|
542
|
+
<di:waypoint x="934" y="138" />
|
|
543
|
+
<bpmndi:BPMNLabel>
|
|
544
|
+
<dc:Bounds x="668" y="178" width="39" height="14" />
|
|
545
|
+
</bpmndi:BPMNLabel>
|
|
546
|
+
</bpmndi:BPMNEdge>
|
|
547
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_abandon" bpmnElement="pf_abandon">
|
|
548
|
+
<di:waypoint x="816" y="120" />
|
|
549
|
+
<di:waypoint x="916" y="120" />
|
|
550
|
+
<bpmndi:BPMNLabel>
|
|
551
|
+
<dc:Bounds x="840" y="158" width="53" height="14" />
|
|
552
|
+
</bpmndi:BPMNLabel>
|
|
553
|
+
</bpmndi:BPMNEdge>
|
|
554
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_probeTimedOut" bpmnElement="pf_probeTimedOut">
|
|
555
|
+
<di:waypoint x="266" y="178" />
|
|
556
|
+
<di:waypoint x="266" y="198" />
|
|
557
|
+
<di:waypoint x="336" y="198" />
|
|
558
|
+
<di:waypoint x="336" y="82" />
|
|
559
|
+
<di:waypoint x="546" y="82" />
|
|
560
|
+
<di:waypoint x="546" y="120" />
|
|
561
|
+
<di:waypoint x="566" y="120" />
|
|
562
|
+
<bpmndi:BPMNLabel>
|
|
563
|
+
<dc:Bounds x="341" y="93" width="67" height="14" />
|
|
564
|
+
</bpmndi:BPMNLabel>
|
|
565
|
+
</bpmndi:BPMNEdge>
|
|
566
|
+
<bpmndi:BPMNEdge id="BPMNEdge_pf_sla" bpmnElement="pf_sla">
|
|
567
|
+
<di:waypoint x="616" y="178" />
|
|
568
|
+
<di:waypoint x="616" y="198" />
|
|
569
|
+
<di:waypoint x="934" y="198" />
|
|
570
|
+
<di:waypoint x="934" y="138" />
|
|
348
571
|
<bpmndi:BPMNLabel>
|
|
349
|
-
<dc:Bounds x="
|
|
572
|
+
<dc:Bounds x="731" y="165" width="88" height="28" />
|
|
350
573
|
</bpmndi:BPMNLabel>
|
|
351
574
|
</bpmndi:BPMNEdge>
|
|
352
575
|
</bpmndi:BPMNPlane>
|