@nanobpm/nano-workforce 0.187.5 → 0.187.6

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.
@@ -65,6 +65,7 @@
65
65
  <nano:shape id="PrConvergeGateOut" name="Converge gate — result">
66
66
  <nano:extend name="convergeBlocked" type="boolean" />
67
67
  <nano:extend name="convergeBlockReason" type="string" optional="true" />
68
+ <nano:extend name="reviewStale" type="boolean" optional="true" />
68
69
  </nano:shape>
69
70
  <nano:shape id="EscalationIn" name="Record escalation — input">
70
71
  <nano:extend name="prKey" type="string" />
@@ -168,6 +169,7 @@
168
169
  <bpmn:incoming>f_addressed</bpmn:incoming>
169
170
  <bpmn:incoming>f_waiting</bpmn:incoming>
170
171
  <bpmn:incoming>f_escReenter</bpmn:incoming>
172
+ <bpmn:incoming>f_convergeStale</bpmn:incoming>
171
173
  <bpmn:outgoing>f_roundWait</bpmn:outgoing>
172
174
  </bpmn:serviceTask>
173
175
  <bpmn:serviceTask id="check-progress" name="Check progress">
@@ -216,6 +218,7 @@
216
218
  <bpmn:extensionElements>
217
219
  <zeebe:ioMapping>
218
220
  <zeebe:output source="=round + 1" target="round" />
221
+ <zeebe:output source="=false" target="reviewStale" />
219
222
  </zeebe:ioMapping>
220
223
  </bpmn:extensionElements>
221
224
  <bpmn:incoming>f_toReviewWait</bpmn:incoming>
@@ -305,6 +308,7 @@
305
308
  <zeebe:input source="=answer" target="answer" />
306
309
  <zeebe:output source="=(if scopePending = true then answer else scopeAnswer)" target="scopeAnswer" />
307
310
  <zeebe:output source="=0" target="huskRetries" />
311
+ <zeebe:output source="=false" target="reviewStale" />
308
312
  </zeebe:ioMapping>
309
313
  </bpmn:extensionElements>
310
314
  <bpmn:incoming>f_answerRecord</bpmn:incoming>
@@ -334,6 +338,7 @@
334
338
  <bpmn:exclusiveGateway id="gw-converge-gate" name="comments addressed?" default="f_convergeOk">
335
339
  <bpmn:incoming>f_toConvergeGate</bpmn:incoming>
336
340
  <bpmn:outgoing>f_convergeBlocked</bpmn:outgoing>
341
+ <bpmn:outgoing>f_convergeStale</bpmn:outgoing>
337
342
  <bpmn:outgoing>f_convergeOk</bpmn:outgoing>
338
343
  </bpmn:exclusiveGateway>
339
344
  <bpmn:serviceTask id="persist-escalation-blockedcomments" name="Escalate: unaddressed comments">
@@ -405,6 +410,9 @@
405
410
  <bpmn:sequenceFlow id="f_convergeBlocked" name="unaddressed comments" sourceRef="gw-converge-gate" targetRef="persist-escalation-blockedcomments">
406
411
  <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=convergeBlocked = true</bpmn:conditionExpression>
407
412
  </bpmn:sequenceFlow>
413
+ <bpmn:sequenceFlow id="f_convergeStale" name="review stale" sourceRef="gw-converge-gate" targetRef="persist-round">
414
+ <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=reviewStale = true</bpmn:conditionExpression>
415
+ </bpmn:sequenceFlow>
408
416
  <bpmn:sequenceFlow id="f_convergeOk" name="addressed / default" sourceRef="gw-converge-gate" targetRef="classify-scope" />
409
417
  <bpmn:sequenceFlow id="f_toScopeGate" sourceRef="classify-scope" targetRef="gw-scope-gate" />
410
418
  <bpmn:sequenceFlow id="f_scopeBlocked" name="scope under-delivered" sourceRef="gw-scope-gate" targetRef="persist-escalation-scope">
@@ -421,7 +429,7 @@
421
429
  <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=(status = "needs_input" or status = "blocked") and question != null and trim(question) != ""</bpmn:conditionExpression>
422
430
  </bpmn:sequenceFlow>
423
431
  <bpmn:sequenceFlow id="f_guardMax" name="max rounds" sourceRef="gw-guard" targetRef="persist-escalation-maxrounds">
424
- <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=round &gt;= maxRounds</bpmn:conditionExpression>
432
+ <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">=round &gt;= maxRounds and reviewStale != true</bpmn:conditionExpression>
425
433
  </bpmn:sequenceFlow>
426
434
  <bpmn:sequenceFlow id="f_guardOk" name="continue" sourceRef="gw-guard" targetRef="gw-review-wait" />
427
435
  <bpmn:sequenceFlow id="f_roundWait" sourceRef="persist-round" targetRef="check-progress" />
@@ -471,70 +479,70 @@
471
479
  </bpmndi:BPMNLabel>
472
480
  </bpmndi:BPMNShape>
473
481
  <bpmndi:BPMNShape id="BPMNShape_gw-guard" bpmnElement="gw-guard" isMarkerVisible="true">
474
- <dc:Bounds x="1366" y="575" width="50" height="50" />
482
+ <dc:Bounds x="1716" y="575" width="50" height="50" />
475
483
  <bpmndi:BPMNLabel>
476
- <dc:Bounds x="1349" y="556" width="85" height="14" />
484
+ <dc:Bounds x="1699" y="556" width="85" height="14" />
477
485
  </bpmndi:BPMNLabel>
478
486
  </bpmndi:BPMNShape>
479
487
  <bpmndi:BPMNShape id="BPMNShape_persist-round" bpmnElement="persist-round">
480
- <dc:Bounds x="766" y="560" width="100" height="80" />
488
+ <dc:Bounds x="1116" y="560" width="100" height="80" />
481
489
  </bpmndi:BPMNShape>
482
490
  <bpmndi:BPMNShape id="BPMNShape_check-progress" bpmnElement="check-progress">
483
- <dc:Bounds x="966" y="560" width="100" height="80" />
491
+ <dc:Bounds x="1316" y="560" width="100" height="80" />
484
492
  </bpmndi:BPMNShape>
485
493
  <bpmndi:BPMNShape id="BPMNShape_gw-progress" bpmnElement="gw-progress" isMarkerVisible="true">
486
- <dc:Bounds x="1191" y="575" width="50" height="50" />
494
+ <dc:Bounds x="1541" y="575" width="50" height="50" />
487
495
  <bpmndi:BPMNLabel>
488
- <dc:Bounds x="1186" y="542" width="60" height="28" />
496
+ <dc:Bounds x="1536" y="542" width="60" height="28" />
489
497
  </bpmndi:BPMNLabel>
490
498
  </bpmndi:BPMNShape>
491
499
  <bpmndi:BPMNShape id="BPMNShape_gw-husk" bpmnElement="gw-husk" isMarkerVisible="true">
492
- <dc:Bounds x="1366" y="1055" width="50" height="50" />
500
+ <dc:Bounds x="1716" y="1055" width="50" height="50" />
493
501
  <bpmndi:BPMNLabel>
494
- <dc:Bounds x="1351" y="1022" width="81" height="28" />
502
+ <dc:Bounds x="1701" y="1022" width="81" height="28" />
495
503
  </bpmndi:BPMNLabel>
496
504
  </bpmndi:BPMNShape>
497
505
  <bpmndi:BPMNShape id="BPMNShape_persist-escalation-noprogress" bpmnElement="persist-escalation-noprogress">
498
- <dc:Bounds x="1516" y="1040" width="100" height="80" />
506
+ <dc:Bounds x="1866" y="1040" width="100" height="80" />
499
507
  </bpmndi:BPMNShape>
500
508
  <bpmndi:BPMNShape id="BPMNShape_gw-review-wait" bpmnElement="gw-review-wait" isMarkerVisible="true">
501
- <dc:Bounds x="1541" y="575" width="50" height="50" />
509
+ <dc:Bounds x="1891" y="575" width="50" height="50" />
502
510
  <bpmndi:BPMNLabel>
503
- <dc:Bounds x="1522" y="542" width="88" height="28" />
511
+ <dc:Bounds x="1872" y="542" width="88" height="28" />
504
512
  </bpmndi:BPMNLabel>
505
513
  </bpmndi:BPMNShape>
506
514
  <bpmndi:BPMNShape id="BPMNShape_wait-review" bpmnElement="wait-review">
507
- <dc:Bounds x="1716" y="582" width="36" height="36" />
515
+ <dc:Bounds x="2066" y="582" width="36" height="36" />
508
516
  <bpmndi:BPMNLabel>
509
- <dc:Bounds x="1690" y="549" width="88" height="28" />
517
+ <dc:Bounds x="2040" y="549" width="88" height="28" />
510
518
  </bpmndi:BPMNLabel>
511
519
  </bpmndi:BPMNShape>
512
520
  <bpmndi:BPMNShape id="BPMNShape_wait-review-timeout" bpmnElement="wait-review-timeout">
513
- <dc:Bounds x="1716" y="742" width="36" height="36" />
521
+ <dc:Bounds x="2066" y="742" width="36" height="36" />
514
522
  <bpmndi:BPMNLabel>
515
- <dc:Bounds x="1706" y="783" width="56" height="42" />
523
+ <dc:Bounds x="2056" y="783" width="56" height="42" />
516
524
  </bpmndi:BPMNLabel>
517
525
  </bpmndi:BPMNShape>
518
526
  <bpmndi:BPMNShape id="BPMNShape_persist-review-stalled" bpmnElement="persist-review-stalled">
519
- <dc:Bounds x="1852" y="720" width="100" height="80" />
527
+ <dc:Bounds x="2202" y="720" width="100" height="80" />
520
528
  </bpmndi:BPMNShape>
521
529
  <bpmndi:BPMNShape id="BPMNShape_persist-escalation" bpmnElement="persist-escalation">
522
530
  <dc:Bounds x="766" y="1200" width="100" height="80" />
523
531
  </bpmndi:BPMNShape>
524
532
  <bpmndi:BPMNShape id="BPMNShape_gw-escalated" bpmnElement="gw-escalated" isMarkerVisible="true">
525
- <dc:Bounds x="2052" y="255" width="50" height="50" />
533
+ <dc:Bounds x="2402" y="255" width="50" height="50" />
526
534
  <bpmndi:BPMNLabel>
527
- <dc:Bounds x="1960" y="290" width="74" height="28" />
535
+ <dc:Bounds x="2390" y="222" width="74" height="28" />
528
536
  </bpmndi:BPMNLabel>
529
537
  </bpmndi:BPMNShape>
530
538
  <bpmndi:BPMNShape id="BPMNShape_persist-escalation-maxrounds" bpmnElement="persist-escalation-maxrounds">
531
- <dc:Bounds x="1516" y="880" width="100" height="80" />
539
+ <dc:Bounds x="1866" y="880" width="100" height="80" />
532
540
  </bpmndi:BPMNShape>
533
541
  <bpmndi:BPMNShape id="BPMNShape_wait-answer" bpmnElement="wait-answer">
534
- <dc:Bounds x="2202" y="240" width="100" height="80" />
542
+ <dc:Bounds x="2552" y="240" width="100" height="80" />
535
543
  </bpmndi:BPMNShape>
536
544
  <bpmndi:BPMNShape id="BPMNShape_record-answer" bpmnElement="record-answer">
537
- <dc:Bounds x="2402" y="240" width="100" height="80" />
545
+ <dc:Bounds x="2752" y="240" width="100" height="80" />
538
546
  </bpmndi:BPMNShape>
539
547
  <bpmndi:BPMNShape id="BPMNShape_persist-converged" bpmnElement="persist-converged">
540
548
  <dc:Bounds x="1516" y="80" width="100" height="80" />
@@ -543,30 +551,30 @@
543
551
  <dc:Bounds x="766" y="80" width="100" height="80" />
544
552
  </bpmndi:BPMNShape>
545
553
  <bpmndi:BPMNShape id="BPMNShape_gw-converge-gate" bpmnElement="gw-converge-gate" isMarkerVisible="true">
546
- <dc:Bounds x="991" y="95" width="50" height="50" />
554
+ <dc:Bounds x="966" y="95" width="50" height="50" />
547
555
  <bpmndi:BPMNLabel>
548
- <dc:Bounds x="979" y="150" width="74" height="28" />
556
+ <dc:Bounds x="954" y="62" width="74" height="28" />
549
557
  </bpmndi:BPMNLabel>
550
558
  </bpmndi:BPMNShape>
551
559
  <bpmndi:BPMNShape id="BPMNShape_persist-escalation-blockedcomments" bpmnElement="persist-escalation-blockedcomments">
552
- <dc:Bounds x="1166" y="400" width="100" height="80" />
560
+ <dc:Bounds x="1116" y="400" width="100" height="80" />
553
561
  </bpmndi:BPMNShape>
554
562
  <bpmndi:BPMNShape id="BPMNShape_classify-scope" bpmnElement="classify-scope">
555
- <dc:Bounds x="1166" y="80" width="100" height="80" />
563
+ <dc:Bounds x="1116" y="80" width="100" height="80" />
556
564
  </bpmndi:BPMNShape>
557
565
  <bpmndi:BPMNShape id="BPMNShape_gw-scope-gate" bpmnElement="gw-scope-gate" isMarkerVisible="true">
558
- <dc:Bounds x="1366" y="95" width="50" height="50" />
566
+ <dc:Bounds x="1341" y="95" width="50" height="50" />
559
567
  <bpmndi:BPMNLabel>
560
- <dc:Bounds x="1354" y="62" width="74" height="28" />
568
+ <dc:Bounds x="1329" y="62" width="74" height="28" />
561
569
  </bpmndi:BPMNLabel>
562
570
  </bpmndi:BPMNShape>
563
571
  <bpmndi:BPMNShape id="BPMNShape_persist-escalation-scope" bpmnElement="persist-escalation-scope">
564
572
  <dc:Bounds x="1516" y="240" width="100" height="80" />
565
573
  </bpmndi:BPMNShape>
566
574
  <bpmndi:BPMNShape id="BPMNShape_End" bpmnElement="End">
567
- <dc:Bounds x="1716" y="102" width="36" height="36" />
575
+ <dc:Bounds x="1723" y="102" width="36" height="36" />
568
576
  <bpmndi:BPMNLabel>
569
- <dc:Bounds x="1700" y="143" width="69" height="14" />
577
+ <dc:Bounds x="1707" y="143" width="69" height="14" />
570
578
  </bpmndi:BPMNLabel>
571
579
  </bpmndi:BPMNShape>
572
580
  <bpmndi:BPMNEdge id="BPMNEdge_f_start" bpmnElement="f_start">
@@ -585,110 +593,116 @@
585
593
  <di:waypoint x="666" y="120" />
586
594
  <di:waypoint x="766" y="120" />
587
595
  <bpmndi:BPMNLabel>
588
- <dc:Bounds x="673" y="128" width="67" height="14" />
596
+ <dc:Bounds x="683" y="98" width="67" height="14" />
589
597
  </bpmndi:BPMNLabel>
590
598
  </bpmndi:BPMNEdge>
591
599
  <bpmndi:BPMNEdge id="BPMNEdge_f_toConvergeGate" bpmnElement="f_toConvergeGate">
592
600
  <di:waypoint x="866" y="120" />
593
- <di:waypoint x="991" y="120" />
601
+ <di:waypoint x="966" y="120" />
594
602
  </bpmndi:BPMNEdge>
595
603
  <bpmndi:BPMNEdge id="BPMNEdge_f_convergeOk" bpmnElement="f_convergeOk">
596
- <di:waypoint x="1041" y="120" />
597
- <di:waypoint x="1166" y="120" />
604
+ <di:waypoint x="1016" y="120" />
605
+ <di:waypoint x="1116" y="120" />
598
606
  <bpmndi:BPMNLabel>
599
- <dc:Bounds x="1055" y="87" width="78" height="28" />
607
+ <dc:Bounds x="1027" y="125" width="78" height="28" />
600
608
  </bpmndi:BPMNLabel>
601
609
  </bpmndi:BPMNEdge>
602
610
  <bpmndi:BPMNEdge id="BPMNEdge_f_toScopeGate" bpmnElement="f_toScopeGate">
603
- <di:waypoint x="1266" y="120" />
604
- <di:waypoint x="1366" y="120" />
611
+ <di:waypoint x="1216" y="120" />
612
+ <di:waypoint x="1341" y="120" />
605
613
  </bpmndi:BPMNEdge>
606
614
  <bpmndi:BPMNEdge id="BPMNEdge_f_scopeOk" bpmnElement="f_scopeOk">
607
- <di:waypoint x="1416" y="120" />
615
+ <di:waypoint x="1391" y="120" />
608
616
  <di:waypoint x="1516" y="120" />
609
617
  <bpmndi:BPMNLabel>
610
- <dc:Bounds x="1427" y="125" width="78" height="42" />
618
+ <dc:Bounds x="1415" y="73" width="78" height="42" />
611
619
  </bpmndi:BPMNLabel>
612
620
  </bpmndi:BPMNEdge>
613
621
  <bpmndi:BPMNEdge id="BPMNEdge_f_finalize" bpmnElement="f_finalize">
614
622
  <di:waypoint x="1616" y="120" />
615
- <di:waypoint x="1716" y="120" />
623
+ <di:waypoint x="1723" y="120" />
616
624
  </bpmndi:BPMNEdge>
617
625
  <bpmndi:BPMNEdge id="BPMNEdge_f_guardOk" bpmnElement="f_guardOk">
618
- <di:waypoint x="1416" y="600" />
619
- <di:waypoint x="1541" y="600" />
626
+ <di:waypoint x="1766" y="600" />
627
+ <di:waypoint x="1891" y="600" />
620
628
  <bpmndi:BPMNLabel>
621
- <dc:Bounds x="1426" y="608" width="60" height="14" />
629
+ <dc:Bounds x="1776" y="608" width="60" height="14" />
622
630
  </bpmndi:BPMNLabel>
623
631
  </bpmndi:BPMNEdge>
624
632
  <bpmndi:BPMNEdge id="BPMNEdge_f_roundWait" bpmnElement="f_roundWait">
625
- <di:waypoint x="866" y="600" />
626
- <di:waypoint x="966" y="600" />
633
+ <di:waypoint x="1216" y="600" />
634
+ <di:waypoint x="1316" y="600" />
627
635
  </bpmndi:BPMNEdge>
628
636
  <bpmndi:BPMNEdge id="BPMNEdge_f_checkGate" bpmnElement="f_checkGate">
629
- <di:waypoint x="1066" y="600" />
630
- <di:waypoint x="1191" y="600" />
637
+ <di:waypoint x="1416" y="600" />
638
+ <di:waypoint x="1541" y="600" />
631
639
  </bpmndi:BPMNEdge>
632
640
  <bpmndi:BPMNEdge id="BPMNEdge_f_huskEscalate" bpmnElement="f_huskEscalate">
633
- <di:waypoint x="1416" y="1080" />
634
- <di:waypoint x="1516" y="1080" />
641
+ <di:waypoint x="1766" y="1080" />
642
+ <di:waypoint x="1866" y="1080" />
635
643
  <bpmndi:BPMNLabel>
636
- <dc:Bounds x="1436" y="1088" width="60" height="14" />
644
+ <dc:Bounds x="1786" y="1088" width="60" height="14" />
637
645
  </bpmndi:BPMNLabel>
638
646
  </bpmndi:BPMNEdge>
639
647
  <bpmndi:BPMNEdge id="BPMNEdge_f_progressOk" bpmnElement="f_progressOk">
640
- <di:waypoint x="1241" y="600" />
641
- <di:waypoint x="1366" y="600" />
648
+ <di:waypoint x="1591" y="600" />
649
+ <di:waypoint x="1716" y="600" />
642
650
  <bpmndi:BPMNLabel>
643
- <dc:Bounds x="1258" y="567" width="71" height="28" />
651
+ <dc:Bounds x="1608" y="567" width="71" height="28" />
644
652
  </bpmndi:BPMNLabel>
645
653
  </bpmndi:BPMNEdge>
646
654
  <bpmndi:BPMNEdge id="BPMNEdge_f_noprogressGate" bpmnElement="f_noprogressGate">
647
- <di:waypoint x="1616" y="1080" />
648
- <di:waypoint x="2077" y="1080" />
649
- <di:waypoint x="2077" y="305" />
655
+ <di:waypoint x="1966" y="1080" />
656
+ <di:waypoint x="2427" y="1080" />
657
+ <di:waypoint x="2427" y="305" />
650
658
  </bpmndi:BPMNEdge>
651
659
  <bpmndi:BPMNEdge id="BPMNEdge_f_toReviewWait" bpmnElement="f_toReviewWait">
652
- <di:waypoint x="1591" y="600" />
653
- <di:waypoint x="1716" y="600" />
660
+ <di:waypoint x="1941" y="600" />
661
+ <di:waypoint x="2066" y="600" />
654
662
  </bpmndi:BPMNEdge>
655
663
  <bpmndi:BPMNEdge id="BPMNEdge_f_reviewLoop" bpmnElement="f_reviewLoop">
656
- <di:waypoint x="1734" y="618" />
657
- <di:waypoint x="1734" y="660" />
664
+ <di:waypoint x="2084" y="618" />
665
+ <di:waypoint x="2084" y="660" />
658
666
  <di:waypoint x="266" y="660" />
659
667
  <di:waypoint x="266" y="160" />
660
668
  </bpmndi:BPMNEdge>
661
669
  <bpmndi:BPMNEdge id="BPMNEdge_f_escReenter" bpmnElement="f_escReenter">
662
- <di:waypoint x="2077" y="255" />
663
- <di:waypoint x="2077" y="220" />
664
- <di:waypoint x="816" y="220" />
665
- <di:waypoint x="816" y="560" />
670
+ <di:waypoint x="2427" y="305" />
671
+ <di:waypoint x="2427" y="660" />
672
+ <di:waypoint x="1166" y="660" />
673
+ <di:waypoint x="1166" y="640" />
666
674
  <bpmndi:BPMNLabel>
667
- <dc:Bounds x="1067" y="173" width="74" height="42" />
675
+ <dc:Bounds x="2159" y="613" width="74" height="42" />
668
676
  </bpmndi:BPMNLabel>
669
677
  </bpmndi:BPMNEdge>
670
678
  <bpmndi:BPMNEdge id="BPMNEdge_f_convergeBlocked" bpmnElement="f_convergeBlocked">
671
- <di:waypoint x="1041" y="120" />
672
- <di:waypoint x="1146" y="120" />
673
- <di:waypoint x="1146" y="440" />
674
- <di:waypoint x="1166" y="440" />
679
+ <di:waypoint x="991" y="145" />
680
+ <di:waypoint x="991" y="440" />
681
+ <di:waypoint x="1116" y="440" />
675
682
  <bpmndi:BPMNLabel>
676
- <dc:Bounds x="1151" y="266" width="81" height="28" />
683
+ <dc:Bounds x="1013" y="407" width="81" height="28" />
684
+ </bpmndi:BPMNLabel>
685
+ </bpmndi:BPMNEdge>
686
+ <bpmndi:BPMNEdge id="BPMNEdge_f_convergeStale" bpmnElement="f_convergeStale">
687
+ <di:waypoint x="991" y="145" />
688
+ <di:waypoint x="991" y="600" />
689
+ <di:waypoint x="1116" y="600" />
690
+ <bpmndi:BPMNLabel>
691
+ <dc:Bounds x="996" y="513" width="88" height="14" />
677
692
  </bpmndi:BPMNLabel>
678
693
  </bpmndi:BPMNEdge>
679
694
  <bpmndi:BPMNEdge id="BPMNEdge_f_scopeBlocked" bpmnElement="f_scopeBlocked">
680
- <di:waypoint x="1391" y="145" />
681
- <di:waypoint x="1391" y="220" />
682
- <di:waypoint x="1566" y="220" />
683
- <di:waypoint x="1566" y="240" />
695
+ <di:waypoint x="1366" y="145" />
696
+ <di:waypoint x="1366" y="280" />
697
+ <di:waypoint x="1516" y="280" />
684
698
  <bpmndi:BPMNLabel>
685
- <dc:Bounds x="1298" y="162" width="88" height="42" />
699
+ <dc:Bounds x="1371" y="192" width="88" height="42" />
686
700
  </bpmndi:BPMNLabel>
687
701
  </bpmndi:BPMNEdge>
688
702
  <bpmndi:BPMNEdge id="BPMNEdge_f_addressed" bpmnElement="f_addressed">
689
703
  <di:waypoint x="641" y="145" />
690
704
  <di:waypoint x="641" y="600" />
691
- <di:waypoint x="766" y="600" />
705
+ <di:waypoint x="1116" y="600" />
692
706
  <bpmndi:BPMNLabel>
693
707
  <dc:Bounds x="646" y="359" width="78" height="28" />
694
708
  </bpmndi:BPMNLabel>
@@ -696,91 +710,98 @@
696
710
  <bpmndi:BPMNEdge id="BPMNEdge_f_waiting" bpmnElement="f_waiting">
697
711
  <di:waypoint x="641" y="145" />
698
712
  <di:waypoint x="641" y="600" />
699
- <di:waypoint x="766" y="600" />
713
+ <di:waypoint x="1116" y="600" />
700
714
  <bpmndi:BPMNLabel>
701
715
  <dc:Bounds x="580" y="366" width="56" height="14" />
702
716
  </bpmndi:BPMNLabel>
703
717
  </bpmndi:BPMNEdge>
704
718
  <bpmndi:BPMNEdge id="BPMNEdge_f_escalate" bpmnElement="f_escalate">
705
- <di:waypoint x="666" y="120" />
706
- <di:waypoint x="746" y="120" />
707
- <di:waypoint x="746" y="1240" />
719
+ <di:waypoint x="641" y="145" />
720
+ <di:waypoint x="641" y="1240" />
708
721
  <di:waypoint x="766" y="1240" />
709
722
  <bpmndi:BPMNLabel>
710
- <dc:Bounds x="751" y="666" width="81" height="28" />
723
+ <dc:Bounds x="646" y="906" width="81" height="28" />
711
724
  </bpmndi:BPMNLabel>
712
725
  </bpmndi:BPMNEdge>
713
726
  <bpmndi:BPMNEdge id="BPMNEdge_f_guardMax" bpmnElement="f_guardMax">
714
- <di:waypoint x="1416" y="600" />
715
- <di:waypoint x="1496" y="600" />
716
- <di:waypoint x="1496" y="920" />
717
- <di:waypoint x="1516" y="920" />
727
+ <di:waypoint x="1766" y="600" />
728
+ <di:waypoint x="1846" y="600" />
729
+ <di:waypoint x="1846" y="920" />
730
+ <di:waypoint x="1866" y="920" />
718
731
  <bpmndi:BPMNLabel>
719
- <dc:Bounds x="1417" y="753" width="74" height="14" />
732
+ <dc:Bounds x="1767" y="753" width="74" height="14" />
720
733
  </bpmndi:BPMNLabel>
721
734
  </bpmndi:BPMNEdge>
722
735
  <bpmndi:BPMNEdge id="BPMNEdge_f_noProgress" bpmnElement="f_noProgress">
723
- <di:waypoint x="1241" y="600" />
724
- <di:waypoint x="1346" y="600" />
725
- <di:waypoint x="1346" y="1080" />
726
- <di:waypoint x="1366" y="1080" />
736
+ <di:waypoint x="1591" y="600" />
737
+ <di:waypoint x="1696" y="600" />
738
+ <di:waypoint x="1696" y="1080" />
739
+ <di:waypoint x="1716" y="1080" />
727
740
  <bpmndi:BPMNLabel>
728
- <dc:Bounds x="1351" y="833" width="78" height="14" />
741
+ <dc:Bounds x="1701" y="833" width="78" height="14" />
729
742
  </bpmndi:BPMNLabel>
730
743
  </bpmndi:BPMNEdge>
731
744
  <bpmndi:BPMNEdge id="BPMNEdge_f_toReviewTimeout" bpmnElement="f_toReviewTimeout">
732
- <di:waypoint x="1566" y="625" />
733
- <di:waypoint x="1566" y="760" />
734
- <di:waypoint x="1716" y="760" />
745
+ <di:waypoint x="1916" y="625" />
746
+ <di:waypoint x="1916" y="760" />
747
+ <di:waypoint x="2066" y="760" />
735
748
  </bpmndi:BPMNEdge>
736
749
  <bpmndi:BPMNEdge id="BPMNEdge_f_scopeEscGate" bpmnElement="f_scopeEscGate">
737
750
  <di:waypoint x="1616" y="280" />
738
- <di:waypoint x="2052" y="280" />
751
+ <di:waypoint x="2402" y="280" />
739
752
  </bpmndi:BPMNEdge>
740
753
  <bpmndi:BPMNEdge id="BPMNEdge_f_blockedGate" bpmnElement="f_blockedGate">
741
- <di:waypoint x="1266" y="440" />
742
- <di:waypoint x="2077" y="440" />
743
- <di:waypoint x="2077" y="305" />
754
+ <di:waypoint x="1216" y="440" />
755
+ <di:waypoint x="1636" y="440" />
756
+ <di:waypoint x="1636" y="305" />
757
+ <di:waypoint x="2382" y="305" />
758
+ <di:waypoint x="2382" y="280" />
759
+ <di:waypoint x="2402" y="280" />
744
760
  </bpmndi:BPMNEdge>
745
761
  <bpmndi:BPMNEdge id="BPMNEdge_f_reviewStalled" bpmnElement="f_reviewStalled">
746
- <di:waypoint x="1752" y="760" />
747
- <di:waypoint x="1852" y="760" />
762
+ <di:waypoint x="2102" y="760" />
763
+ <di:waypoint x="2202" y="760" />
748
764
  </bpmndi:BPMNEdge>
749
765
  <bpmndi:BPMNEdge id="BPMNEdge_f_stalledGate" bpmnElement="f_stalledGate">
750
- <di:waypoint x="1952" y="760" />
751
- <di:waypoint x="2077" y="760" />
752
- <di:waypoint x="2077" y="305" />
766
+ <di:waypoint x="2252" y="720" />
767
+ <di:waypoint x="2252" y="280" />
768
+ <di:waypoint x="2402" y="280" />
753
769
  </bpmndi:BPMNEdge>
754
770
  <bpmndi:BPMNEdge id="BPMNEdge_f_escGate" bpmnElement="f_escGate">
755
771
  <di:waypoint x="866" y="1240" />
756
- <di:waypoint x="2077" y="1240" />
757
- <di:waypoint x="2077" y="305" />
772
+ <di:waypoint x="2472" y="1240" />
773
+ <di:waypoint x="2472" y="305" />
774
+ <di:waypoint x="2472" y="280" />
775
+ <di:waypoint x="2452" y="280" />
758
776
  </bpmndi:BPMNEdge>
759
777
  <bpmndi:BPMNEdge id="BPMNEdge_f_escWait" bpmnElement="f_escWait">
760
- <di:waypoint x="2102" y="280" />
761
- <di:waypoint x="2202" y="280" />
778
+ <di:waypoint x="2452" y="280" />
779
+ <di:waypoint x="2552" y="280" />
762
780
  </bpmndi:BPMNEdge>
763
781
  <bpmndi:BPMNEdge id="BPMNEdge_f_maxGate" bpmnElement="f_maxGate">
764
- <di:waypoint x="1616" y="920" />
765
- <di:waypoint x="2077" y="920" />
766
- <di:waypoint x="2077" y="305" />
782
+ <di:waypoint x="1966" y="920" />
783
+ <di:waypoint x="2322" y="920" />
784
+ <di:waypoint x="2322" y="305" />
785
+ <di:waypoint x="2382" y="305" />
786
+ <di:waypoint x="2382" y="280" />
787
+ <di:waypoint x="2402" y="280" />
767
788
  </bpmndi:BPMNEdge>
768
789
  <bpmndi:BPMNEdge id="BPMNEdge_f_answerRecord" bpmnElement="f_answerRecord">
769
- <di:waypoint x="2302" y="280" />
770
- <di:waypoint x="2402" y="280" />
790
+ <di:waypoint x="2652" y="280" />
791
+ <di:waypoint x="2752" y="280" />
771
792
  </bpmndi:BPMNEdge>
772
793
  <bpmndi:BPMNEdge id="BPMNEdge_f_huskRetry" bpmnElement="f_huskRetry">
773
- <di:waypoint x="1391" y="1105" />
774
- <di:waypoint x="1391" y="1125" />
794
+ <di:waypoint x="1741" y="1105" />
795
+ <di:waypoint x="1741" y="1125" />
775
796
  <di:waypoint x="266" y="1125" />
776
797
  <di:waypoint x="266" y="160" />
777
798
  <bpmndi:BPMNLabel>
778
- <dc:Bounds x="788" y="1092" width="82" height="28" />
799
+ <dc:Bounds x="963" y="1092" width="82" height="28" />
779
800
  </bpmndi:BPMNLabel>
780
801
  </bpmndi:BPMNEdge>
781
802
  <bpmndi:BPMNEdge id="BPMNEdge_f_answerLoop" bpmnElement="f_answerLoop">
782
- <di:waypoint x="2452" y="320" />
783
- <di:waypoint x="2452" y="340" />
803
+ <di:waypoint x="2802" y="320" />
804
+ <di:waypoint x="2802" y="340" />
784
805
  <di:waypoint x="266" y="340" />
785
806
  <di:waypoint x="266" y="160" />
786
807
  </bpmndi:BPMNEdge>
@@ -156,6 +156,16 @@ Because several agents may run on the same host at once:
156
156
  `path:line`, it is blind to the advisory's prose, so it would let a resolved ack
157
157
  for one advisory silently acknowledge a genuinely new advisory re-emitted at that
158
158
  same line. Always use the `<path> :: <text>` form.
159
+
160
+ > **Fixing an advisory in code is NOT enough — you MUST also post its resolved
161
+ > `nano-ack:` thread (issues #799 / #789).** Copilot re-lists every suppressed
162
+ > advisory in each review body, *including ones you already fixed in code*. The
163
+ > converge-gate cannot see your diff; it sees only the review body's advisory
164
+ > list and your resolved ack threads. So an advisory you **Applied** (fixed) but
165
+ > left un-acked is still an *outstanding* advisory to the gate — it re-blocks and
166
+ > re-escalates to a human every round even though the code is already correct.
167
+ > Post an `Applied. nano-ack: <path> :: <text>` thread for **every** advisory you
168
+ > fix, not only for the ones you decline.
159
169
  6. **Do NOT request, re-request, or remove the reviewer yourself.** Keeping
160
170
  Copilot attached is the **process's** job: a deterministic poller ensures a
161
171
  Copilot review is requested (idempotently) whenever this PR is waiting, and it