developers/zcash-zf-dag.html

461 lines
34 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="1573pt"
viewBox="0.00 0.00 906.00 1572.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 1568.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1568.5 902,-1568.5 902,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-194 370,-194 370,0 0,0"/>
<text text-anchor="middle" x="185" y="-178.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<!-- ZcashFoundation/zebra#5235 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#5235</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5235" xlink:title="ZcashFoundation/zebra#5235&#10;Tracking: Implement&#10;getblocktemplate RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-162.5 69,-162.5 69,-109.5 301,-109.5 301,-162.5"/>
<text text-anchor="middle" x="185" y="-147.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5235</text>
<text text-anchor="middle" x="185" y="-132.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Implement</text>
<text text-anchor="middle" x="185" y="-117.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node3"><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" points="630,-170 398,-170 398,-102 630,-102 630,-170"/>
<text text-anchor="middle" x="514" y="-154.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="514" y="-139.8" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="514" y="-124.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="514" y="-109.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5235&#45;&gt;ZcashFoundation/zebra#5336 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#5235&#45;&gt;ZcashFoundation/zebra#5336</title>
<path fill="none" stroke="#000000" d="M301.46,-136C329.36,-136 359.29,-136 387.62,-136"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-139.5001 397.98,-136 387.98,-132.5001 387.98,-139.5001"/>
</g>
<!-- ZcashFoundation/zebra#5720 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5720</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5720" xlink:title="ZcashFoundation/zebra#5720&#10;Support long polling in&#10;the getblocktemplate RPC&#10;(excluding mempool&#10;changes)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-91.5 69,-91.5 69,-8.5 301,-8.5 301,-91.5"/>
<text text-anchor="middle" x="185" y="-76.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5720</text>
<text text-anchor="middle" x="185" y="-61.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support long polling in</text>
<text text-anchor="middle" x="185" y="-46.3" font-family="Times,serif" font-size="14.00" fill="#000000">the getblocktemplate RPC</text>
<text text-anchor="middle" x="185" y="-31.3" font-family="Times,serif" font-size="14.00" fill="#000000">(excluding mempool</text>
<text text-anchor="middle" x="185" y="-16.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5782 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5782</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5782" xlink:title="ZcashFoundation/zebra#5782&#10;Return from long polling&#10;whenever the mempool&#10;transactions change" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="630,-84 398,-84 398,-16 630,-16 630,-84"/>
<text text-anchor="middle" x="514" y="-68.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5782</text>
<text text-anchor="middle" x="514" y="-53.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return from long polling</text>
<text text-anchor="middle" x="514" y="-38.8" font-family="Times,serif" font-size="14.00" fill="#000000">whenever the mempool</text>
<text text-anchor="middle" x="514" y="-23.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5720&#45;&gt;ZcashFoundation/zebra#5782 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5720&#45;&gt;ZcashFoundation/zebra#5782</title>
<path fill="none" stroke="#000000" d="M301.46,-50C329.36,-50 359.29,-50 387.62,-50"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-53.5001 397.98,-50 387.98,-46.5001 387.98,-53.5001"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node5"><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="898,-91.5 666,-91.5 666,-8.5 898,-8.5 898,-91.5"/>
<text text-anchor="middle" x="782" y="-76.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="782" y="-61.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="782" y="-46.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="782" y="-31.3" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="782" y="-16.3" font-family="Times,serif" font-size="14.00" fill="#000000">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5782&#45;&gt;ZcashFoundation/zebra#5604 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#5782&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="#000000" d="M630.38,-50C638.71,-50 647.14,-50 655.53,-50"/>
<polygon fill="#000000" stroke="#000000" points="655.74,-53.5001 665.74,-50 655.74,-46.5001 655.74,-53.5001"/>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node6"><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,-255.5 69,-255.5 69,-202.5 301,-202.5 301,-255.5"/>
<text text-anchor="middle" x="185" y="-240.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="185" y="-225.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="185" y="-210.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node7"><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,-342 69,-342 69,-274 301,-274 301,-342"/>
<text text-anchor="middle" x="185" y="-326.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="185" y="-311.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="185" y="-296.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="185" y="-281.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node8" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node8"><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,-334.5 402.5,-334.5 402.5,-281.5 625.5,-281.5 625.5,-334.5"/>
<text text-anchor="middle" x="514" y="-319.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="514" y="-304.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="514" y="-289.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="edge4" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M301.46,-308C330.81,-308 362.39,-308 392.01,-308"/>
<polygon fill="#000000" stroke="#000000" points="392.39,-311.5001 402.39,-308 392.39,-304.5001 392.39,-311.5001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node9"><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,-413.5 69,-413.5 69,-360.5 301,-360.5 301,-413.5"/>
<text text-anchor="middle" x="185" y="-398.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="185" y="-383.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="185" y="-368.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-484.5 69,-484.5 69,-431.5 301,-431.5 301,-484.5"/>
<text text-anchor="middle" x="185" y="-469.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="185" y="-454.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="185" y="-439.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node11"><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,-571 69,-571 69,-503 301,-503 301,-571"/>
<text text-anchor="middle" x="185" y="-555.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="185" y="-540.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="185" y="-525.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="185" y="-510.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5837 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#5837</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5837" xlink:title="ZcashFoundation/zebra#5837&#10;change(rpc): Refactor get&#10;block template RPC into&#10;stages" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-657 69,-657 69,-653 65,-653 65,-649 69,-649 69,-597 65,-597 65,-593 69,-593 69,-589 301,-589 301,-657"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="69,-653 73,-653 73,-649 69,-649 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="69,-597 73,-597 73,-593 69,-593 "/>
<text text-anchor="middle" x="185" y="-641.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5837</text>
<text text-anchor="middle" x="185" y="-626.8" font-family="Times,serif" font-size="14.00" fill="#000000">change(rpc): Refactor get</text>
<text text-anchor="middle" x="185" y="-611.8" font-family="Times,serif" font-size="14.00" fill="#000000">block template RPC into</text>
<text text-anchor="middle" x="185" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">stages</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5472" xlink:title="ZcashFoundation/zebra#5472&#10;Support shielded coinbase&#10;in `getblocktemplate`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="630,-692.5 398,-692.5 398,-639.5 630,-639.5 630,-692.5"/>
<text text-anchor="middle" x="514" y="-677.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="514" y="-662.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="514" y="-647.3" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5837&#45;&gt;ZcashFoundation/zebra#5472 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#5837&#45;&gt;ZcashFoundation/zebra#5472</title>
<path fill="none" stroke="#000000" d="M301.46,-638.22C329.48,-641.88 359.55,-645.81 387.99,-649.53"/>
<polygon fill="#000000" stroke="#000000" points="387.6098,-653.01 397.98,-650.84 388.52,-646.0694 387.6098,-653.01"/>
</g>
<!-- ZcashFoundation/zebra#5843 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5843</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5843" xlink:title="ZcashFoundation/zebra#5843&#10;feature(rpc): Add basic&#10;long polling support to&#10;the `getblocktemplate`&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="630,-621.5 398,-621.5 398,-617.5 394,-617.5 394,-613.5 398,-613.5 398,-546.5 394,-546.5 394,-542.5 398,-542.5 398,-538.5 630,-538.5 630,-621.5"/>
<polyline fill="none" stroke="#000000" points="398,-617.5 402,-617.5 402,-613.5 398,-613.5 "/>
<polyline fill="none" stroke="#000000" points="398,-546.5 402,-546.5 402,-542.5 398,-542.5 "/>
<text text-anchor="middle" x="514" y="-606.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5843</text>
<text text-anchor="middle" x="514" y="-591.3" font-family="Times,serif" font-size="14.00" fill="#000000">feature(rpc): Add basic</text>
<text text-anchor="middle" x="514" y="-576.3" font-family="Times,serif" font-size="14.00" fill="#000000">long polling support to</text>
<text text-anchor="middle" x="514" y="-561.3" font-family="Times,serif" font-size="14.00" fill="#000000">the `getblocktemplate`</text>
<text text-anchor="middle" x="514" y="-546.3" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5837&#45;&gt;ZcashFoundation/zebra#5843 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#5837&#45;&gt;ZcashFoundation/zebra#5843</title>
<path fill="none" stroke="#000000" d="M301.46,-607.78C329.48,-604.12 359.55,-600.19 387.99,-596.47"/>
<polygon fill="#000000" stroke="#000000" points="388.52,-599.9306 397.98,-595.16 387.6098,-592.99 388.52,-599.9306"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4412" xlink:title="ZcashFoundation/zebra#4412&#10;Automate pinning CI&#10;dependencies to specific&#10;commit hashes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-743 69,-743 69,-675 301,-675 301,-743"/>
<text text-anchor="middle" x="185" y="-727.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="185" y="-712.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="185" y="-697.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="185" y="-682.8" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node16" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node16"><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,-879.5 398,-879.5 398,-826.5 630,-826.5 630,-879.5"/>
<text text-anchor="middle" x="514" y="-864.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="514" y="-849.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="514" y="-834.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node17"><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,-1046.5 69,-1046.5 69,-963.5 301,-963.5 301,-1046.5"/>
<text text-anchor="middle" x="185" y="-1031.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="185" y="-1016.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="185" y="-1001.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="185" y="-986.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="185" y="-971.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node18"><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,-1133 69,-1133 69,-1065 301,-1065 301,-1133"/>
<text text-anchor="middle" x="185" y="-1117.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="185" y="-1102.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="185" y="-1087.8" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="185" y="-1072.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node19"><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,-1219 69,-1219 69,-1151 301,-1151 301,-1219"/>
<text text-anchor="middle" x="185" y="-1203.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="185" y="-1188.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="185" y="-1173.8" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="185" y="-1158.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node20" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node20"><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,-1219 398,-1219 398,-1151 630,-1151 630,-1219"/>
<text text-anchor="middle" x="514" y="-1203.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="514" y="-1188.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="514" y="-1173.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="514" y="-1158.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="edge7" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M301.46,-1185C329.36,-1185 359.29,-1185 387.62,-1185"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1188.5001 397.98,-1185 387.98,-1181.5001 387.98,-1188.5001"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node21"><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,-945.5 69,-945.5 69,-862.5 301,-862.5 301,-945.5"/>
<text text-anchor="middle" x="185" y="-930.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="185" y="-915.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="185" y="-900.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="185" y="-885.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="185" y="-870.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="edge8" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M301.46,-885.95C329.48,-881.6 359.55,-876.94 387.99,-872.53"/>
<polygon fill="#000000" stroke="#000000" points="388.63,-875.9728 397.98,-870.99 387.5635,-869.0545 388.63,-875.9728"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node22"><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,-844.5 69,-844.5 69,-761.5 301,-761.5 301,-844.5"/>
<text text-anchor="middle" x="185" y="-829.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="185" y="-814.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="185" y="-799.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="185" y="-784.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="185" y="-769.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="edge9" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M301.46,-820.7C329.48,-824.96 359.55,-829.53 387.99,-833.85"/>
<polygon fill="#000000" stroke="#000000" points="387.5673,-837.3259 397.98,-835.37 388.6203,-830.4055 387.5673,-837.3259"/>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5502" xlink:title="ZcashFoundation/zebra#5502&#10;Migrate to Abscissa 0.6" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-1283 69,-1283 69,-1245 301,-1245 301,-1283"/>
<text text-anchor="middle" x="185" y="-1267.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="185" y="-1252.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to Abscissa 0.6</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node24"><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,-1290.5 398,-1290.5 398,-1237.5 630,-1237.5 630,-1290.5"/>
<text text-anchor="middle" x="514" y="-1275.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="514" y="-1260.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="514" y="-1245.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="edge10" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M301.46,-1264C329.36,-1264 359.29,-1264 387.62,-1264"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1267.5001 397.98,-1264 387.98,-1260.5001 387.98,-1267.5001"/>
</g>
<!-- ZcashFoundation/zebra#5684 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5684</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5684" xlink:title="ZcashFoundation/zebra#5684&#10;Add support for block&#10;proposals to&#10;`getblocktemplate` method" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="301,-1377 69,-1377 69,-1309 301,-1309 301,-1377"/>
<text text-anchor="middle" x="185" y="-1361.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5684</text>
<text text-anchor="middle" x="185" y="-1346.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for block</text>
<text text-anchor="middle" x="185" y="-1331.8" font-family="Times,serif" font-size="14.00" fill="#000000">proposals to</text>
<text text-anchor="middle" x="185" y="-1316.8" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` method</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5685 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5685</title>
<g id="a_node26"><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" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="630,-1377 398,-1377 398,-1309 630,-1309 630,-1377"/>
<text text-anchor="middle" x="514" y="-1361.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5685</text>
<text text-anchor="middle" x="514" y="-1346.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test the getblocktemplate</text>
<text text-anchor="middle" x="514" y="-1331.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC&#39;s response as a block</text>
<text text-anchor="middle" x="514" y="-1316.8" font-family="Times,serif" font-size="14.00" fill="#000000">template proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5684&#45;&gt;ZcashFoundation/zebra#5685 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#5684&#45;&gt;ZcashFoundation/zebra#5685</title>
<path fill="none" stroke="#000000" d="M301.46,-1343C329.36,-1343 359.29,-1343 387.62,-1343"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1346.5001 397.98,-1343 387.98,-1339.5001 387.98,-1346.5001"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node27"><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,-1463 69,-1463 69,-1395 301,-1395 301,-1463"/>
<text text-anchor="middle" x="185" y="-1447.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="185" y="-1432.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="185" y="-1417.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="185" y="-1402.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node28"><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,-1564.5 69,-1564.5 69,-1481.5 301,-1481.5 301,-1564.5"/>
<text text-anchor="middle" x="185" y="-1549.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="185" y="-1534.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="185" y="-1519.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="185" y="-1504.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="185" y="-1489.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node29" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node29"><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,-1557 398,-1557 398,-1489 630,-1489 630,-1557"/>
<text text-anchor="middle" x="514" y="-1541.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="514" y="-1526.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="514" y="-1511.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="514" y="-1496.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="edge12" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M301.46,-1523C329.36,-1523 359.29,-1523 387.62,-1523"/>
<polygon fill="#000000" stroke="#000000" points="387.98,-1526.5001 397.98,-1523 387.98,-1519.5001 387.98,-1526.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>