developers/zcash-zf-dag.html

501 lines
37 KiB
HTML

<!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="906pt" height="1736pt"
viewBox="0.00 0.00 906.00 1735.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 1731.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1731.5 902,-1731.5 902,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-107 370,-107 370,0 0,0"/>
<text text-anchor="middle" x="185" y="-91.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<!-- ZcashFoundation/zebra#6028 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#6028</title>
<g id="a_node1"><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="301,-76 69,-76 69,-8 301,-8 301,-76"/>
<text text-anchor="middle" x="185" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6028</text>
<text text-anchor="middle" x="185" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to mine on</text>
<text text-anchor="middle" x="185" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">testnet using Zebra and</text>
<text text-anchor="middle" x="185" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining pool software</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node2"><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="301,-168.5 69,-168.5 69,-115.5 301,-115.5 301,-168.5"/>
<text text-anchor="middle" x="185" y="-153.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="185" y="-138.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="185" y="-123.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node3"><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="301,-255 69,-255 69,-187 301,-187 301,-255"/>
<text text-anchor="middle" x="185" y="-239.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="185" y="-224.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="185" y="-209.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="185" y="-194.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node4" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node4"><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="625.5,-247.5 402.5,-247.5 402.5,-194.5 625.5,-194.5 625.5,-247.5"/>
<text text-anchor="middle" x="514" y="-232.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="514" y="-217.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="514" y="-202.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="edge1" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M301.46,-221C330.81,-221 362.39,-221 392.01,-221"/>
<polygon fill="#000000" stroke="#000000" points="392.39,-224.5001 402.39,-221 392.39,-217.5001 392.39,-224.5001"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node5"><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" points="630,-458 398,-458 398,-390 630,-390 630,-458"/>
<text text-anchor="middle" x="514" y="-442.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="514" y="-427.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="514" y="-412.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="514" y="-397.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5929 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5929</title>
<g id="a_node6"><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="898,-396 666,-396 666,-328 898,-328 898,-396"/>
<text text-anchor="middle" x="782" y="-380.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5929</text>
<text text-anchor="middle" x="782" y="-365.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="782" y="-350.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="782" y="-335.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="edge2" class="edge">
<title>ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M630.38,-397.08C638.81,-395.13 647.33,-393.16 655.81,-391.19"/>
<polygon fill="#000000" stroke="#000000" points="656.7823,-394.5577 665.74,-388.9 655.2092,-387.7368 656.7823,-394.5577"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node7"><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="301,-459.5 69,-459.5 69,-406.5 301,-406.5 301,-459.5"/>
<text text-anchor="middle" x="185" y="-444.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="185" y="-429.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="185" y="-414.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node8"><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="301,-546 69,-546 69,-478 301,-478 301,-546"/>
<text text-anchor="middle" x="185" y="-530.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="185" y="-515.8" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="185" y="-500.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="185" y="-485.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="node9" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node9"><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="301,-632 69,-632 69,-564 301,-564 301,-632"/>
<text text-anchor="middle" x="185" y="-616.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="185" y="-601.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="185" y="-586.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="185" y="-571.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node10"><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="301,-733.5 69,-733.5 69,-650.5 301,-650.5 301,-733.5"/>
<text text-anchor="middle" x="185" y="-718.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="185" y="-703.3" font-family="Times,serif" font-size="14.00" fill="#000000">Don&#39;t return from long</text>
<text text-anchor="middle" x="185" y="-688.3" font-family="Times,serif" font-size="14.00" fill="#000000">polling if the block</text>
<text text-anchor="middle" x="185" y="-673.3" font-family="Times,serif" font-size="14.00" fill="#000000">template is an invalid</text>
<text text-anchor="middle" x="185" y="-658.3" font-family="Times,serif" font-size="14.00" fill="#000000">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node11"><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="630,-730 398,-730 398,-662 630,-662 630,-730"/>
<text text-anchor="middle" x="514" y="-714.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="514" y="-699.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify proposals are</text>
<text text-anchor="middle" x="514" y="-684.8" font-family="Times,serif" font-size="14.00" fill="#000000">valid after sending them</text>
<text text-anchor="middle" x="514" y="-669.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="edge3" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="#000000" d="M301.46,-693.42C329.36,-693.76 359.29,-694.12 387.62,-694.46"/>
<polygon fill="#000000" stroke="#000000" points="387.9368,-697.9642 397.98,-694.59 388.0247,-690.9647 387.9368,-697.9642"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node12"><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="630,-643.5 398,-643.5 398,-560.5 630,-560.5 630,-643.5"/>
<text text-anchor="middle" x="514" y="-628.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="514" y="-613.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="514" y="-598.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="514" y="-583.3" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="514" y="-568.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="edge4" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="#000000" d="M301.46,-660.14C329.48,-652.48 359.55,-644.25 387.99,-636.47"/>
<polygon fill="#000000" stroke="#000000" points="389.2563,-639.7524 397.98,-633.74 387.411,-632.9999 389.2563,-639.7524"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node13"><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="630,-820 398,-820 398,-752 630,-752 630,-820"/>
<text text-anchor="middle" x="514" y="-804.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="514" y="-789.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="514" y="-774.8" font-family="Times,serif" font-size="14.00" fill="#000000">workflow for mining a</text>
<text text-anchor="middle" x="514" y="-759.8" font-family="Times,serif" font-size="14.00" fill="#000000">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6081 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#6081</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6081" xlink:title="ZcashFoundation/zebra#6081&#10;Implement missing mining&#10;status RPCs or fields" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-891.5 69,-891.5 69,-838.5 301,-838.5 301,-891.5"/>
<text text-anchor="middle" x="185" y="-876.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6081</text>
<text text-anchor="middle" x="185" y="-861.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement missing mining</text>
<text text-anchor="middle" x="185" y="-846.3" font-family="Times,serif" font-size="14.00" fill="#000000">status RPCs or fields</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6083 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#6083</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6083" xlink:title="ZcashFoundation/zebra#6083&#10;Implement&#10;z_validateaddress RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-388.5 69,-388.5 69,-335.5 301,-335.5 301,-388.5"/>
<text text-anchor="middle" x="185" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6083</text>
<text text-anchor="middle" x="185" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="185" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_validateaddress RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5472 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5472</title>
<path fill="none" stroke="#000000" d="M301.46,-383.95C329.48,-389.23 359.55,-394.89 387.99,-400.25"/>
<polygon fill="#000000" stroke="#000000" points="387.5036,-403.72 397.98,-402.14 388.8049,-396.842 387.5036,-403.72"/>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M301.17,-362C403.12,-362 551.07,-362 655.88,-362"/>
<polygon fill="#000000" stroke="#000000" points="655.88,-365.5001 665.88,-362 655.88,-358.5001 655.88,-365.5001"/>
</g>
<!-- ZcashFoundation/zebra#6030 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#6030</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6030" xlink:title="ZcashFoundation/zebra#6030&#10;Implement&#10;z_listunifiedreceivers&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="630,-334 398,-334 398,-266 630,-266 630,-334"/>
<text text-anchor="middle" x="514" y="-318.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6030</text>
<text text-anchor="middle" x="514" y="-303.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="514" y="-288.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
<text text-anchor="middle" x="514" y="-273.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#6030 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#6030</title>
<path fill="none" stroke="#000000" d="M301.46,-340.05C329.48,-334.77 359.55,-329.11 387.99,-323.75"/>
<polygon fill="#000000" stroke="#000000" points="388.8049,-327.158 397.98,-321.86 387.5036,-320.28 388.8049,-327.158"/>
</g>
<!-- ZcashFoundation/zebra#6030&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#6030&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M630.38,-326.92C638.81,-328.87 647.33,-330.84 655.81,-332.81"/>
<polygon fill="#000000" stroke="#000000" points="655.2092,-336.2632 665.74,-335.1 656.7823,-329.4423 655.2092,-336.2632"/>
</g>
<!-- ZcashFoundation/zebra#5700 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#5700</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5700" xlink:title="ZcashFoundation/zebra#5700&#10;Re&#45;use blocks from the&#10;old state when the state&#10;version changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-978 69,-978 69,-910 301,-910 301,-978"/>
<text text-anchor="middle" x="185" y="-962.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5700</text>
<text text-anchor="middle" x="185" y="-947.8" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;use blocks from the</text>
<text text-anchor="middle" x="185" y="-932.8" font-family="Times,serif" font-size="14.00" fill="#000000">old state when the state</text>
<text text-anchor="middle" x="185" y="-917.8" font-family="Times,serif" font-size="14.00" fill="#000000">version changes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5911 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#5911</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5911" xlink:title="ZcashFoundation/zebra#5911&#10;Store the serialized&#10;block size in the&#10;database" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="630,-978 398,-978 398,-910 630,-910 630,-978"/>
<text text-anchor="middle" x="514" y="-962.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5911</text>
<text text-anchor="middle" x="514" y="-947.8" font-family="Times,serif" font-size="14.00" fill="#000000">Store the serialized</text>
<text text-anchor="middle" x="514" y="-932.8" font-family="Times,serif" font-size="14.00" fill="#000000">block size in the</text>
<text text-anchor="middle" x="514" y="-917.8" font-family="Times,serif" font-size="14.00" fill="#000000">database</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5700&#45;&gt;ZcashFoundation/zebra#5911 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#5700&#45;&gt;ZcashFoundation/zebra#5911</title>
<path fill="none" stroke="#000000" d="M301.46,-944C329.36,-944 359.29,-944 387.62,-944"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-947.5001 397.98,-944 387.98,-940.5001 387.98,-947.5001"/>
</g>
<!-- ZcashFoundation/zebra#6118 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#6118</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6118" xlink:title="ZcashFoundation/zebra#6118&#10;Create a Docker image for&#10;mining with Zebra on&#10;Testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-820 69,-820 69,-752 301,-752 301,-820"/>
<text text-anchor="middle" x="185" y="-804.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6118</text>
<text text-anchor="middle" x="185" y="-789.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Docker image for</text>
<text text-anchor="middle" x="185" y="-774.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining with Zebra on</text>
<text text-anchor="middle" x="185" y="-759.8" font-family="Times,serif" font-size="14.00" fill="#000000">Testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M301.46,-786C329.36,-786 359.29,-786 387.62,-786"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-789.5001 397.98,-786 387.98,-782.5001 387.98,-789.5001"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node20" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node20"><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="630,-1114.5 398,-1114.5 398,-1061.5 630,-1061.5 630,-1114.5"/>
<text text-anchor="middle" x="514" y="-1099.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="514" y="-1084.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="514" y="-1069.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node21"><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="301,-1281.5 69,-1281.5 69,-1198.5 301,-1198.5 301,-1281.5"/>
<text text-anchor="middle" x="185" y="-1266.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="185" y="-1251.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="185" y="-1236.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="185" y="-1221.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="185" y="-1206.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node22"><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="301,-1368 69,-1368 69,-1300 301,-1300 301,-1368"/>
<text text-anchor="middle" x="185" y="-1352.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="185" y="-1337.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="185" y="-1322.8" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="185" y="-1307.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node23"><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="301,-1454 69,-1454 69,-1386 301,-1386 301,-1454"/>
<text text-anchor="middle" x="185" y="-1438.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="185" y="-1423.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="185" y="-1408.8" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="185" y="-1393.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node24" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node24"><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="630,-1454 398,-1454 398,-1386 630,-1386 630,-1454"/>
<text text-anchor="middle" x="514" y="-1438.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="514" y="-1423.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="514" y="-1408.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="514" y="-1393.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="edge11" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M301.46,-1420C329.36,-1420 359.29,-1420 387.62,-1420"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1423.5001 397.98,-1420 387.98,-1416.5001 387.98,-1423.5001"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node25"><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="301,-1180.5 69,-1180.5 69,-1097.5 301,-1097.5 301,-1180.5"/>
<text text-anchor="middle" x="185" y="-1165.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="185" y="-1150.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="185" y="-1135.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="185" y="-1120.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="185" y="-1105.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="edge12" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M301.46,-1120.9C329.48,-1116.6 359.55,-1111.9 387.99,-1107.5"/>
<polygon fill="#000000" stroke="#000000" points="388.6106,-1110.9461 397.98,-1106 387.5711,-1104.0237 388.6106,-1110.9461"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node26"><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="301,-1079.5 69,-1079.5 69,-996.5 301,-996.5 301,-1079.5"/>
<text text-anchor="middle" x="185" y="-1064.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="185" y="-1049.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="185" y="-1034.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="185" y="-1019.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="185" y="-1004.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="edge13" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M301.46,-1055.7C329.48,-1060 359.55,-1064.5 387.99,-1068.8"/>
<polygon fill="#000000" stroke="#000000" points="387.5523,-1072.2744 397.98,-1070.4 388.6594,-1065.3625 387.5523,-1072.2744"/>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node27"><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="301,-1540 69,-1540 69,-1472 301,-1472 301,-1540"/>
<text text-anchor="middle" x="185" y="-1524.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="185" y="-1509.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the latest</text>
<text text-anchor="middle" x="185" y="-1494.8" font-family="Times,serif" font-size="14.00" fill="#000000">version of Abscissa (0.7</text>
<text text-anchor="middle" x="185" y="-1479.8" font-family="Times,serif" font-size="14.00" fill="#000000">or later)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node28"><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="630,-1532.5 398,-1532.5 398,-1479.5 630,-1479.5 630,-1532.5"/>
<text text-anchor="middle" x="514" y="-1517.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="514" y="-1502.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="514" y="-1487.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="edge14" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M301.46,-1506C329.36,-1506 359.29,-1506 387.62,-1506"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1509.5001 397.98,-1506 387.98,-1502.5001 387.98,-1509.5001"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node29"><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="301,-1626 69,-1626 69,-1558 301,-1558 301,-1626"/>
<text text-anchor="middle" x="185" y="-1610.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="185" y="-1595.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="185" y="-1580.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="185" y="-1565.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node30"><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="301,-1727.5 69,-1727.5 69,-1644.5 301,-1644.5 301,-1727.5"/>
<text text-anchor="middle" x="185" y="-1712.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="185" y="-1697.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="185" y="-1682.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="185" y="-1667.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="185" y="-1652.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node31" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node31"><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="630,-1720 398,-1720 398,-1652 630,-1652 630,-1720"/>
<text text-anchor="middle" x="514" y="-1704.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="514" y="-1689.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="514" y="-1674.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="514" y="-1659.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="edge15" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M301.46,-1686C329.36,-1686 359.29,-1686 387.62,-1686"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1689.5001 397.98,-1686 387.98,-1682.5001 387.98,-1689.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>