developers/zcash-zf-dag.html

583 lines
44 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html>
<head>
<title>Zcash zf DAG</title>
<!-- Pan/zoom SVGs -->
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
<link rel="stylesheet" href="zcash-dag.css">
<style>
@media (prefers-color-scheme: dark) {
body {
/* Material dark theme surface colour */
background-color: #121212;
}
}
</style>
</head>
<body>
<div id="dag"><svg width="1052pt" height="1913pt"
viewBox="0.00 0.00 1052.00 1912.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 1908.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1908.5 1048,-1908.5 1048,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,-76 260,-355 1044,-355 1044,-76 260,-76"/>
<text text-anchor="middle" x="652" y="-339.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<!-- ZcashFoundation/zebra#5803 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#5803</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5803" xlink:title="ZcashFoundation/zebra#5803&#10;Manually test the&#10;`getblocktemplate` RPC&#10;creates valid blocks" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-324 268,-324 268,-256 500,-256 500,-324"/>
<text text-anchor="middle" x="384" y="-308.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5803</text>
<text text-anchor="middle" x="384" y="-293.8" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test the</text>
<text text-anchor="middle" x="384" y="-278.8" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` RPC</text>
<text text-anchor="middle" x="384" y="-263.8" font-family="Times,serif" font-size="14.00" fill="#000000">creates valid blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5685 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5685</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5685" xlink:title="ZcashFoundation/zebra#5685&#10;Test the getblocktemplate&#10;RPC&#39;s response as a block&#10;template proposal in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="768,-222 536,-222 536,-154 768,-154 768,-222"/>
<text text-anchor="middle" x="652" y="-206.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5685</text>
<text text-anchor="middle" x="652" y="-191.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test the getblocktemplate</text>
<text text-anchor="middle" x="652" y="-176.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC&#39;s response as a block</text>
<text text-anchor="middle" x="652" y="-161.8" font-family="Times,serif" font-size="14.00" fill="#000000">template proposal in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5803&#45;&gt;ZcashFoundation/zebra#5685 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#5803&#45;&gt;ZcashFoundation/zebra#5685</title>
<path fill="none" stroke="#000000" d="M476.88,-255.94C484.72,-252.96 492.51,-249.95 500,-247 516.13,-240.65 519.89,-238.41 536,-232 541.13,-229.96 546.39,-227.89 551.71,-225.81"/>
<polygon fill="#000000" stroke="#000000" points="553.2854,-228.9529 561.34,-222.07 550.7512,-222.4277 553.2854,-228.9529"/>
</g>
<!-- ZcashFoundation/zebra#5934 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5934</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5934" xlink:title="ZcashFoundation/zebra#5934&#10;Manually test that Zcash&#10;mining pools can use&#10;Zebra to mine blocks on&#10;testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="768,-323.5 536,-323.5 536,-240.5 768,-240.5 768,-323.5"/>
<text text-anchor="middle" x="652" y="-308.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5934</text>
<text text-anchor="middle" x="652" y="-293.3" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that Zcash</text>
<text text-anchor="middle" x="652" y="-278.3" font-family="Times,serif" font-size="14.00" fill="#000000">mining pools can use</text>
<text text-anchor="middle" x="652" y="-263.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra to mine blocks on</text>
<text text-anchor="middle" x="652" y="-248.3" font-family="Times,serif" font-size="14.00" fill="#000000">testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5686 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5686</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5686" xlink:title="ZcashFoundation/zebra#5686&#10;Manually test that each&#10;mining RPC works&#10;correctly" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1036,-316 804,-316 804,-248 1036,-248 1036,-316"/>
<text text-anchor="middle" x="920" y="-300.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5686</text>
<text text-anchor="middle" x="920" y="-285.8" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that each</text>
<text text-anchor="middle" x="920" y="-270.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining RPC works</text>
<text text-anchor="middle" x="920" y="-255.8" font-family="Times,serif" font-size="14.00" fill="#000000">correctly</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5686 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5686</title>
<path fill="none" stroke="#000000" d="M768.38,-282C776.71,-282 785.14,-282 793.53,-282"/>
<polygon fill="#000000" stroke="#000000" points="793.74,-285.5001 803.74,-282 793.74,-278.5001 793.74,-285.5001"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6025" xlink:title="ZcashFoundation/zebra#6025&#10;Add a manually&#45;triggered&#10;workflow for mining a&#10;block on testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1036,-68 804,-68 804,0 1036,0 1036,-68"/>
<text text-anchor="middle" x="920" y="-52.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="920" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="920" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">workflow for mining a</text>
<text text-anchor="middle" x="920" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M759.34,-240.09C762.44,-237.25 765.34,-234.22 768,-231 811.94,-177.72 760.52,-130.24 800.9,-76.359"/>
<polygon fill="#000000" stroke="#000000" points="803.8479,-78.288 807.55,-68.361 798.4654,-73.8126 803.8479,-78.288"/>
</g>
<!-- ZcashFoundation/zebra#5722 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5722</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5722" xlink:title="ZcashFoundation/zebra#5722&#10;Implement validateaddress&#10;and z_validateaddress&#10;RPCs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-238 268,-238 268,-170 500,-170 500,-238"/>
<text text-anchor="middle" x="384" y="-222.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5722</text>
<text text-anchor="middle" x="384" y="-207.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement validateaddress</text>
<text text-anchor="middle" x="384" y="-192.8" font-family="Times,serif" font-size="14.00" fill="#000000">and z_validateaddress</text>
<text text-anchor="middle" x="384" y="-177.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPCs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#5934 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#5934</title>
<path fill="none" stroke="#000000" d="M500.38,-237.87C508.9,-240.35 517.51,-242.86 526.08,-245.35"/>
<polygon fill="#000000" stroke="#000000" points="525.1604,-248.7275 535.74,-248.16 527.1156,-242.0061 525.1604,-248.7275"/>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M477.58,-169.89C485.19,-166.94 492.74,-163.96 500,-161 516.22,-154.4 519.55,-151 536,-145 560.79,-135.96 691.66,-98.479 793.82,-69.545"/>
<polygon fill="#000000" stroke="#000000" points="794.9418,-72.865 803.61,-66.773 793.0347,-66.1298 794.9418,-72.865"/>
</g>
<!-- ZcashFoundation/zebra#6030 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#6030</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6030" xlink:title="ZcashFoundation/zebra#6030&#10;Implement&#10;z_listunifiedreceivers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="768,-67.5 536,-67.5 536,-14.5 768,-14.5 768,-67.5"/>
<text text-anchor="middle" x="652" y="-52.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6030</text>
<text text-anchor="middle" x="652" y="-37.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="652" y="-22.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6030 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6030</title>
<path fill="none" stroke="#000000" d="M489.34,-169.96C493.11,-167.2 496.69,-164.22 500,-161 528.34,-133.48 507.66,-104.85 534.04,-74.892"/>
<polygon fill="#000000" stroke="#000000" points="536.702,-77.1819 541.35,-67.661 531.7792,-72.2053 536.702,-77.1819"/>
</g>
<!-- ZcashFoundation/zebra#6028 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#6028</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6028" xlink:title="ZcashFoundation/zebra#6028&#10;Document how to mine on&#10;testnet using Zebra and&#10;mining pool software" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-152 268,-152 268,-84 500,-84 500,-152"/>
<text text-anchor="middle" x="384" y="-136.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6028</text>
<text text-anchor="middle" x="384" y="-121.8" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to mine on</text>
<text text-anchor="middle" x="384" y="-106.8" font-family="Times,serif" font-size="14.00" fill="#000000">testnet using Zebra and</text>
<text text-anchor="middle" x="384" y="-91.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining pool software</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5297" xlink:title="ZcashFoundation/zebra#5297&#10;Add metrics for chain&#10;fork work and lengths" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-441.5 0,-441.5 0,-388.5 232,-388.5 232,-441.5"/>
<text text-anchor="middle" x="116" y="-426.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="116" y="-411.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="116" y="-396.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2375" xlink:title="ZcashFoundation/zebra#2375&#10;Allow different `zebra&#45;&#10;network` apps to use&#10;different user agents" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-566 0,-566 0,-498 232,-498 232,-566"/>
<text text-anchor="middle" x="116" y="-550.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="116" y="-535.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="116" y="-520.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="116" y="-505.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node11" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/794" xlink:title="ZcashFoundation/zebra#794&#10;Make sure custom user&#10;agents conform to BIP&#45;14" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="495.5,-558.5 272.5,-558.5 272.5,-505.5 495.5,-505.5 495.5,-558.5"/>
<text text-anchor="middle" x="384" y="-543.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="384" y="-528.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="384" y="-513.3" font-family="Times,serif" font-size="14.00" fill="#000000">agents conform to BIP&#45;14</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M232.38,-532C242.23,-532 252.22,-532 262.11,-532"/>
<polygon fill="#000000" stroke="#000000" points="262.39,-535.5001 272.39,-532 262.39,-528.5001 262.39,-535.5001"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5472" xlink:title="ZcashFoundation/zebra#5472&#10;Support shielded coinbase&#10;in `getblocktemplate` for&#10;Sapling addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-652 0,-652 0,-584 232,-584 232,-652"/>
<text text-anchor="middle" x="116" y="-636.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="116" y="-621.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="116" y="-606.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="116" y="-591.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5929 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#5929</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5929" xlink:title="ZcashFoundation/zebra#5929&#10;Support shielded coinbase&#10;in `getblocktemplate` for&#10;Orchard Unified addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-652 268,-652 268,-584 500,-584 500,-652"/>
<text text-anchor="middle" x="384" y="-636.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5929</text>
<text text-anchor="middle" x="384" y="-621.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="384" y="-606.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="384" y="-591.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Unified addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M232.38,-618C240.71,-618 249.14,-618 257.53,-618"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-621.5001 267.74,-618 257.74,-614.5001 257.74,-621.5001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-723.5 0,-723.5 0,-670.5 232,-670.5 232,-723.5"/>
<text text-anchor="middle" x="116" y="-708.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-693.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-678.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5336" xlink:title="ZcashFoundation/zebra#5336&#10;Relay and accept mempool&#10;transactions based on the&#10;ZIP&#45;317 fee rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-810 0,-810 0,-742 232,-742 232,-810"/>
<text text-anchor="middle" x="116" y="-794.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="116" y="-779.8" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="116" y="-764.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="116" y="-749.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1615" xlink:title="ZcashFoundation/zebra#1615&#10;Zebra release candidate&#10;binaries should be linked&#10;from ZFND website" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-896 0,-896 0,-828 232,-828 232,-896"/>
<text text-anchor="middle" x="116" y="-880.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="116" y="-865.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="116" y="-850.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="116" y="-835.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6055 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#6055</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6055" xlink:title="ZcashFoundation/zebra#6055&#10;Implement the&#10;`getdifficulty` RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-487.5 268,-487.5 268,-434.5 500,-434.5 500,-487.5"/>
<text text-anchor="middle" x="384" y="-472.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6055</text>
<text text-anchor="middle" x="384" y="-457.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the</text>
<text text-anchor="middle" x="384" y="-442.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getdifficulty` RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6055&#45;&gt;ZcashFoundation/zebra#5934 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#6055&#45;&gt;ZcashFoundation/zebra#5934</title>
<path fill="none" stroke="#000000" d="M483.43,-434.47C489.15,-431.88 494.72,-429.06 500,-426 542.61,-401.28 582.7,-362.38 611,-331.24"/>
<polygon fill="#000000" stroke="#000000" points="613.87,-333.2819 617.94,-323.5 608.6583,-328.6088 613.87,-333.2819"/>
</g>
<!-- ZcashFoundation/zebra#6054 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#6054</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6054" xlink:title="ZcashFoundation/zebra#6054&#10;Use error code &#45;1 for&#10;incorrect RPC parameters" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-416.5 268,-416.5 268,-363.5 500,-363.5 500,-416.5"/>
<text text-anchor="middle" x="384" y="-401.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6054</text>
<text text-anchor="middle" x="384" y="-386.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use error code &#45;1 for</text>
<text text-anchor="middle" x="384" y="-371.3" font-family="Times,serif" font-size="14.00" fill="#000000">incorrect RPC parameters</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6054&#45;&gt;ZcashFoundation/zebra#5934 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#6054&#45;&gt;ZcashFoundation/zebra#5934</title>
<path fill="none" stroke="#000000" d="M487.75,-363.44C491.91,-362.01 496.01,-360.53 500,-359 522.83,-350.28 546.75,-339.16 568.69,-328.11"/>
<polygon fill="#000000" stroke="#000000" points="570.3187,-331.2083 577.64,-323.55 567.1409,-324.9712 570.3187,-331.2083"/>
</g>
<!-- ZcashFoundation/zebra#5963 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#5963</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5963" xlink:title="ZcashFoundation/zebra#5963&#10;change(ci): Run block&#10;proposal tests in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-967.5 0,-967.5 0,-963.5 -4,-963.5 -4,-959.5 0,-959.5 0,-922.5 -4,-922.5 -4,-918.5 0,-918.5 0,-914.5 232,-914.5 232,-967.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-963.5 4,-963.5 4,-959.5 0,-959.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-922.5 4,-922.5 4,-918.5 0,-918.5 "/>
<text text-anchor="middle" x="116" y="-952.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5963</text>
<text text-anchor="middle" x="116" y="-937.3" font-family="Times,serif" font-size="14.00" fill="#000000">change(ci): Run block</text>
<text text-anchor="middle" x="116" y="-922.3" font-family="Times,serif" font-size="14.00" fill="#000000">proposal tests in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6013 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#6013</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/6013" xlink:title="ZcashFoundation/zebra#6013&#10;use `reddsa` crate and&#10;remove duplicated&#10;RedPallas code" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1054 0,-1054 0,-1050 -4,-1050 -4,-1046 0,-1046 0,-994 -4,-994 -4,-990 0,-990 0,-986 232,-986 232,-1054"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-1050 4,-1050 4,-1046 0,-1046 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-994 4,-994 4,-990 0,-990 "/>
<text text-anchor="middle" x="116" y="-1038.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6013</text>
<text text-anchor="middle" x="116" y="-1023.8" font-family="Times,serif" font-size="14.00" fill="#000000">use `reddsa` crate and</text>
<text text-anchor="middle" x="116" y="-1008.8" font-family="Times,serif" font-size="14.00" fill="#000000">remove duplicated</text>
<text text-anchor="middle" x="116" y="-993.8" font-family="Times,serif" font-size="14.00" fill="#000000">RedPallas code</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5981 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#5981</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5981" xlink:title="ZcashFoundation/zebra#5981&#10;Use the same format as&#10;`zcashd` for&#10;`getblocktemplate`&#10;proposal mode errors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-331.5 0,-331.5 0,-248.5 232,-248.5 232,-331.5"/>
<text text-anchor="middle" x="116" y="-316.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5981</text>
<text text-anchor="middle" x="116" y="-301.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use the same format as</text>
<text text-anchor="middle" x="116" y="-286.3" font-family="Times,serif" font-size="14.00" fill="#000000">`zcashd` for</text>
<text text-anchor="middle" x="116" y="-271.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate`</text>
<text text-anchor="middle" x="116" y="-256.3" font-family="Times,serif" font-size="14.00" fill="#000000">proposal mode errors</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5981&#45;&gt;ZcashFoundation/zebra#5803 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#5981&#45;&gt;ZcashFoundation/zebra#5803</title>
<path fill="none" stroke="#000000" d="M232.38,-290C240.71,-290 249.14,-290 257.53,-290"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-293.5001 267.74,-290 257.74,-286.5001 257.74,-293.5001"/>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node22"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6037" xlink:title="ZcashFoundation/zebra#6037&#10;Don&#39;t return from long&#10;polling if the block&#10;template is an invalid&#10;block proposal" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1155.5 0,-1155.5 0,-1072.5 232,-1072.5 232,-1155.5"/>
<text text-anchor="middle" x="116" y="-1140.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="116" y="-1125.3" font-family="Times,serif" font-size="14.00" fill="#000000">Don&#39;t return from long</text>
<text text-anchor="middle" x="116" y="-1110.3" font-family="Times,serif" font-size="14.00" fill="#000000">polling if the block</text>
<text text-anchor="middle" x="116" y="-1095.3" font-family="Times,serif" font-size="14.00" fill="#000000">template is an invalid</text>
<text text-anchor="middle" x="116" y="-1080.3" font-family="Times,serif" font-size="14.00" fill="#000000">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6047" xlink:title="ZcashFoundation/zebra#6047&#10;Verify proposals are&#10;valid after sending them&#10;to miners" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-1159 268,-1159 268,-1091 500,-1091 500,-1159"/>
<text text-anchor="middle" x="384" y="-1143.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="384" y="-1128.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify proposals are</text>
<text text-anchor="middle" x="384" y="-1113.8" font-family="Times,serif" font-size="14.00" fill="#000000">valid after sending them</text>
<text text-anchor="middle" x="384" y="-1098.8" font-family="Times,serif" font-size="14.00" fill="#000000">to miners</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="#000000" d="M232.38,-1118.8C240.71,-1119.1 249.14,-1119.5 257.53,-1119.8"/>
<polygon fill="#000000" stroke="#000000" points="257.6106,-1123.3058 267.74,-1120.2 257.8847,-1116.3111 257.6106,-1123.3058"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5604" xlink:title="ZcashFoundation/zebra#5604&#10;Send the same&#10;getblocktemplate RPC&#10;response until the&#10;template would change" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-1072.5 268,-1072.5 268,-989.5 500,-989.5 500,-1072.5"/>
<text text-anchor="middle" x="384" y="-1057.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="384" y="-1042.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="384" y="-1027.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="384" y="-1012.3" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="384" y="-997.3" font-family="Times,serif" font-size="14.00" fill="#000000">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="#000000" d="M232.38,-1078C240.9,-1075.3 249.51,-1072.7 258.08,-1070"/>
<polygon fill="#000000" stroke="#000000" points="259.228,-1073.3085 267.74,-1067 257.1519,-1066.6234 259.228,-1073.3085"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node25" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4841" xlink:title="ZcashFoundation/zebra#4841&#10;Improve note commitment&#10;tree append performance" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-1291.5 268,-1291.5 268,-1238.5 500,-1238.5 500,-1291.5"/>
<text text-anchor="middle" x="384" y="-1276.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="384" y="-1261.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="384" y="-1246.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1458.5 0,-1458.5 0,-1375.5 232,-1375.5 232,-1458.5"/>
<text text-anchor="middle" x="116" y="-1443.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="116" y="-1428.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="116" y="-1413.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="116" y="-1398.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="116" y="-1383.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5487" xlink:title="ZcashFoundation/zebra#5487&#10;Return detailed errors&#10;from the `submitblock`&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1545 0,-1545 0,-1477 232,-1477 232,-1545"/>
<text text-anchor="middle" x="116" y="-1529.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="116" y="-1514.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="116" y="-1499.8" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="116" y="-1484.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5709" xlink:title="ZcashFoundation/zebra#5709&#10;Fix repeated block&#10;timeouts during initial&#10;sync" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1631 0,-1631 0,-1563 232,-1563 232,-1631"/>
<text text-anchor="middle" x="116" y="-1615.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="116" y="-1600.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="116" y="-1585.8" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="116" y="-1570.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node29" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5425" xlink:title="ZcashFoundation/zebra#5425&#10;Parallelise note&#10;commitment tree point&#10;conversions" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-1631 268,-1631 268,-1563 500,-1563 500,-1631"/>
<text text-anchor="middle" x="384" y="-1615.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="384" y="-1600.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="384" y="-1585.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="384" y="-1570.8" font-family="Times,serif" font-size="14.00" fill="#000000">conversions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M232.38,-1597C240.71,-1597 249.14,-1597 257.53,-1597"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1600.5001 267.74,-1597 257.74,-1593.5001 257.74,-1600.5001"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4774" xlink:title="ZcashFoundation/zebra#4774&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Orchard&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1357.5 0,-1357.5 0,-1274.5 232,-1274.5 232,-1357.5"/>
<text text-anchor="middle" x="116" y="-1342.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-1327.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1312.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1297.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-1282.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-1293.9C240.81,-1292.2 249.33,-1290.6 257.81,-1289"/>
<polygon fill="#000000" stroke="#000000" points="258.576,-1292.417 267.74,-1287.1 257.2604,-1285.5417 258.576,-1292.417"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4775" xlink:title="ZcashFoundation/zebra#4775&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Sapling&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1256.5 0,-1256.5 0,-1173.5 232,-1173.5 232,-1256.5"/>
<text text-anchor="middle" x="116" y="-1241.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-1226.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1211.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1196.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-1181.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-1236.7C240.81,-1238.3 249.33,-1239.9 257.81,-1241.5"/>
<polygon fill="#000000" stroke="#000000" points="257.2761,-1244.9602 267.74,-1243.3 258.5246,-1238.0724 257.2761,-1244.9602"/>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5502" xlink:title="ZcashFoundation/zebra#5502&#10;Migrate to the latest&#10;version of Abscissa (0.7&#10;or later)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1717 0,-1717 0,-1649 232,-1649 232,-1717"/>
<text text-anchor="middle" x="116" y="-1701.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="116" y="-1686.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the latest</text>
<text text-anchor="middle" x="116" y="-1671.8" font-family="Times,serif" font-size="14.00" fill="#000000">version of Abscissa (0.7</text>
<text text-anchor="middle" x="116" y="-1656.8" font-family="Times,serif" font-size="14.00" fill="#000000">or later)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5624" xlink:title="ZcashFoundation/zebra#5624&#10;zebrad: obsolete help&#10;text with the wrong info" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-1709.5 268,-1709.5 268,-1656.5 500,-1656.5 500,-1709.5"/>
<text text-anchor="middle" x="384" y="-1694.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="384" y="-1679.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="384" y="-1664.3" font-family="Times,serif" font-size="14.00" fill="#000000">text with the wrong info</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M232.38,-1683C240.71,-1683 249.14,-1683 257.53,-1683"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1686.5001 267.74,-1683 257.74,-1679.5001 257.74,-1686.5001"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4554" xlink:title="ZcashFoundation/zebra#4554&#10;benchmarks: surface&#10;zebrad mainnet sync time&#10;in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1803 0,-1803 0,-1735 232,-1735 232,-1803"/>
<text text-anchor="middle" x="116" y="-1787.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="116" y="-1772.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="116" y="-1757.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="116" y="-1742.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4545" xlink:title="ZcashFoundation/zebra#4545&#10;Start disconnecting from&#10;outdated peers before&#10;network upgrade&#10;activation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1904.5 0,-1904.5 0,-1821.5 232,-1821.5 232,-1904.5"/>
<text text-anchor="middle" x="116" y="-1889.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-1874.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-1859.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-1844.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-1829.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node36" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4226" xlink:title="ZcashFoundation/zebra#4226&#10;Prefer faster peers, but&#10;if all peers are slow,&#10;still connect to them" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-1897 268,-1897 268,-1829 500,-1829 500,-1897"/>
<text text-anchor="middle" x="384" y="-1881.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="384" y="-1866.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="384" y="-1851.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="384" y="-1836.8" font-family="Times,serif" font-size="14.00" fill="#000000">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M232.38,-1863C240.71,-1863 249.14,-1863 257.53,-1863"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1866.5001 267.74,-1863 257.74,-1859.5001 257.74,-1866.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>