<mxfile host="app.diagrams.net" agent="architecture-diagram" version="24.0.0">
  <diagram name="Discord Bot Platform — Gateway Session Lifecycle" id="17-session-lifecycle">
    <mxGraphModel dx="1400" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1500" pageHeight="790" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="n.s3" value="&lt;b&gt;Ready &amp; streaming&lt;/b&gt;" style="rounded=1;arcSize=8;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="660" y="100" width="190" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico1" 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+gvaeTAAACnUlEQVRoge3az4tNYRzH8ZeZ8TMLSZPxowizUBLyI0lSilLIH0DWs7CQtY0U2ZBIWVlQbAaJhWJhRrKxUUp+lTt+pDB+jDGGxbm3rjv3jOfe+5xzNvOpb/d07vN8v+/PPec5zznPuUyoWE2KnGsttmIlFmEGfuELnuIObmMwYt2WNRk9eIY/ATGEa1hTBGytdkp+2RDw2hjFZczPnVpyuhwpQzQDXx0lrM8Tvg0XI4BXxw/sysvA0QCgl+jFOfQHmviG1VnD75F+2oziElbV9JmCd4EmXmNOVvDT8Sal8HtsTuk3B58DDfzB6awMHEopWMLiqnZtkqvTGdyQmGtkPAxjaWz4jhSQn/69gqzA4waB68XZ2Aa2pBSqPtyrJTNujKtSSXIko+lknSIj6Cp/Pw0vIsFXYkMIWKjLesn6MFDe3i+594mpTSGNQg101dnXX7W9OzBPI1oS0ijUwNw6+95UbXcH5mlEs0IahRqod9s9r/zZiQWBeRrRSMxkL40dZL9xUzJ7xhy8lTgRAhZ6BAbq7GvDDiwMzNGoSiGNQg30tQDSrO7HTLZNNqdJWnwQeSKbirc5GjgfE76iwznBj2BZFgZmyucoXMgCvqLt4jwHp8VrzM7SABzPCH4YG7OGJ3k2uJuBgYN5wFfUhY8R4XvzhK9oX5OwtfFJQYtbcC8A8H/Rkzt1ldZp7ar0XLLsUqhuad7AgQJ4x2iv5uAHJZNjS+poNYFkqfyYxm++nuBrhPoTKlSxXjFdEfgQXqXrONVq4RhjgGRht7PBPk9jFI761FOEYhkYbqJPlGWTWAYeNtHnQaTaUdSN78InsX60F0I6jtJegNTGEJYXxDiu2nHV+PDDktvwaIr5V4NKvg3qr5WO4hFeRa45oUL1F4RjSvd3c7OYAAAAAElFTkSuQmCC;" vertex="1" parent="n.s3">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.s4" value="&lt;b&gt;Degraded: buffer high&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="1050" y="240" 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+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.s4">
          <mxGeometry x="19" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.s5" value="&lt;b&gt;Disconnected&lt;/b&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="910" y="480" width="190" 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+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.s5">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.s1" value="&lt;b&gt;Reconnecting&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;server-set jitter&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="400" y="480" width="190" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico4" 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.s1">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.s6" value="&lt;b&gt;Resuming&lt;/b&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="250" y="240" width="190" height="90" 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.s6">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.centre" value="&lt;b&gt;Session&lt;/b&gt;" style="rounded=1;arcSize=6;whiteSpace=wrap;html=1;fillColor=#f7f9fb;strokeColor=#c9d3de;fontColor=#42536a;fontSize=13;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="640" y="330" width="230" height="50" 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+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.centre">
          <mxGeometry x="9" y="13" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_ring7" value="slow reader" style="curved=1;rounded=0;html=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;" edge="1" parent="1" source="n.s3" target="n.s4">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1050" y="150" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_ring8" value="closed, resumable" style="curved=1;rounded=0;html=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;" edge="1" parent="1" source="n.s4" target="n.s5">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1240" y="430" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_ring9" value="backoff" style="curved=1;rounded=0;html=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;" edge="1" parent="1" source="n.s5" target="n.s1">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="750" y="600" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_ring10" value="session found" style="curved=1;rounded=0;html=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;" edge="1" parent="1" source="n.s1" target="n.s6">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="260" y="430" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_ring11" value="replayed" style="curved=1;rounded=0;html=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;fontFamily=Segoe UI;" edge="1" parent="1" source="n.s6" target="n.s3">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="450" y="150" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="title" value="Discord Bot Platform — Gateway Session Lifecycle" 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="1410" 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="1410" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg12" value="" style="rounded=1;arcSize=30;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
          <mxGeometry x="40" y="710" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg13" value="Opportunity" 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="710" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg14" value="" style="rounded=1;arcSize=30;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
          <mxGeometry x="160" y="710" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg15" 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="190" y="710" width="90" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg16" value="" style="rounded=1;arcSize=30;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
          <mxGeometry x="300" y="710" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg17" 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="330" y="710" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg18" value="" style="rounded=1;arcSize=30;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="420" y="710" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg19" 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="440" y="710" width="110" 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="740" width="1410" height="10" as="geometry" />
        </mxCell>
        <mxCell id="foot" value="v 1.0   ·   owner Integration Platform Architecture   ·   date 2026-10" 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="750" width="1410" height="10" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
