<mxfile host="app.diagrams.net" agent="architecture-diagram" version="24.0.0">
  <diagram name="Retry, Backoff and Circuit Breaking" id="19-retry-and-circuit-breaking">
    <mxGraphModel dx="1400" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1760" pageHeight="590" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="_st1" value="Failure" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="60" width="210" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.r_fail" value="&lt;b&gt;Task attempt failed&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;exception · 5xx · timeout&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#5c1a17;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="40" y="150" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico2" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACo0lEQVRoge2YTYiNURjHf2MuNb5iNsTMpNxSruQjG3ai1N1YSBasWFAsJspCIbGZhRILq1usFLJQGslqdkj5SNgw02AzikEz4ToWZ97mveOc93y975xb3n89Nd3p+T+/Z+b03HMeKFXq/1Zngd41oA6sAoaB3wXWylUdwGVApGIU2BwTykVHaIVPYhhYGJHLSkuBMdQNCOBCPDQ7XUEPL4BJoBqNzqC1wC+yGxDArViAJt3HDJ/EzkiMWu3GHl4AL4FKFFKF5gFvcWtAAIdjwKp0End4AXwGuiPwtmgZ8AW/BgRwcfaRW9XAH14gp1Zt1qmntBFoGgBt4kEIREdA3hCwTfG7JvAc+DPj8+XASo1fHbjnyeKlfbif68XIG6kq5zUwt1jkaXUB7zUgWfedTuR/RZfXXyR0WmczIATyKq3SEkPeV+QxK1Q9wHcDyDVNbp8hTwBXC2QH4IYFxB1N7jqL3CYFPny2kn2Gk3iYkW8zVofwn45azQEeWQI81njssswXwJ68GzjoUPyNxmOvg8cIMD8v+EXAR4finzQ+hxw8BHAqrwYGHAv/0Pj0e/j0hcJXke9Yl8IC9WPljIfPdROgabHVwO+2OAlMACumogocR16/XbQeGAQ+eDCwHfe/WBHxBDkFnVRBvlt9i44Bx4BNyPF5O7CJA64NHA0oNg6sVnheCvAcxWGr1418r/oWG9D4LgB+Bviet21g5mLWNfZneL8K8J1AbrozVcNuu5YVpzXeFeRsD/G+aWpgMLCAQH5rq9YlJ3LwFsAOHXw9pwICeIEcw11AL3COsPOfjqdobqt3c2yg6NiSQKe/IHpUXbWpepMf0g08iwDiI4Fc2/yjNcA34h8PUzSyutuAnETjbQCajibwDjmi22YtX6pUqRz0FyGU+wg7R1qJAAAAAElFTkSuQmCC;" vertex="1" parent="n.r_fail">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_att" value="&lt;b&gt;task_attempt written&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;error code + trace id&lt;/font&gt;" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=11;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#1e3a1e;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="40" y="270" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico3" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADIUlEQVRoge3aTWwVVRjG8V9LkW+kwYDY6kLxC5QNJEIMECEGNSa6MCaGHStXrtyqxI0xJLCCDTGBBRuCiSQuTIgxhAUsABP5SAQlCFhlYaB82AqNdfFO06E9U+5M7+29rf0nbyY9M3Pmee85M/Ocd8o0zaVtHOfOwoosuvBEFp2YjTnZMf9kx9/AAK7jGv7ErziHK1VFlEmgE5vwOtbjOXRUvfAIbuI0vscRnMK/9ei4TQg+KH7JwQmKK/hMjGxlVuCHCRSdir/xqZiKpXgFt5osPh9HxH01ihkFbSfwWNmsG8jT6MexkTvaEwcvFU+TVmN1qjGVQKqtFUjqalWxNTMlE7gt7vxWo7fMwV9p/qMzH31YWyaBDuxrAeGD+AtvlRGfZzOON0n4HezG4qri86zCTpxvsOi7+A4fYmFVsV3Yj2UF+7vxAb7At7ikmtG7IVznfnyM1xTYBbyNHakdKTvdjavixjmAPfixoOM8S8RbfEnW76Jc//1Zf/1iHfB79vdYzMF7+AhrcBjv1qBDt9G/1gV8iS1YUEsnFVmObTgkplNewzepE8YagSIGREIXcBG/ZNurYmHSl108da1FmCsWR89msTzbvihGsIjkCFRZUXUYXkqORa9IZpaYDkXze1zUa0mY4tEsGsqU9EKTilQCdakGNICkrlQC19HTWC2VOF3m4LWGbXUrROGifixewtEmC+/D9irih2jDG/ga9yZQ+DV8jieriF6A5xPti/E+9uJn8Uaul+BbYrQ/wTqjyz3tCqoSRVbikjBxu/BbQaJzxdt4ZXbO49l2vmEj1+lBI3dXPCT+EA+Ky/gp2w4mrtGON0WZsUcFMzcgTNRWE/BWzfGyKClezGlJmrmHWYkZeCeL+zgpqmMnDRu5O+MU2yXM3At4FRvwVK0nl/FCM8X8XDeivUckc1lMlV4xVfrE3J4pptVCYermibLlM8KJziuhYRT1MHNDHzY21qGv0kxJLzSpmJIJTJcWGxDTpcVmCP9/lBarfKnvFh+6VwnPMvSl/pGS/dwUpvEszogy43Fh+mpmPP9qMJJ6lxanmRT8B1M0bJ9FjBNdAAAAAElFTkSuQmCC;" vertex="1" parent="n.r_att">
          <mxGeometry x="12" y="39" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st4" value="Classify" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="320" y="60" width="250" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.r_cls" value="&lt;b&gt;Error taxonomy&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;transient · throttled · permanent&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="320" y="170" width="250" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico5" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.r_cls">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_dec" value="&lt;b&gt;Retryable?&lt;/b&gt;" style="shape=hexagon;perimeter=hexagonPerimeter2;size=0.12;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;fontColor=#4a3c00;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="320" y="270" width="250" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico6" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADLElEQVRoge3YT6hVVRTH8c97vjQyjVQESStCkEQQChV0GIqBg8AMI4IgUpyIRjNp0MgiB0YY4UghrYEURCQIWj2I6I8mBAlF+F9LB5mK9krvbbDvrdtxn3/3nXfOE/zC5vHO2nvt39rnrn3W3tyhWQZK9l+I57EY9+ICPsMu/FapsoqZiHdxE+1Iu4KXGlOXwyA+FheebJsa0pjJRsXEt3EDC5qRGWcQ5xQPoI09dQrMS+LF+Dry/Bd8gTWYkrD9gfuFYPJY2GmTcQbDnfGV8Yz4Kj/Ssa9Lsc/I8bsCP0TGjeAdYQEKMZhjT1vFmYm/SVoZPjdiv3iuTMQGfIUHcrQVYoH4Cl/Ftx2hSdu5DH9PSt+Kk+0bTBhtAAP4seCE3fZ2hb5eGG0AsLrEhJcxO8XPooxxsTfZxsEqAoA3C4gfwaoMH+tTxq3EPfgkYvu9qgAIyXUpRcQxLMsZ/0pk3HUMdewvR+w3la/XMpmCzxOTbFUs2Z6LCGxjr7A4sQ/m6SrFd3k/MUnRIm62UGqUSeLdeU7zvgNVcgb7SvRv4a28TnUGAJtxtmDfN3Akr1PdAZzHE/gpo09LEL9lrET0mwO93C2cHc4mfA1jSRlHdb+BLn9iu7D99rJTvPpNpakACFvv/MSzovnxL00GsBazev6/ge/KOhnK71I5A3gKOxLPPxUuB0pRRwD3YY7wc3kcT/vvQNSlhdf7cV5VAEPC8XMp5uIhPIiHhUItj63CIaYWktvol/hVuRKht1h7rS7hXZIB9Ct8v5J7fow6cqAlXDsex2Fhpzkk1EajpsoAruGAcJY9IZTCp4Ty4e8K5xk1sZ/QDkxtUlQRJuNVXPR/8dfwrIpPTlUzDz/LTswPcVdTArOYgZOK7S4fGIdvYqdyW+SaZmTGmSrcHJQJYLgRpSksFxf5nlCQHY3Y/sKkJsTGSLsKmdaxp91ez7rF0xiRdx5Iuxl7URC5NmJrZ4yrnZnK3+V8X6fAvDdwQSi6yrCrPyljx6PCSanI6h81jhK4l5XC1XmW+GPCQWbcMg8fuTUnLmObcHSsnX4++9PxmCD4vFDfj1Qp6g63E/8AKx6wsTVHQH0AAAAASUVORK5CYII=;" vertex="1" parent="n.r_dec">
          <mxGeometry x="19" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st7" value="Budget" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="640" y="60" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.r_pol" value="&lt;b&gt;Retry policy&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;max 5 · exp · 2 s → 5 m&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="640" y="150" width="200" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico8" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.r_pol">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_bud" value="&lt;b&gt;Attempts remaining?&lt;/b&gt;" style="shape=hexagon;perimeter=hexagonPerimeter2;size=0.12;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;fontColor=#4a3c00;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="640" y="270" width="200" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico9" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADLElEQVRoge3YT6hVVRTH8c97vjQyjVQESStCkEQQChV0GIqBg8AMI4IgUpyIRjNp0MgiB0YY4UghrYEURCQIWj2I6I8mBAlF+F9LB5mK9krvbbDvrdtxn3/3nXfOE/zC5vHO2nvt39rnrn3W3tyhWQZK9l+I57EY9+ICPsMu/FapsoqZiHdxE+1Iu4KXGlOXwyA+FheebJsa0pjJRsXEt3EDC5qRGWcQ5xQPoI09dQrMS+LF+Dry/Bd8gTWYkrD9gfuFYPJY2GmTcQbDnfGV8Yz4Kj/Ssa9Lsc/I8bsCP0TGjeAdYQEKMZhjT1vFmYm/SVoZPjdiv3iuTMQGfIUHcrQVYoH4Cl/Ftx2hSdu5DH9PSt+Kk+0bTBhtAAP4seCE3fZ2hb5eGG0AsLrEhJcxO8XPooxxsTfZxsEqAoA3C4gfwaoMH+tTxq3EPfgkYvu9qgAIyXUpRcQxLMsZ/0pk3HUMdewvR+w3la/XMpmCzxOTbFUs2Z6LCGxjr7A4sQ/m6SrFd3k/MUnRIm62UGqUSeLdeU7zvgNVcgb7SvRv4a28TnUGAJtxtmDfN3Akr1PdAZzHE/gpo09LEL9lrET0mwO93C2cHc4mfA1jSRlHdb+BLn9iu7D99rJTvPpNpakACFvv/MSzovnxL00GsBazev6/ge/KOhnK71I5A3gKOxLPPxUuB0pRRwD3YY7wc3kcT/vvQNSlhdf7cV5VAEPC8XMp5uIhPIiHhUItj63CIaYWktvol/hVuRKht1h7rS7hXZIB9Ct8v5J7fow6cqAlXDsex2Fhpzkk1EajpsoAruGAcJY9IZTCp4Ty4e8K5xk1sZ/QDkxtUlQRJuNVXPR/8dfwrIpPTlUzDz/LTswPcVdTArOYgZOK7S4fGIdvYqdyW+SaZmTGmSrcHJQJYLgRpSksFxf5nlCQHY3Y/sKkJsTGSLsKmdaxp91ez7rF0xiRdx5Iuxl7URC5NmJrZ4yrnZnK3+V8X6fAvDdwQSi6yrCrPyljx6PCSanI6h81jhK4l5XC1XmW+GPCQWbcMg8fuTUnLmObcHSsnX4++9PxmCD4vFDfj1Qp6g63E/8AKx6wsTVHQH0AAAAASUVORK5CYII=;" vertex="1" parent="n.r_bud">
          <mxGeometry x="19" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st10" value="Backoff" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="920" y="60" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.r_calc" value="&lt;b&gt;delay = min(2s·2ⁿ, 5m)&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;full jitter applied&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="920" y="150" width="220" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico11" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAAClElEQVRoge3Zz4tNYRzH8Zdh1HTlR2IojIjIj42sbJQhhdhMFDUS2ciClYVSs6H8AZaarV+xVfKjWNBkYackQyljzCDj18xYnLl1Xfece885z5mL5lPfuuc8z3m+789znnOee56HKTVX0wK1swA3sLiBumPoRU+g3EG0E+Mp4nmoxC2B2kl7J0Pd+WAGmqZQBr4XXD9WMwK1cx9nMHfi+ARKVXUe4OHE79uB8hamt/58cM8WkeiffwamB25vJfZNxMyqsp8Ywgd8CZw3l5bgAl5rbA4Yw10cRltMm1uwsUBmRLNur+iNkmYSq4x+HPX7SOjGKEawoyj4LgzkAK+OR1iBA6KhVj7/FbtDgrfgUkDwyhgW9Xz1+RGsDQE/HZcLgk+Kb1gfwkBRPV8Pfk8I+P0pE3djXkW0406z4DtE7+80ydtrtNOTso1bjcA1MhOfw5xGGquj8ZT1d2NzvUr1DCzHwZSJQ2maBr7a6hk4hdYgONm0XdSJsapnYG8wlGxqEb0QEivEaR2WBcXJps6kwiQD2wKDZNUmCcM4yUBHeJZMasOquMIkA4vCs2TW/LiCJAMLCwDJqkwG0k48RWo0riDJwHABIFkVy5Jk4EWOhLVW3vKsxsWyJK0LPcuR8BCuVxy3yf55OIg3WS5cavL//9eKa0mQSUOoH31pHBekm3kuPqm5vf8Rs/IYKOFdEw2czwNf1ukmwb8X7fzkViueNsHAsRDwZa3Bp0mEvxISvqxd+DEJ8I/lfHCT1CVa7isK/olA4z5JW9XewMgbVxXY89VaJJohQ4AP4vhkgVerE/fqAMbFZ1z0l3x3bBBNOn1qrzCXY0i04nYEs0MkDrbhXKESVos2QEoi8AG8xCvRDs2U/hv9AvPCJpqThg7sAAAAAElFTkSuQmCC;" vertex="1" parent="n.r_calc">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_msg" value="&lt;b&gt;Scheduled message&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Service Bus enqueue time&lt;/font&gt;" style="shape=process;size=0.08;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontColor=#4a3200;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="920" y="270" width="220" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico12" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACzUlEQVRoge3YT4iVVRjH8c8UTZk2zriIqMmNMDYjRoITDIQhNNkupIUwROZGhEQJ0UUtIpJIGojAXctwYyiutM3YbGyRLlw6OStbREF/ZEinGrwtztx85+W9r/eee973jjBfeOCec+59nt/vfd97znkPa/SWvoryrsMQnlhu/4k/0EhdKJWBcUxiF8bwfMF37uBHXMN3uCSY6hkDOIE54cp2Gov4Bq/ULbwfH7j/SKSIWeyoQ/w4biQUno0lTAsXqBIO4++KxGfjBwynFN6Hz2oQno1bGE1l4FTN4pvxK0a6FX84svhZvIHXluMdcX/6eWE9iWJc/DP/TEG+05G5LihZrx5p0f84vhY/I9wt6PsrMteb2N9qsJWBY9gaWbAKTmGwaKDIwACOVyqnc57G0aKBIgOHtHDbY45gfb6zyMCB6rVEsQl78515A+N4oRY5cUzlO/IGJmsSEsurwgz5P3kDu+rTEsWT2JntyBvYVp+WaMayjayBdXiuXi1RrNgfZQ0Mqe4dOSWbso2sgQ0VFy7aXsTwVLaRNfBvogIU38mT+BT3usz9T7aRNbDQZeIsRW9US/gQr+PnLnKv0Jk18Ltw9JGC90rGZvASvo3M/VPZ4HXp3qg+waMltfrwRUTet8oMfJXQQAOX8WxJvR0ROTeXGZhKbKCBX7CnRb0zHeaaLxNPWAsWKzBxD19a+Yb3fkSezx9kgHDcl9pAM65gAgeFabvT37/YjoGJCg10EzPtiG8yuwoE52N3Jwa2i7vFVcW5TsQ3mV4FwhvCgVjp1NmKx/D9KjBQunA9iGHhoLVX4j/uRnyTUWHzVbf40ynEN9kirIIP1ZXPs1E4da5S+G3sq0J8kz68K+xvUos/L3K2iWEQH+G3BMIv63CRSsl6vI2LwvF5u6JvCutMW3ubMlKeQvTjZeHcZkS4SwPCir4gTMdzuLr8eY01VgP/ATwx9n2kRqjjAAAAAElFTkSuQmCC;" vertex="1" parent="n.r_msg">
          <mxGeometry x="21" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st13" value="Circuit" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1210" y="60" width="210" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.r_cb" value="&lt;b&gt;Handler circuit state&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Redis · per task type&lt;/font&gt;" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=11;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#1e3a1e;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1210" y="90" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico14" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.r_cb">
          <mxGeometry x="12" y="39" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_open" value="&lt;b&gt;Circuit open?&lt;/b&gt;" style="shape=hexagon;perimeter=hexagonPerimeter2;size=0.12;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;fontColor=#4a3c00;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1210" y="210" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico15" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADLElEQVRoge3YT6hVVRTH8c97vjQyjVQESStCkEQQChV0GIqBg8AMI4IgUpyIRjNp0MgiB0YY4UghrYEURCQIWj2I6I8mBAlF+F9LB5mK9krvbbDvrdtxn3/3nXfOE/zC5vHO2nvt39rnrn3W3tyhWQZK9l+I57EY9+ICPsMu/FapsoqZiHdxE+1Iu4KXGlOXwyA+FheebJsa0pjJRsXEt3EDC5qRGWcQ5xQPoI09dQrMS+LF+Dry/Bd8gTWYkrD9gfuFYPJY2GmTcQbDnfGV8Yz4Kj/Ssa9Lsc/I8bsCP0TGjeAdYQEKMZhjT1vFmYm/SVoZPjdiv3iuTMQGfIUHcrQVYoH4Cl/Ftx2hSdu5DH9PSt+Kk+0bTBhtAAP4seCE3fZ2hb5eGG0AsLrEhJcxO8XPooxxsTfZxsEqAoA3C4gfwaoMH+tTxq3EPfgkYvu9qgAIyXUpRcQxLMsZ/0pk3HUMdewvR+w3la/XMpmCzxOTbFUs2Z6LCGxjr7A4sQ/m6SrFd3k/MUnRIm62UGqUSeLdeU7zvgNVcgb7SvRv4a28TnUGAJtxtmDfN3Akr1PdAZzHE/gpo09LEL9lrET0mwO93C2cHc4mfA1jSRlHdb+BLn9iu7D99rJTvPpNpakACFvv/MSzovnxL00GsBazev6/ge/KOhnK71I5A3gKOxLPPxUuB0pRRwD3YY7wc3kcT/vvQNSlhdf7cV5VAEPC8XMp5uIhPIiHhUItj63CIaYWktvol/hVuRKht1h7rS7hXZIB9Ct8v5J7fow6cqAlXDsex2Fhpzkk1EajpsoAruGAcJY9IZTCp4Ty4e8K5xk1sZ/QDkxtUlQRJuNVXPR/8dfwrIpPTlUzDz/LTswPcVdTArOYgZOK7S4fGIdvYqdyW+SaZmTGmSrcHJQJYLgRpSksFxf5nlCQHY3Y/sKkJsTGSLsKmdaxp91ez7rF0xiRdx5Iuxl7URC5NmJrZ4yrnZnK3+V8X6fAvDdwQSi6yrCrPyljx6PCSanI6h81jhK4l5XC1XmW+GPCQWbcMg8fuTUnLmObcHSsnX4++9PxmCD4vFDfj1Qp6g63E/8AKx6wsTVHQH0AAAAASUVORK5CYII=;" vertex="1" parent="n.r_open">
          <mxGeometry x="19" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_probe" value="&lt;b&gt;Half-open probe&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;1 in flight&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1210" y="330" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico16" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.r_probe">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st17" value="Outcome" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1490" y="60" width="230" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.r_again" value="&lt;b&gt;Re-dispatched&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;attempt n+1&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1490" y="120" width="230" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico18" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADRUlEQVRoge3ZTYiVVRzH8Y+jM1pj5liSb20KDDXQMnQTpRa0cJGbgoIgyqS1YKiBaItKokVKiyyiTQTqQg20TeUmeoOCCokKF4aKUGPm5Ms0zbg4c53Hy3PufV5nbjBfOIt773n+5/e7zznn+Z//wyQTy5Sa4t6EPvTiP/yNvzCUM84GvIaexHf9eAq/lZc5xkpswzGcwkhKu4Lv8cGogNsyxH0/Euu5KkTPxGaciAzSrg1iP9a0GGNv5Nrnywjvxhb8WVB4WvsUD6SM9WrVBlbgxwqFJ9sQdmN6Yrzt7Qx05RD/Ar7EvTmuycNUvIQvsGD0u4F2F2U1sAv7MCOHoCs4j4s5riFsCF9jqQwGsrBLtilwFu9gPe5oitGN5diII4K5dvFOY2vkt8xrYFOGgX7BE/JNx3nCfL/UJvZgGQP34XKb4JuFf7cod+PzNiYKGejGTy0C/IG1JYQnmYa3qjawpY34eyoSn+T1DMIzGbhF/CE1iHU1iG/wUWTcqIFpKUE2YU5kgO34rKC49UJuc1VYvANCgndptF0Qkr4RJZPMWG7zqxuzwrzsjsQt0qJP4pVYEhHwsjCFOopmA49F+p3DwZq1FKLZwEORfh9juGYthWg2sCzS73AFY52oIAYha/258SG52m8Wdoa0HWAhzlQw+Cwh6yzDIP5J+2GB+N5f19m5NMkpNDPSZ0Aw0pEkDfwb6VMmWaudpIHYwaNXKJN0PF3C4khbB8snUFdLkndgWLxY9Og4aClE83Pg20i/x+sWUhVPS59CQ1g0gboy0yd+4H5vAnXl4oD4XYilGh3Fg+J5+Df+J1vqcXETH+rg1KLBCmHKxEzsUT4pSzJXPJUvzBtaH+s+wewKxtlgrIiws4J41+kRapStTJzCs/JV5RosxLspMXeWk30ji8TfuCTbD3jRWFU5RhdW422t66M7sgrMshiXCKWUeRn6jghP8+8E4/24FfNxJx7G7RnjzBHKLpVwl5AnVVUWadWG8UpVwpP04VDN4s/jyTrEN5giLNpzNYg/IkyzcWG2sFv0VyD8OB4ZL+HN9OIZHBU/DKW1k3gT95cVUGVK0INVwrutxcJdmiW8qb+A34X66lfCDjXJJJ3ANY5hBJkPJRaBAAAAAElFTkSuQmCC;" vertex="1" parent="n.r_again">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_hold" value="&lt;b&gt;Held, not failed&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;circuit open · no budget burn&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1490" y="220" width="230" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico19" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACz0lEQVRoge2ZT4hNURzHP294imjmzYtJFmThkWzGv9IIhaSUFMlGUTYmShMrUlbKRuymlC2biWKhLLCgsZiVUUyUMJhG6dEznnctTo9xnXvO79x7z7kW86mzOfec3+/7vffce/5cmKFYSoI2/cARoNOzljgvgTPASJYg64GowDJqE9hhub5aaNQXK4HZpgY2Az/y05KKJupJJGIz8BD4lpscd+4BP00NJC/xGuAssF9z7TLQcNf1F2uB7bG6FjAADAL1jPEB2I3+JVuWQ+xzmrgT0s62IdTmc0L9ImkiA7oYk9LOUgPvE+qXShMZ0MUYl3aWGngNfNTUb5MmSmAW0KepH5YGMH5jYzxFvQvT2QFUHGLE6QW6NPViAy70E2b2nQIW+jBQBb4HMDDkQ3ybmwEM7PFpoIZaXvgS/wTZ5JqJQU/iW8AW3+IB5gPPPRi4FEJ8m17UIi8v8Y+AckgDAJuBLxmFR6hvfndg7b/ZBLyxCDSVW8CC4KpjdAHXUet2qfBJ4GgRYk3UgNuYhU8Bp1Efgv+KGuopSGbqt6jThrmFKI1RAo4BX3Ef/6PAuvCS/1AGbuAuPD6kDoQWDkr8kEVcHXiG2ks0De2awKGg6oGLBkH3UfuE6XuNKmo5/i6hTwM1OQZhF2rdoruTJy19u4G7mr4R6ijR+5xQBl5okreAw8IYc4A7mhgRcCFnvf9wPCHxFcc4FeCVJk4dWJyX2DglYEyTdJx0j36vJlYEnM9Bq5a+hIQnMsQc1sQbw2FT43IqcTChvgc1s6bhk6ZuObAReJwyZiIjZJu0XMopqSjpwdY8wv4r2CBtKDWwArfhlpVV0oZSA6F3TFVpQ6mBLMeHacjthnUA11CrxlAvcLtMAPuyGthZgPD4JGnENoSWCI36ogfLcYvNQC7/pzLQwPKTz0YFtSEpaghdtQmUrDk6ga2oZXBIPgAPAuecwZlflxYsWuMW9cAAAAAASUVORK5CYII=;" vertex="1" parent="n.r_hold">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.r_dlq" value="&lt;b&gt;Dead-lettered&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;operator owned&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#5c1a17;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1490" y="320" width="230" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico20" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACo0lEQVRoge2YTYiNURjHf2MuNb5iNsTMpNxSruQjG3ai1N1YSBasWFAsJspCIbGZhRILq1usFLJQGslqdkj5SNgw02AzikEz4ToWZ97mveOc93y975xb3n89Nd3p+T+/Z+b03HMeKFXq/1Zngd41oA6sAoaB3wXWylUdwGVApGIU2BwTykVHaIVPYhhYGJHLSkuBMdQNCOBCPDQ7XUEPL4BJoBqNzqC1wC+yGxDArViAJt3HDJ/EzkiMWu3GHl4AL4FKFFKF5gFvcWtAAIdjwKp0End4AXwGuiPwtmgZ8AW/BgRwcfaRW9XAH14gp1Zt1qmntBFoGgBt4kEIREdA3hCwTfG7JvAc+DPj8+XASo1fHbjnyeKlfbif68XIG6kq5zUwt1jkaXUB7zUgWfedTuR/RZfXXyR0WmczIATyKq3SEkPeV+QxK1Q9wHcDyDVNbp8hTwBXC2QH4IYFxB1N7jqL3CYFPny2kn2Gk3iYkW8zVofwn45azQEeWQI81njssswXwJ68GzjoUPyNxmOvg8cIMD8v+EXAR4finzQ+hxw8BHAqrwYGHAv/0Pj0e/j0hcJXke9Yl8IC9WPljIfPdROgabHVwO+2OAlMACumogocR16/XbQeGAQ+eDCwHfe/WBHxBDkFnVRBvlt9i44Bx4BNyPF5O7CJA64NHA0oNg6sVnheCvAcxWGr1418r/oWG9D4LgB+Bviet21g5mLWNfZneL8K8J1AbrozVcNuu5YVpzXeFeRsD/G+aWpgMLCAQH5rq9YlJ3LwFsAOHXw9pwICeIEcw11AL3COsPOfjqdobqt3c2yg6NiSQKe/IHpUXbWpepMf0g08iwDiI4Fc2/yjNcA34h8PUzSyutuAnETjbQCajibwDjmi22YtX6pUqRz0FyGU+wg7R1qJAAAAAElFTkSuQmCC;" vertex="1" parent="n.r_dlq">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_spine21" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="260" y="250" as="sourcePoint" />
            <mxPoint x="310" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine22" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="580" y="250" as="sourcePoint" />
            <mxPoint x="630" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine23" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="850" y="250" as="sourcePoint" />
            <mxPoint x="910" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine24" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="250" as="sourcePoint" />
            <mxPoint x="1200" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine25" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1430" y="250" as="sourcePoint" />
            <mxPoint x="1480" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_e26" value="permanent" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=block;endFill=1;strokeColor=#b85450;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.r_dec" target="n.r_dlq">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="450" y="450" />
              <mxPoint x="1610" y="450" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e27" value="exhausted" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=block;endFill=1;strokeColor=#b85450;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.r_bud" target="n.r_dlq">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="740" y="470" />
              <mxPoint x="1610" y="470" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e28" value="open" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=block;endFill=1;strokeColor=#b85450;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.r_open" target="n.r_hold">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_e29" value="closed" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.r_open" target="n.r_again">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1460" y="260" />
              <mxPoint x="1460" y="160" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="title" value="Retry, Backoff and Circuit Breaking" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=20;fontStyle=1;fontColor=#16202c;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="20" width="1670" height="30" as="geometry" />
        </mxCell>
        <mxCell id="rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#c9d3de;" vertex="1" parent="1">
          <mxGeometry x="40" y="50" width="1670" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg30" value="" style="rounded=1;arcSize=30;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
          <mxGeometry x="40" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg31" value="Risk / gap" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="70" y="490" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg32" value="" style="rounded=1;arcSize=30;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
          <mxGeometry x="160" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg33" value="Data store" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="190" y="490" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg34" value="" style="rounded=1;arcSize=30;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="270" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg35" value="Application we own" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="300" y="490" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg36" value="" style="rounded=1;arcSize=30;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
          <mxGeometry x="430" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg37" value="Decision point" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="460" y="490" width="90" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg38" value="" style="rounded=1;arcSize=30;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1">
          <mxGeometry x="570" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg39" value="Queue / topic" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="600" y="490" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg40" value="" style="html=1;endArrow=none;dashed=1;strokeColor=#b85450;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="700" y="500" as="sourcePoint" />
            <mxPoint x="730" y="500" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg41" value="failure / alternate" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="730" y="490" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg42" value="" style="html=1;endArrow=none;strokeColor=#5a6570;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="870" y="500" as="sourcePoint" />
            <mxPoint x="890" y="500" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg43" value="synchronous" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="890" y="490" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="note" value="Retries are re-enqueued as new scheduled messages rather than abandoned back onto the queue. Backoff can then exceed the lock duration, jitter is real, and the attempt count lives in state where the workflow definition can govern it." style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="520" width="1670" height="20" as="geometry" />
        </mxCell>
        <mxCell id="foot-rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#e3e9ef;" vertex="1" parent="1">
          <mxGeometry x="40" y="540" width="1670" height="10" as="geometry" />
        </mxCell>
        <mxCell id="foot" value="v 1.0   ·   owner Data &amp; AI Global Practice   ·   date 2026-08" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=9;fontColor=#9aa7b4;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="550" width="1670" height="10" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
