mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-07-26 09:52:11 +03:00
v3.8.40 cycle integration → main. All test gates green (Unit/Integration/Coverage/Node-compat/Quality-Ratchet). The only red check, 'PR Test Policy', is the test-masking heuristic firing on the cumulative ~57-commit release diff (legitimate assert consolidations already reviewed per-PR — Gemini CLI removal #5246, retired GPT models #5280, provider catalog refreshes); overridden with --admin per the documented release-PR convention. CodeQL/SonarQube advisory scans non-blocking; #5278's code already passed CodeQL on main. Homologated on VPS 192.168.0.15 (v3.8.40 healthy).
1 line
24 KiB
XML
1 line
24 KiB
XML
<svg id="my-svg" width="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="flowchart" style="max-width: 337.453px; background-color: white;" viewBox="0 0 337.453125 2028" role="graphics-document document" aria-roledescription="flowchart-v2"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#my-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:1px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg p{margin:0;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#my-svg .cluster-label text{fill:#333;}#my-svg .cluster-label span{color:#333;}#my-svg .cluster-label span p{background-color:transparent;}#my-svg .label text,#my-svg span{fill:#333;color:#333;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .rough-node .label text,#my-svg .node .label text,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .rough-node .label,#my-svg .node .label,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#my-svg .arrowheadPath{fill:#333333;}#my-svg .edgePath .path{stroke:#333333;stroke-width:1px;}#my-svg .flowchart-link{stroke:#333333;fill:none;}#my-svg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#my-svg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#my-svg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#my-svg .cluster text{fill:#333;}#my-svg .cluster span{color:#333;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg rect.text{fill:none;stroke-width:0;}#my-svg .icon-shape,#my-svg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .icon-shape p,#my-svg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#my-svg .icon-shape .label rect,#my-svg .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#my-svg .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#my-svg .node .neo-node{stroke:#9370DB;}#my-svg [data-look="neo"].node rect,#my-svg [data-look="neo"].cluster rect,#my-svg [data-look="neo"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#my-svg [data-look="neo"].node path{stroke:#9370DB;stroke-width:1px;}#my-svg [data-look="neo"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#my-svg [data-look="neo"].node .neo-line path{stroke:#9370DB;filter:none;}#my-svg [data-look="neo"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#my-svg [data-look="neo"].node circle .state-start{fill:#000000;}#my-svg [data-look="neo"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#my-svg [data-look="neo"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker id="my-svg_flowchart-v2-pointEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-pointStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="4.5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 5 L 10 10 L 10 0 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-pointEnd-margin" class="marker flowchart-v2" viewBox="0 0 11.5 14" refX="11.5" refY="7" markerUnits="userSpaceOnUse" markerWidth="10.5" markerHeight="14" orient="auto"><path d="M 0 0 L 11.5 7 L 0 14 z" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-pointStart-margin" class="marker flowchart-v2" viewBox="0 0 11.5 14" refX="1" refY="7" markerUnits="userSpaceOnUse" markerWidth="11.5" markerHeight="14" orient="auto"><polygon points="0,7 11.5,14 11.5,0" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="11" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="-1" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleEnd-margin" class="marker flowchart-v2" viewBox="0 0 10 10" refY="5" refX="12.25" markerUnits="userSpaceOnUse" markerWidth="14" markerHeight="14" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleStart-margin" class="marker flowchart-v2" viewBox="0 0 10 10" refX="-2" refY="5" markerUnits="userSpaceOnUse" markerWidth="14" markerHeight="14" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossEnd" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="12" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossStart" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="-1" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossEnd-margin" class="marker cross flowchart-v2" viewBox="0 0 15 15" refX="17.7" refY="7.5" markerUnits="userSpaceOnUse" markerWidth="12" markerHeight="12" orient="auto"><path d="M 1,1 L 14,14 M 1,14 L 14,1" class="arrowMarkerPath" style="stroke-width: 2.5;"/></marker><marker id="my-svg_flowchart-v2-crossStart-margin" class="marker cross flowchart-v2" viewBox="0 0 15 15" refX="-3.5" refY="7.5" markerUnits="userSpaceOnUse" markerWidth="12" markerHeight="12" orient="auto"><path d="M 1,1 L 14,14 M 1,14 L 14,1" class="arrowMarkerPath" style="stroke-width: 2.5; stroke-dasharray: 1, 0;"/></marker><g class="root"><g class="clusters"/><g class="edgePaths"><path d="M168.727,62L168.727,66.167C168.727,70.333,168.727,78.667,168.727,86.333C168.727,94,168.727,101,168.727,104.5L168.727,108" id="my-svg-L_Request_Candidates_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Request_Candidates_0" data-points="W3sieCI6MTY4LjcyNjU2MjUsInkiOjYyfSx7IngiOjE2OC43MjY1NjI1LCJ5Ijo4N30seyJ4IjoxNjguNzI2NTYyNSwieSI6MTEyfV0=" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M168.727,214L168.727,218.167C168.727,222.333,168.727,230.667,168.727,238.333C168.727,246,168.727,253,168.727,256.5L168.727,260" id="my-svg-L_Candidates_Score_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Candidates_Score_0" data-points="W3sieCI6MTY4LjcyNjU2MjUsInkiOjIxNH0seyJ4IjoxNjguNzI2NTYyNSwieSI6MjM5fSx7IngiOjE2OC43MjY1NjI1LCJ5IjoyNjR9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M168.727,1788L168.727,1792.167C168.727,1796.333,168.727,1804.667,168.727,1812.333C168.727,1820,168.727,1827,168.727,1830.5L168.727,1834" id="my-svg-L_Final_Top_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Final_Top_0" data-points="W3sieCI6MTY4LjcyNjU2MjUsInkiOjE3ODh9LHsieCI6MTY4LjcyNjU2MjUsInkiOjE4MTN9LHsieCI6MTY4LjcyNjU2MjUsInkiOjE4Mzh9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M168.727,1892L168.727,1896.167C168.727,1900.333,168.727,1908.667,168.727,1916.333C168.727,1924,168.727,1931,168.727,1934.5L168.727,1938" id="my-svg-L_Top_Dispatch_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Top_Dispatch_0" data-points="W3sieCI6MTY4LjcyNjU2MjUsInkiOjE4OTJ9LHsieCI6MTY4LjcyNjU2MjUsInkiOjE5MTd9LHsieCI6MTY4LjcyNjU2MjUsInkiOjE5NDJ9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M168.727,342L168.727,346.167C168.727,350.333,168.727,358.667,168.727,366.333C168.727,374,168.727,381,168.727,384.5L168.727,388" id="my-svg-L_Score_Factors_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Score_Factors_0" data-points="W3sieCI6MTY4LjcyNjU2MjUsInkiOjM0Mn0seyJ4IjoxNjguNzI2NTYyNSwieSI6MzY3fSx7IngiOjE2OC43MjY1NjI1LCJ5IjozOTJ9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M168.727,1660L168.727,1664.167C168.727,1668.333,168.727,1676.667,168.727,1684.333C168.727,1692,168.727,1699,168.727,1702.5L168.727,1706" id="my-svg-L_Factors_Final_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Factors_Final_0" data-points="W3sieCI6MTY4LjcyNjU2MjUsInkiOjE2NjB9LHsieCI6MTY4LjcyNjU2MjUsInkiOjE2ODV9LHsieCI6MTY4LjcyNjU2MjUsInkiOjE3MTB9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/></g><g class="edgeLabels"><g class="edgeLabel"><g class="label" data-id="L_Request_Candidates_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_Candidates_Score_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_Final_Top_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_Top_Dispatch_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_Score_Factors_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_Factors_Final_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"></span></div></foreignObject></g></g></g><g class="nodes"><g class="root" transform="translate(0, 384)"><g class="clusters"><g class="cluster" id="my-svg-Factors" data-look="classic"><rect style="" x="8" y="8" width="321.453125" height="1268"/><g class="cluster-label" transform="translate(36.890625, 8)"><foreignObject width="263.671875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5;"><span class="nodeLabel"><p>12-factor scoring weights (sum = 1.0)</p></span></div></foreignObject></g></g></g><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"><g class="node default" id="my-svg-flowchart-f1-4" data-look="classic" transform="translate(168.7265625, 70)"><rect class="basic label-container" style="" x="-74.921875" y="-27" width="149.84375" height="54"/><g class="label" style="" transform="translate(-44.921875, -12)"><rect/><foreignObject width="89.84375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>health (0.20)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f2-5" data-look="classic" transform="translate(168.7265625, 174)"><rect class="basic label-container" style="" x="-73.140625" y="-27" width="146.28125" height="54"/><g class="label" style="" transform="translate(-43.140625, -12)"><rect/><foreignObject width="86.28125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>quota (0.15)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f3-6" data-look="classic" transform="translate(168.7265625, 278)"><rect class="basic label-container" style="" x="-78.46875" y="-27" width="156.9375" height="54"/><g class="label" style="" transform="translate(-48.46875, -12)"><rect/><foreignObject width="96.9375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>costInv (0.15)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f4-7" data-look="classic" transform="translate(168.7265625, 382)"><rect class="basic label-container" style="" x="-89.140625" y="-27" width="178.28125" height="54"/><g class="label" style="" transform="translate(-59.140625, -12)"><rect/><foreignObject width="118.28125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>latencyInv (0.12)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f5-8" data-look="classic" transform="translate(168.7265625, 486)"><rect class="basic label-container" style="" x="-76.6796875" y="-27" width="153.359375" height="54"/><g class="label" style="" transform="translate(-46.6796875, -12)"><rect/><foreignObject width="93.359375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>taskFit (0.08)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f6-9" data-look="classic" transform="translate(168.7265625, 590)"><rect class="basic label-container" style="" x="-79.796875" y="-27" width="159.59375" height="54"/><g class="label" style="" transform="translate(-49.796875, -12)"><rect/><foreignObject width="99.59375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>stability (0.05)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f7-10" data-look="classic" transform="translate(168.7265625, 694)"><rect class="basic label-container" style="" x="-89.125" y="-27" width="178.25" height="54"/><g class="label" style="" transform="translate(-59.125, -12)"><rect/><foreignObject width="118.25" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>tierPriority (0.05)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f8-11" data-look="classic" transform="translate(168.7265625, 798)"><rect class="basic label-container" style="" x="-88.1015625" y="-27" width="176.203125" height="54"/><g class="label" style="" transform="translate(-58.1015625, -12)"><rect/><foreignObject width="116.203125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>tierAffinity (0.05)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f9-12" data-look="classic" transform="translate(168.7265625, 902)"><rect class="basic label-container" style="" x="-109.5859375" y="-27" width="219.171875" height="54"/><g class="label" style="" transform="translate(-79.5859375, -12)"><rect/><foreignObject width="159.171875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>specificityMatch (0.05)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f10-13" data-look="classic" transform="translate(168.7265625, 1006)"><rect class="basic label-container" style="" x="-102.78125" y="-27" width="205.5625" height="54"/><g class="label" style="" transform="translate(-72.78125, -12)"><rect/><foreignObject width="145.5625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>contextAffinity (0.05)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f11-14" data-look="classic" transform="translate(168.7265625, 1110)"><rect class="basic label-container" style="" x="-118.4921875" y="-27" width="236.984375" height="54"/><g class="label" style="" transform="translate(-88.4921875, -12)"><rect/><foreignObject width="176.984375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>connectionDensity (0.05)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-f12-15" data-look="classic" transform="translate(168.7265625, 1214)"><rect class="basic label-container" style="" x="-123.2265625" y="-27" width="246.453125" height="54"/><g class="label" style="" transform="translate(-93.2265625, -12)"><rect/><foreignObject width="186.453125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>resetWindowAffinity (0.00)</p></span></div></foreignObject></g></g></g></g><g class="node default" id="my-svg-flowchart-Request-0" data-look="classic" transform="translate(168.7265625, 35)"><rect class="basic label-container" style="" x="-91.3671875" y="-27" width="182.734375" height="54"/><g class="label" style="" transform="translate(-61.3671875, -12)"><rect/><foreignObject width="122.734375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>Incoming request</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-Candidates-1" data-look="classic" transform="translate(168.7265625, 163)"><rect class="basic label-container" style="" x="-130" y="-51" width="260" height="102"/><g class="label" style="" transform="translate(-100, -36)"><rect/><foreignObject width="200" height="72"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>Eligible candidates<br />(provider × model × account)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-Score-3" data-look="classic" transform="translate(168.7265625, 303)"><rect class="basic label-container" style="" x="-122.9296875" y="-39" width="245.859375" height="78"/><g class="label" style="" transform="translate(-92.9296875, -24)"><rect/><foreignObject width="185.859375" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>Compute composite score<br />per candidate</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-Final-19" data-look="classic" transform="translate(168.7265625, 1749)"><rect class="basic label-container" style="" x="-77.1328125" y="-39" width="154.265625" height="78"/><g class="label" style="" transform="translate(-47.1328125, -24)"><rect/><foreignObject width="94.265625" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>Sort by score<br />(desc)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-Top-21" data-look="classic" transform="translate(168.7265625, 1865)"><rect class="basic label-container" style="" x="-93.578125" y="-27" width="187.15625" height="54"/><g class="label" style="" transform="translate(-63.578125, -12)"><rect/><foreignObject width="127.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>Pick top-N targets</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-Dispatch-23" data-look="classic" transform="translate(168.7265625, 1981)"><rect class="basic label-container" style="" x="-118.9140625" y="-39" width="237.828125" height="78"/><g class="label" style="" transform="translate(-88.9140625, -24)"><rect/><foreignObject width="177.828125" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>Dispatch sequentially<br />(short-circuit on success)</p></span></div></foreignObject></g></g></g></g></g><defs><filter id="my-svg-drop-shadow" height="130%" width="130%"><feDropShadow dx="4" dy="4" stdDeviation="0" flood-opacity="0.06" flood-color="#000000"/></filter></defs><defs><filter id="my-svg-drop-shadow-small" height="150%" width="150%"><feDropShadow dx="2" dy="2" stdDeviation="0" flood-opacity="0.06" flood-color="#000000"/></filter></defs></svg> |