developers/zcash-zf-dag.html

447 lines
34 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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="898pt" height="1847pt"
viewBox="0.00 0.00 898.00 1846.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 1842.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1842.5 894,-1842.5 894,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,0 260,-193 630,-193 630,0 260,0"/>
<text text-anchor="middle" x="445" y="-177.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="561,-162 329,-162 329,-94 561,-94 561,-162"/>
<text text-anchor="middle" x="445" y="-146.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5803</text>
<text text-anchor="middle" x="445" y="-131.8" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test the</text>
<text text-anchor="middle" x="445" y="-116.8" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` RPC</text>
<text text-anchor="middle" x="445" y="-101.8" font-family="Times,serif" font-size="14.00" fill="#000000">creates valid blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5685 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5685</title>
<g id="a_node3"><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="890,-162 658,-162 658,-94 890,-94 890,-162"/>
<text text-anchor="middle" x="774" y="-146.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5685</text>
<text text-anchor="middle" x="774" y="-131.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test the getblocktemplate</text>
<text text-anchor="middle" x="774" y="-116.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC&#39;s response as a block</text>
<text text-anchor="middle" x="774" y="-101.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="M561.46,-128C589.36,-128 619.29,-128 647.62,-128"/>
<polygon fill="#000000" stroke="#000000" points="647.98,-131.5001 657.98,-128 647.98,-124.5001 647.98,-131.5001"/>
</g>
<!-- ZcashFoundation/zebra#5686 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5686</title>
<g id="a_node2"><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" stroke-width="2" points="561,-76 329,-76 329,-8 561,-8 561,-76"/>
<text text-anchor="middle" x="445" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5686</text>
<text text-anchor="middle" x="445" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that each</text>
<text text-anchor="middle" x="445" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining RPC works</text>
<text text-anchor="middle" x="445" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">correctly</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node4"><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,-225.5 0,-225.5 0,-172.5 232,-172.5 232,-225.5"/>
<text text-anchor="middle" x="116" y="-210.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="116" y="-195.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="116" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5871 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5871</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5871" xlink:title="ZcashFoundation/zebra#5871&#10;Fix getblocktemplate min&#10;and max times on testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-154.5 0,-154.5 0,-101.5 232,-101.5 232,-154.5"/>
<text text-anchor="middle" x="116" y="-139.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5871</text>
<text text-anchor="middle" x="116" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">Fix getblocktemplate min</text>
<text text-anchor="middle" x="116" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">and max times on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5871&#45;&gt;ZcashFoundation/zebra#5803 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5871&#45;&gt;ZcashFoundation/zebra#5803</title>
<path fill="none" stroke="#000000" d="M232.46,-128C260.36,-128 290.29,-128 318.62,-128"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-131.5001 328.98,-128 318.98,-124.5001 318.98,-131.5001"/>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node6"><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,-312 0,-312 0,-244 232,-244 232,-312"/>
<text text-anchor="middle" x="116" y="-296.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="116" y="-281.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="116" y="-266.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="116" y="-251.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node7" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node7"><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="556.5,-304.5 333.5,-304.5 333.5,-251.5 556.5,-251.5 556.5,-304.5"/>
<text text-anchor="middle" x="445" y="-289.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="445" y="-274.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="445" y="-259.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="edge3" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M232.46,-278C261.81,-278 293.39,-278 323.01,-278"/>
<polygon fill="#000000" stroke="#000000" points="323.39,-281.5001 333.39,-278 323.39,-274.5001 323.39,-281.5001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node8"><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,-383.5 0,-383.5 0,-330.5 232,-330.5 232,-383.5"/>
<text text-anchor="middle" x="116" y="-368.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-353.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-338.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node9"><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="232,-454.5 0,-454.5 0,-401.5 232,-401.5 232,-454.5"/>
<text text-anchor="middle" x="116" y="-439.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="116" y="-424.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="116" y="-409.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node10"><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,-541 0,-541 0,-473 232,-473 232,-541"/>
<text text-anchor="middle" x="116" y="-525.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="116" y="-510.8" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="116" y="-495.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="116" y="-480.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="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="232,-627 0,-627 0,-559 232,-559 232,-627"/>
<text text-anchor="middle" x="116" y="-611.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="116" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="116" y="-581.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="116" y="-566.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5884 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#5884</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5884" xlink:title="ZcashFoundation/zebra#5884&#10;change(test): Create test&#10;harness for calling&#10;getblocktemplate in&#10;proposal mode, but don&#39;t&#10;use it yet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-743 0,-743 0,-739 -4,-739 -4,-735 0,-735 0,-653 -4,-653 -4,-649 0,-649 0,-645 232,-645 232,-743"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-739 4,-739 4,-735 0,-735 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-653 4,-653 4,-649 0,-649 "/>
<text text-anchor="middle" x="116" y="-727.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5884</text>
<text text-anchor="middle" x="116" y="-712.8" font-family="Times,serif" font-size="14.00" fill="#000000">change(test): Create test</text>
<text text-anchor="middle" x="116" y="-697.8" font-family="Times,serif" font-size="14.00" fill="#000000">harness for calling</text>
<text text-anchor="middle" x="116" y="-682.8" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate in</text>
<text text-anchor="middle" x="116" y="-667.8" font-family="Times,serif" font-size="14.00" fill="#000000">proposal mode, but don&#39;t</text>
<text text-anchor="middle" x="116" y="-652.8" font-family="Times,serif" font-size="14.00" fill="#000000">use it yet</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` for&#10;Sapling addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-829 0,-829 0,-761 232,-761 232,-829"/>
<text text-anchor="middle" x="116" y="-813.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="116" y="-798.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="116" y="-783.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="116" y="-768.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5925 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5925</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5925" xlink:title="ZcashFoundation/zebra#5925&#10;fix(rpc): Calculate&#10;getblocktemplate RPC&#10;testnet min time&#10;correctly" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-930.5 0,-930.5 0,-926.5 -4,-926.5 -4,-922.5 0,-922.5 0,-855.5 -4,-855.5 -4,-851.5 0,-851.5 0,-847.5 232,-847.5 232,-930.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-926.5 4,-926.5 4,-922.5 0,-922.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-855.5 4,-855.5 4,-851.5 0,-851.5 "/>
<text text-anchor="middle" x="116" y="-915.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5925</text>
<text text-anchor="middle" x="116" y="-900.3" font-family="Times,serif" font-size="14.00" fill="#000000">fix(rpc): Calculate</text>
<text text-anchor="middle" x="116" y="-885.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="116" y="-870.3" font-family="Times,serif" font-size="14.00" fill="#000000">testnet min time</text>
<text text-anchor="middle" x="116" y="-855.3" font-family="Times,serif" font-size="14.00" fill="#000000">correctly</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5944 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#5944</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5944" xlink:title="ZcashFoundation/zebra#5944&#10;test(rpc): Create a&#10;script that submits block&#10;proposals to zcashd" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-923 329,-923 329,-919 325,-919 325,-915 329,-915 329,-863 325,-863 325,-859 329,-859 329,-855 561,-855 561,-923"/>
<polyline fill="none" stroke="#000000" points="329,-919 333,-919 333,-915 329,-915 "/>
<polyline fill="none" stroke="#000000" points="329,-863 333,-863 333,-859 329,-859 "/>
<text text-anchor="middle" x="445" y="-907.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5944</text>
<text text-anchor="middle" x="445" y="-892.8" font-family="Times,serif" font-size="14.00" fill="#000000">test(rpc): Create a</text>
<text text-anchor="middle" x="445" y="-877.8" font-family="Times,serif" font-size="14.00" fill="#000000">script that submits block</text>
<text text-anchor="middle" x="445" y="-862.8" font-family="Times,serif" font-size="14.00" fill="#000000">proposals to zcashd</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5925&#45;&gt;ZcashFoundation/zebra#5944 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#5925&#45;&gt;ZcashFoundation/zebra#5944</title>
<path fill="none" stroke="#000000" d="M232.46,-889C260.36,-889 290.29,-889 318.62,-889"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-892.5001 328.98,-889 318.98,-885.5001 318.98,-892.5001"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node16"><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="232,-1017 0,-1017 0,-949 232,-949 232,-1017"/>
<text text-anchor="middle" x="116" y="-1001.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="116" y="-986.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="116" y="-971.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="116" y="-956.8" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node17" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node17"><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="561,-1153.5 329,-1153.5 329,-1100.5 561,-1100.5 561,-1153.5"/>
<text text-anchor="middle" x="445" y="-1138.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="445" y="-1123.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="445" y="-1108.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node18"><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,-1320.5 0,-1320.5 0,-1237.5 232,-1237.5 232,-1320.5"/>
<text text-anchor="middle" x="116" y="-1305.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="116" y="-1290.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="116" y="-1275.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="116" y="-1260.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="116" y="-1245.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node19"><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,-1407 0,-1407 0,-1339 232,-1339 232,-1407"/>
<text text-anchor="middle" x="116" y="-1391.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="116" y="-1376.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="116" y="-1361.8" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="116" y="-1346.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node20"><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,-1493 0,-1493 0,-1425 232,-1425 232,-1493"/>
<text text-anchor="middle" x="116" y="-1477.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="116" y="-1462.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="116" y="-1447.8" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="116" y="-1432.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node21" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node21"><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="561,-1493 329,-1493 329,-1425 561,-1425 561,-1493"/>
<text text-anchor="middle" x="445" y="-1477.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="445" y="-1462.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="445" y="-1447.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="445" y="-1432.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="edge5" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M232.46,-1459C260.36,-1459 290.29,-1459 318.62,-1459"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1462.5001 328.98,-1459 318.98,-1455.5001 318.98,-1462.5001"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node22"><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,-1219.5 0,-1219.5 0,-1136.5 232,-1136.5 232,-1219.5"/>
<text text-anchor="middle" x="116" y="-1204.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-1189.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1174.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1159.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-1144.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="edge6" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.46,-1159.9C260.48,-1155.6 290.55,-1150.9 318.99,-1146.5"/>
<polygon fill="#000000" stroke="#000000" points="319.6106,-1149.9461 328.98,-1145 318.5711,-1143.0237 319.6106,-1149.9461"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node23"><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,-1118.5 0,-1118.5 0,-1035.5 232,-1035.5 232,-1118.5"/>
<text text-anchor="middle" x="116" y="-1103.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-1088.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1073.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1058.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-1043.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="edge7" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.46,-1094.7C260.48,-1099 290.55,-1103.5 318.99,-1107.8"/>
<polygon fill="#000000" stroke="#000000" points="318.5523,-1111.2744 328.98,-1109.4 319.6594,-1104.3625 318.5523,-1111.2744"/>
</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" stroke-width="2" points="232,-1594.5 0,-1594.5 0,-1511.5 232,-1511.5 232,-1594.5"/>
<text text-anchor="middle" x="116" y="-1579.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="116" y="-1564.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="116" y="-1549.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="116" y="-1534.3" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="116" y="-1519.3" font-family="Times,serif" font-size="14.00" fill="#000000">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node25"><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="232,-1651 0,-1651 0,-1613 232,-1613 232,-1651"/>
<text text-anchor="middle" x="116" y="-1635.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="116" y="-1620.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="node26" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node26"><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="561,-1658.5 329,-1658.5 329,-1605.5 561,-1605.5 561,-1658.5"/>
<text text-anchor="middle" x="445" y="-1643.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="445" y="-1628.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="445" y="-1613.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="edge8" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M232.46,-1632C260.36,-1632 290.29,-1632 318.62,-1632"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1635.5001 328.98,-1632 318.98,-1628.5001 318.98,-1635.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="232,-1737 0,-1737 0,-1669 232,-1669 232,-1737"/>
<text text-anchor="middle" x="116" y="-1721.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="116" y="-1706.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="116" y="-1691.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="116" y="-1676.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="232,-1838.5 0,-1838.5 0,-1755.5 232,-1755.5 232,-1838.5"/>
<text text-anchor="middle" x="116" y="-1823.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-1808.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-1793.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-1778.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-1763.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="561,-1831 329,-1831 329,-1763 561,-1763 561,-1831"/>
<text text-anchor="middle" x="445" y="-1815.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="445" y="-1800.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="445" y="-1785.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="445" y="-1770.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="edge9" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M232.46,-1797C260.36,-1797 290.29,-1797 318.62,-1797"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1800.5001 328.98,-1797 318.98,-1793.5001 318.98,-1800.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>