developers/zcash-zf-dag.html

901 lines
65 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="1138pt" height="2468pt"
viewBox="0.00 0.00 1138.00 2468.00" 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 2464)">
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2464 1134,-2464 1134,4 -4,4"/>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node1"><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="black" points="571.5,-240.5 340.5,-240.5 340.5,-187.5 571.5,-187.5 571.5,-240.5"/>
<text text-anchor="middle" x="456" y="-225.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="456" y="-210.3" font-family="Times,serif" font-size="14.00">Add metrics for chain</text>
<text text-anchor="middle" x="456" y="-195.3" font-family="Times,serif" font-size="14.00">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1135 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#1135</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1135" xlink:title="ZcashFoundation/zebra#1135&#10;Refactor Network and&#10;NetworkUpgrade enums into&#10;structs and a trait" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-327 24.5,-327 24.5,-259 255.5,-259 255.5,-327"/>
<text text-anchor="middle" x="140" y="-311.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#1135</text>
<text text-anchor="middle" x="140" y="-296.8" font-family="Times,serif" font-size="14.00">Refactor Network and</text>
<text text-anchor="middle" x="140" y="-281.8" font-family="Times,serif" font-size="14.00">NetworkUpgrade enums into</text>
<text text-anchor="middle" x="140" y="-266.8" font-family="Times,serif" font-size="14.00">structs and a trait</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1011 -->
<g id="node3" class="node closed">
<title>ZcashFoundation/zebra#1011</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1011" xlink:title="ZcashFoundation/zebra#1011&#10;Re&#45;enable the&#10;BlockVerifier continuous_&#10;blockchain_test" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-327 340.5,-327 340.5,-259 571.5,-259 571.5,-327"/>
<text text-anchor="middle" x="456" y="-311.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#1011</text>
<text text-anchor="middle" x="456" y="-296.8" font-family="Times,serif" font-size="14.00">Re&#45;enable the</text>
<text text-anchor="middle" x="456" y="-281.8" font-family="Times,serif" font-size="14.00">BlockVerifier continuous_</text>
<text text-anchor="middle" x="456" y="-266.8" font-family="Times,serif" font-size="14.00">blockchain_test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1135&#45;&gt;ZcashFoundation/zebra#1011 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#1135&#45;&gt;ZcashFoundation/zebra#1011</title>
<path fill="none" stroke="black" d="M255.69,-293C279.95,-293 305.65,-293 330.25,-293"/>
<polygon fill="black" stroke="black" points="330.35,-296.5 340.35,-293 330.35,-289.5 330.35,-296.5"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node4"><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="black" stroke-width="2" points="255.5,-413 24.5,-413 24.5,-345 255.5,-345 255.5,-413"/>
<text text-anchor="middle" x="140" y="-397.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="140" y="-382.8" font-family="Times,serif" font-size="14.00">Support shielded coinbase</text>
<text text-anchor="middle" x="140" y="-367.8" font-family="Times,serif" font-size="14.00">in `getblocktemplate` for</text>
<text text-anchor="middle" x="140" y="-352.8" font-family="Times,serif" font-size="14.00">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5929 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5929</title>
<g id="a_node5"><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="black" points="571.5,-413 340.5,-413 340.5,-345 571.5,-345 571.5,-413"/>
<text text-anchor="middle" x="456" y="-397.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5929</text>
<text text-anchor="middle" x="456" y="-382.8" font-family="Times,serif" font-size="14.00">Support shielded coinbase</text>
<text text-anchor="middle" x="456" y="-367.8" font-family="Times,serif" font-size="14.00">in `getblocktemplate` for</text>
<text text-anchor="middle" x="456" y="-352.8" font-family="Times,serif" font-size="14.00">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="black" d="M255.69,-379C279.95,-379 305.65,-379 330.25,-379"/>
<polygon fill="black" stroke="black" points="330.35,-382.5 340.35,-379 330.35,-375.5 330.35,-382.5"/>
</g>
<!-- ZcashFoundation/zebra#7109 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#7109</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7109" xlink:title="ZcashFoundation/zebra#7109&#10;Store cumulative work in&#10;the finalized state for&#10;each height" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-162 24.5,-162 24.5,-94 255.5,-94 255.5,-162"/>
<text text-anchor="middle" x="140" y="-146.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7109</text>
<text text-anchor="middle" x="140" y="-131.8" font-family="Times,serif" font-size="14.00">Store cumulative work in</text>
<text text-anchor="middle" x="140" y="-116.8" font-family="Times,serif" font-size="14.00">the finalized state for</text>
<text text-anchor="middle" x="140" y="-101.8" font-family="Times,serif" font-size="14.00">each height</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7109&#45;&gt;ZcashFoundation/zebra#5297 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#7109&#45;&gt;ZcashFoundation/zebra#5297</title>
<path fill="none" stroke="black" d="M255.73,-161.22C275.79,-166.91 296.49,-172.69 316,-178 324.3,-180.26 332.89,-182.57 341.54,-184.86"/>
<polygon fill="black" stroke="black" points="340.76,-188.27 351.32,-187.45 342.55,-181.51 340.76,-188.27"/>
</g>
<!-- ZcashFoundation/zebra#6688 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#6688</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6688" xlink:title="ZcashFoundation/zebra#6688&#10;`getnetworksolps` &amp;&#10;`getnetworkhashps` RPCs&#10;hang with large&#10;num_blocks" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-169.5 340.5,-169.5 340.5,-86.5 571.5,-86.5 571.5,-169.5"/>
<text text-anchor="middle" x="456" y="-154.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6688</text>
<text text-anchor="middle" x="456" y="-139.3" font-family="Times,serif" font-size="14.00">`getnetworksolps` &amp;</text>
<text text-anchor="middle" x="456" y="-124.3" font-family="Times,serif" font-size="14.00">`getnetworkhashps` RPCs</text>
<text text-anchor="middle" x="456" y="-109.3" font-family="Times,serif" font-size="14.00">hang with large</text>
<text text-anchor="middle" x="456" y="-94.3" font-family="Times,serif" font-size="14.00">num_blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7109&#45;&gt;ZcashFoundation/zebra#6688 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#7109&#45;&gt;ZcashFoundation/zebra#6688</title>
<path fill="none" stroke="black" d="M255.69,-128C279.95,-128 305.65,-128 330.25,-128"/>
<polygon fill="black" stroke="black" points="330.35,-131.5 340.35,-128 330.35,-124.5 330.35,-131.5"/>
</g>
<!-- ZcashFoundation/zebra#7110 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#7110</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7110" xlink:title="ZcashFoundation/zebra#7110&#10;Show the full chain work&#10;in the chain fork&#10;progress bars" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-68 340.5,-68 340.5,0 571.5,0 571.5,-68"/>
<text text-anchor="middle" x="456" y="-52.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7110</text>
<text text-anchor="middle" x="456" y="-37.8" font-family="Times,serif" font-size="14.00">Show the full chain work</text>
<text text-anchor="middle" x="456" y="-22.8" font-family="Times,serif" font-size="14.00">in the chain fork</text>
<text text-anchor="middle" x="456" y="-7.8" font-family="Times,serif" font-size="14.00">progress bars</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7109&#45;&gt;ZcashFoundation/zebra#7110 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#7109&#45;&gt;ZcashFoundation/zebra#7110</title>
<path fill="none" stroke="black" d="M254.81,-93.93C279.78,-86.45 306.34,-78.5 331.68,-70.92"/>
<polygon fill="black" stroke="black" points="332.74,-74.25 341.32,-68.03 330.74,-67.55 332.74,-74.25"/>
</g>
<!-- ZcashFoundation/zebra#7403 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#7403</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7403" xlink:title="ZcashFoundation/zebra#7403&#10;Make `getnetworksolps` &amp;&#10;`getnetworkhashps` RPCs&#10;support the full height&#10;range" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="863,-169.5 632,-169.5 632,-86.5 863,-86.5 863,-169.5"/>
<text text-anchor="middle" x="747.5" y="-154.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7403</text>
<text text-anchor="middle" x="747.5" y="-139.3" font-family="Times,serif" font-size="14.00">Make `getnetworksolps` &amp;</text>
<text text-anchor="middle" x="747.5" y="-124.3" font-family="Times,serif" font-size="14.00">`getnetworkhashps` RPCs</text>
<text text-anchor="middle" x="747.5" y="-109.3" font-family="Times,serif" font-size="14.00">support the full height</text>
<text text-anchor="middle" x="747.5" y="-94.3" font-family="Times,serif" font-size="14.00">range</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6688&#45;&gt;ZcashFoundation/zebra#7403 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#6688&#45;&gt;ZcashFoundation/zebra#7403</title>
<path fill="none" stroke="black" d="M571.83,-128C588.18,-128 605.05,-128 621.57,-128"/>
<polygon fill="black" stroke="black" points="621.81,-131.5 631.81,-128 621.81,-124.5 621.81,-131.5"/>
</g>
<!-- ZcashFoundation/zebra#7215 -->
<g id="node10" class="node closed">
<title>ZcashFoundation/zebra#7215</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7215" xlink:title="ZcashFoundation/zebra#7215&#10;Document how to do in&#45;&#10;place upgrades of the&#10;state database format" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-1038 340.5,-1038 340.5,-970 571.5,-970 571.5,-1038"/>
<text text-anchor="middle" x="456" y="-1022.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7215</text>
<text text-anchor="middle" x="456" y="-1007.8" font-family="Times,serif" font-size="14.00">Document how to do in&#45;</text>
<text text-anchor="middle" x="456" y="-992.8" font-family="Times,serif" font-size="14.00">place upgrades of the</text>
<text text-anchor="middle" x="456" y="-977.8" font-family="Times,serif" font-size="14.00">state database format</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#6953</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6953" xlink:title="ZcashFoundation/zebra#6953&#10;Add note subtree indexes&#10;to the finalized and non&#45;&#10;finalized state" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-823 24.5,-823 24.5,-755 255.5,-755 255.5,-823"/>
<text text-anchor="middle" x="140" y="-807.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6953</text>
<text text-anchor="middle" x="140" y="-792.8" font-family="Times,serif" font-size="14.00">Add note subtree indexes</text>
<text text-anchor="middle" x="140" y="-777.8" font-family="Times,serif" font-size="14.00">to the finalized and non&#45;</text>
<text text-anchor="middle" x="140" y="-762.8" font-family="Times,serif" font-size="14.00">finalized state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7215 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7215</title>
<path fill="none" stroke="black" d="M255.5,-813.52C264.51,-818.58 272.87,-824.67 280,-832 321.5,-874.67 274.5,-918.33 316,-961 320.79,-965.93 326.14,-970.29 331.86,-974.16"/>
<polygon fill="black" stroke="black" points="330.15,-977.22 340.5,-979.48 333.82,-971.26 330.15,-977.22"/>
</g>
<!-- ZcashFoundation/zebra#7446 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#7446</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7446" xlink:title="ZcashFoundation/zebra#7446&#10;Add format checks with&#10;fixed subtree values from&#10;`zcashd`" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-952 340.5,-952 340.5,-884 571.5,-884 571.5,-952"/>
<text text-anchor="middle" x="456" y="-936.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7446</text>
<text text-anchor="middle" x="456" y="-921.8" font-family="Times,serif" font-size="14.00">Add format checks with</text>
<text text-anchor="middle" x="456" y="-906.8" font-family="Times,serif" font-size="14.00">fixed subtree values from</text>
<text text-anchor="middle" x="456" y="-891.8" font-family="Times,serif" font-size="14.00">`zcashd`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7446 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7446</title>
<path fill="none" stroke="black" d="M255.75,-818.53C264.24,-822.49 272.43,-826.96 280,-832 300.75,-845.8 295.25,-861.2 316,-875 320.85,-878.23 325.96,-881.22 331.23,-884"/>
<polygon fill="black" stroke="black" points="329.74,-887.17 340.25,-888.47 332.84,-880.89 329.74,-887.17"/>
</g>
<!-- ZcashFoundation/zebra#7444 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#7444</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7444" xlink:title="ZcashFoundation/zebra#7444&#10;Correctly populate&#10;subtree values in ZebraDb&#10;::note_commitment_trees()" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-866 340.5,-866 340.5,-798 571.5,-798 571.5,-866"/>
<text text-anchor="middle" x="456" y="-850.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7444</text>
<text text-anchor="middle" x="456" y="-835.8" font-family="Times,serif" font-size="14.00">Correctly populate</text>
<text text-anchor="middle" x="456" y="-820.8" font-family="Times,serif" font-size="14.00">subtree values in ZebraDb</text>
<text text-anchor="middle" x="456" y="-805.8" font-family="Times,serif" font-size="14.00">::note_commitment_trees()</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7444 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7444</title>
<path fill="none" stroke="black" d="M255.69,-804.71C279.95,-808.03 305.65,-811.55 330.25,-814.92"/>
<polygon fill="black" stroke="black" points="329.97,-818.41 340.35,-816.3 330.92,-811.48 329.97,-818.41"/>
</g>
<!-- ZcashFoundation/zebra#7443 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#7443</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7443" xlink:title="ZcashFoundation/zebra#7443&#10;Fix proptest coverage of&#10;note commitment subtree&#10;serialization" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-780 340.5,-780 340.5,-712 571.5,-712 571.5,-780"/>
<text text-anchor="middle" x="456" y="-764.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7443</text>
<text text-anchor="middle" x="456" y="-749.8" font-family="Times,serif" font-size="14.00">Fix proptest coverage of</text>
<text text-anchor="middle" x="456" y="-734.8" font-family="Times,serif" font-size="14.00">note commitment subtree</text>
<text text-anchor="middle" x="456" y="-719.8" font-family="Times,serif" font-size="14.00">serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7443 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7443</title>
<path fill="none" stroke="black" d="M255.69,-773.29C279.95,-769.97 305.65,-766.45 330.25,-763.08"/>
<polygon fill="black" stroke="black" points="330.92,-766.52 340.35,-761.7 329.97,-759.59 330.92,-766.52"/>
</g>
<!-- ZcashFoundation/zebra#7447 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#7447</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7447" xlink:title="ZcashFoundation/zebra#7447&#10;Compare subtree roots in&#10;non&#45;finalized chains when&#10;evaluating chain equality" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-694 340.5,-694 340.5,-626 571.5,-626 571.5,-694"/>
<text text-anchor="middle" x="456" y="-678.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7447</text>
<text text-anchor="middle" x="456" y="-663.8" font-family="Times,serif" font-size="14.00">Compare subtree roots in</text>
<text text-anchor="middle" x="456" y="-648.8" font-family="Times,serif" font-size="14.00">non&#45;finalized chains when</text>
<text text-anchor="middle" x="456" y="-633.8" font-family="Times,serif" font-size="14.00">evaluating chain equality</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7447 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7447</title>
<path fill="none" stroke="black" d="M204.32,-754.89C237.1,-738.01 278.09,-718.07 316,-703 320.79,-701.1 325.7,-699.22 330.68,-697.38"/>
<polygon fill="black" stroke="black" points="332.12,-700.58 340.34,-693.9 329.75,-694 332.12,-700.58"/>
</g>
<!-- ZcashFoundation/zebra#7407 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#7407</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7407" xlink:title="ZcashFoundation/zebra#7407&#10;Make subtree index&#10;upgrade compatible with&#10;lightwalletd back&#45;&#10;tracking algorithm" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-607.5 340.5,-607.5 340.5,-524.5 571.5,-524.5 571.5,-607.5"/>
<text text-anchor="middle" x="456" y="-592.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7407</text>
<text text-anchor="middle" x="456" y="-577.3" font-family="Times,serif" font-size="14.00">Make subtree index</text>
<text text-anchor="middle" x="456" y="-562.3" font-family="Times,serif" font-size="14.00">upgrade compatible with</text>
<text text-anchor="middle" x="456" y="-547.3" font-family="Times,serif" font-size="14.00">lightwalletd back&#45;</text>
<text text-anchor="middle" x="456" y="-532.3" font-family="Times,serif" font-size="14.00">tracking algorithm</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7407 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7407</title>
<path fill="none" stroke="black" d="M167.95,-754.88C199.73,-716.65 255.88,-655.04 316,-617 320.94,-613.87 326.1,-610.9 331.4,-608.08"/>
<polygon fill="black" stroke="black" points="333.12,-611.13 340.44,-603.47 329.94,-604.9 333.12,-611.13"/>
</g>
<!-- ZcashFoundation/zebra#7377 -->
<g id="node17" class="node closed">
<title>ZcashFoundation/zebra#7377</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/7377" xlink:title="ZcashFoundation/zebra#7377&#10;change(state): Move&#10;format upgrades to&#10;separate modules" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="1130,-747 899,-747 899,-743 895,-743 895,-739 899,-739 899,-687 895,-687 895,-683 899,-683 899,-679 1130,-679 1130,-747"/>
<polyline fill="none" stroke="black" points="899,-743 903,-743 903,-739 899,-739 "/>
<polyline fill="none" stroke="black" points="899,-687 903,-687 903,-683 899,-683 "/>
<text text-anchor="middle" x="1014.5" y="-731.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7377</text>
<text text-anchor="middle" x="1014.5" y="-716.8" font-family="Times,serif" font-size="14.00">change(state): Move</text>
<text text-anchor="middle" x="1014.5" y="-701.8" font-family="Times,serif" font-size="14.00">format upgrades to</text>
<text text-anchor="middle" x="1014.5" y="-686.8" font-family="Times,serif" font-size="14.00">separate modules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7446&#45;&gt;ZcashFoundation/zebra#7377 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#7446&#45;&gt;ZcashFoundation/zebra#7377</title>
<path fill="none" stroke="black" d="M569.5,-883.94C578.49,-880.99 587.41,-877.99 596,-875 709.23,-835.57 837.55,-784.86 921.69,-750.76"/>
<polygon fill="black" stroke="black" points="923.01,-754 930.96,-747 920.38,-747.52 923.01,-754"/>
</g>
<!-- ZcashFoundation/zebra#7441 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#7441</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7441" xlink:title="ZcashFoundation/zebra#7441&#10;Decide if we need to&#10;speed up adding subtrees&#10;for existing database&#10;blocks" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="863,-754.5 632,-754.5 632,-671.5 863,-671.5 863,-754.5"/>
<text text-anchor="middle" x="747.5" y="-739.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7441</text>
<text text-anchor="middle" x="747.5" y="-724.3" font-family="Times,serif" font-size="14.00">Decide if we need to</text>
<text text-anchor="middle" x="747.5" y="-709.3" font-family="Times,serif" font-size="14.00">speed up adding subtrees</text>
<text text-anchor="middle" x="747.5" y="-694.3" font-family="Times,serif" font-size="14.00">for existing database</text>
<text text-anchor="middle" x="747.5" y="-679.3" font-family="Times,serif" font-size="14.00">blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7446&#45;&gt;ZcashFoundation/zebra#7441 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#7446&#45;&gt;ZcashFoundation/zebra#7441</title>
<path fill="none" stroke="black" d="M571.82,-887.87C580.25,-884.05 588.41,-879.77 596,-875 597.64,-873.97 657.36,-809.49 701.06,-762.21"/>
<polygon fill="black" stroke="black" points="703.71,-764.5 707.93,-754.78 698.57,-759.75 703.71,-764.5"/>
</g>
<!-- ZcashFoundation/zebra#7447&#45;&gt;ZcashFoundation/zebra#7441 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#7447&#45;&gt;ZcashFoundation/zebra#7441</title>
<path fill="none" stroke="black" d="M571.83,-681.02C588.18,-684.01 605.05,-687.1 621.57,-690.13"/>
<polygon fill="black" stroke="black" points="621.34,-693.65 631.81,-692 622.6,-686.76 621.34,-693.65"/>
</g>
<!-- ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7377 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7377</title>
<path fill="none" stroke="black" d="M571.56,-606.82C591.55,-613.12 612.27,-619.14 632,-624 733.03,-648.89 762.06,-636.77 863,-662 878.63,-665.9 894.95,-670.68 910.85,-675.73"/>
<polygon fill="black" stroke="black" points="910.09,-679.16 920.68,-678.9 912.24,-672.5 910.09,-679.16"/>
</g>
<!-- ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7441 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7441</title>
<path fill="none" stroke="black" d="M571.55,-602.77C580.08,-607.08 588.34,-611.81 596,-617 615.81,-630.4 612.91,-642.59 632,-657 636.09,-660.09 640.38,-663.07 644.79,-665.95"/>
<polygon fill="black" stroke="black" points="643.09,-669.01 653.42,-671.35 646.8,-663.08 643.09,-669.01"/>
</g>
<!-- ZcashFoundation/zebra#7263 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#7263</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7263" xlink:title="ZcashFoundation/zebra#7263&#10;Return errors instead of&#10;panicking in methods for&#10;`Height`s" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="863,-499 632,-499 632,-431 863,-431 863,-499"/>
<text text-anchor="middle" x="747.5" y="-483.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7263</text>
<text text-anchor="middle" x="747.5" y="-468.8" font-family="Times,serif" font-size="14.00">Return errors instead of</text>
<text text-anchor="middle" x="747.5" y="-453.8" font-family="Times,serif" font-size="14.00">panicking in methods for</text>
<text text-anchor="middle" x="747.5" y="-438.8" font-family="Times,serif" font-size="14.00">`Height`s</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7263 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7263</title>
<path fill="none" stroke="black" d="M571.83,-525.94C593.97,-518.21 617.09,-510.15 638.99,-502.51"/>
<polygon fill="black" stroke="black" points="640.33,-505.75 648.62,-499.15 638.03,-499.14 640.33,-505.75"/>
</g>
<!-- ZcashFoundation/zebra#7383 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#7383</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7383" xlink:title="ZcashFoundation/zebra#7383&#10;(De)Serialize&#10;`NoteCommitmentTree`s&#10;using supported&#10;serialization format&#10;instead of `bincode`" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="863,-615 632,-615 632,-517 863,-517 863,-615"/>
<text text-anchor="middle" x="747.5" y="-599.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7383</text>
<text text-anchor="middle" x="747.5" y="-584.8" font-family="Times,serif" font-size="14.00">(De)Serialize</text>
<text text-anchor="middle" x="747.5" y="-569.8" font-family="Times,serif" font-size="14.00">`NoteCommitmentTree`s</text>
<text text-anchor="middle" x="747.5" y="-554.8" font-family="Times,serif" font-size="14.00">using supported</text>
<text text-anchor="middle" x="747.5" y="-539.8" font-family="Times,serif" font-size="14.00">serialization format</text>
<text text-anchor="middle" x="747.5" y="-524.8" font-family="Times,serif" font-size="14.00">instead of `bincode`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7383 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#7407&#45;&gt;ZcashFoundation/zebra#7383</title>
<path fill="none" stroke="black" d="M571.83,-566C588.18,-566 605.05,-566 621.57,-566"/>
<polygon fill="black" stroke="black" points="621.81,-569.5 631.81,-566 621.81,-562.5 621.81,-569.5"/>
</g>
<!-- ZcashFoundation/zebra#7441&#45;&gt;ZcashFoundation/zebra#7377 -->
<g id="edge20" class="edge">
<title>ZcashFoundation/zebra#7441&#45;&gt;ZcashFoundation/zebra#7377</title>
<path fill="none" stroke="black" d="M863.19,-713C871.55,-713 879.99,-713 888.4,-713"/>
<polygon fill="black" stroke="black" points="888.63,-716.5 898.63,-713 888.63,-709.5 888.63,-716.5"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node21"><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="black" stroke-width="2" points="255.5,-924.5 24.5,-924.5 24.5,-841.5 255.5,-841.5 255.5,-924.5"/>
<text text-anchor="middle" x="140" y="-909.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="140" y="-894.3" font-family="Times,serif" font-size="14.00">Send the same</text>
<text text-anchor="middle" x="140" y="-879.3" font-family="Times,serif" font-size="14.00">getblocktemplate RPC</text>
<text text-anchor="middle" x="140" y="-864.3" font-family="Times,serif" font-size="14.00">response until the</text>
<text text-anchor="middle" x="140" y="-849.3" font-family="Times,serif" font-size="14.00">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5911 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#5911</title>
<g id="a_node22"><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="black" stroke-width="2" points="255.5,-1011 24.5,-1011 24.5,-943 255.5,-943 255.5,-1011"/>
<text text-anchor="middle" x="140" y="-995.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5911</text>
<text text-anchor="middle" x="140" y="-980.8" font-family="Times,serif" font-size="14.00">Store the serialized</text>
<text text-anchor="middle" x="140" y="-965.8" font-family="Times,serif" font-size="14.00">block size in the</text>
<text text-anchor="middle" x="140" y="-950.8" font-family="Times,serif" font-size="14.00">database</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node23" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node23"><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="black" points="571.5,-1154.5 340.5,-1154.5 340.5,-1101.5 571.5,-1101.5 571.5,-1154.5"/>
<text text-anchor="middle" x="456" y="-1139.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="456" y="-1124.3" font-family="Times,serif" font-size="14.00">Improve note commitment</text>
<text text-anchor="middle" x="456" y="-1109.3" font-family="Times,serif" font-size="14.00">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#2908</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2908" xlink:title="ZcashFoundation/zebra#2908&#10;Improve&#10;VerifyBlockError::Commit&#10;typing, so we don&#39;t&#10;accidentally break syncer&#10;error handling" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1330 24.5,-1330 24.5,-1232 255.5,-1232 255.5,-1330"/>
<text text-anchor="middle" x="140" y="-1314.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#2908</text>
<text text-anchor="middle" x="140" y="-1299.8" font-family="Times,serif" font-size="14.00">Improve</text>
<text text-anchor="middle" x="140" y="-1284.8" font-family="Times,serif" font-size="14.00">VerifyBlockError::Commit</text>
<text text-anchor="middle" x="140" y="-1269.8" font-family="Times,serif" font-size="14.00">typing, so we don&#39;t</text>
<text text-anchor="middle" x="140" y="-1254.8" font-family="Times,serif" font-size="14.00">accidentally break syncer</text>
<text text-anchor="middle" x="140" y="-1239.8" font-family="Times,serif" font-size="14.00">error handling</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node25" class="node closed">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node25"><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="#fad8c7" stroke="black" points="571.5,-1315 340.5,-1315 340.5,-1247 571.5,-1247 571.5,-1315"/>
<text text-anchor="middle" x="456" y="-1299.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="456" y="-1284.8" font-family="Times,serif" font-size="14.00">Return detailed errors</text>
<text text-anchor="middle" x="456" y="-1269.8" font-family="Times,serif" font-size="14.00">from the `submitblock`</text>
<text text-anchor="middle" x="456" y="-1254.8" font-family="Times,serif" font-size="14.00">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908&#45;&gt;ZcashFoundation/zebra#5487 -->
<g id="edge21" class="edge">
<title>ZcashFoundation/zebra#2908&#45;&gt;ZcashFoundation/zebra#5487</title>
<path fill="none" stroke="black" d="M255.69,-1281C279.95,-1281 305.65,-1281 330.25,-1281"/>
<polygon fill="black" stroke="black" points="330.35,-1284.5 340.35,-1281 330.35,-1277.5 330.35,-1284.5"/>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node26"><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="black" stroke-width="2" points="255.5,-1416 24.5,-1416 24.5,-1348 255.5,-1348 255.5,-1416"/>
<text text-anchor="middle" x="140" y="-1400.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="140" y="-1385.8" font-family="Times,serif" font-size="14.00">Fix repeated block</text>
<text text-anchor="middle" x="140" y="-1370.8" font-family="Times,serif" font-size="14.00">timeouts during initial</text>
<text text-anchor="middle" x="140" y="-1355.8" font-family="Times,serif" font-size="14.00">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node27" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node27"><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="black" points="571.5,-1416 340.5,-1416 340.5,-1348 571.5,-1348 571.5,-1416"/>
<text text-anchor="middle" x="456" y="-1400.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="456" y="-1385.8" font-family="Times,serif" font-size="14.00">Parallelise note</text>
<text text-anchor="middle" x="456" y="-1370.8" font-family="Times,serif" font-size="14.00">commitment tree point</text>
<text text-anchor="middle" x="456" y="-1355.8" font-family="Times,serif" font-size="14.00">conversions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425 -->
<g id="edge22" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="black" d="M255.69,-1382C279.95,-1382 305.65,-1382 330.25,-1382"/>
<polygon fill="black" stroke="black" points="330.35,-1385.5 340.35,-1382 330.35,-1378.5 330.35,-1385.5"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node28"><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="black" stroke-width="2" points="255.5,-1213.5 24.5,-1213.5 24.5,-1130.5 255.5,-1130.5 255.5,-1213.5"/>
<text text-anchor="middle" x="140" y="-1198.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="140" y="-1183.3" font-family="Times,serif" font-size="14.00">Add an NU5 block test</text>
<text text-anchor="middle" x="140" y="-1168.3" font-family="Times,serif" font-size="14.00">vector that contains many</text>
<text text-anchor="middle" x="140" y="-1153.3" font-family="Times,serif" font-size="14.00">shielded Orchard</text>
<text text-anchor="middle" x="140" y="-1138.3" font-family="Times,serif" font-size="14.00">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge23" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="black" d="M255.69,-1155.9C279.95,-1152.5 305.65,-1148.9 330.25,-1145.5"/>
<polygon fill="black" stroke="black" points="330.93,-1148.94 340.35,-1144.1 329.96,-1142.01 330.93,-1148.94"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node29"><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="black" stroke-width="2" points="255.5,-1112.5 24.5,-1112.5 24.5,-1029.5 255.5,-1029.5 255.5,-1112.5"/>
<text text-anchor="middle" x="140" y="-1097.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="140" y="-1082.3" font-family="Times,serif" font-size="14.00">Add an NU5 block test</text>
<text text-anchor="middle" x="140" y="-1067.3" font-family="Times,serif" font-size="14.00">vector that contains many</text>
<text text-anchor="middle" x="140" y="-1052.3" font-family="Times,serif" font-size="14.00">shielded Sapling</text>
<text text-anchor="middle" x="140" y="-1037.3" font-family="Times,serif" font-size="14.00">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge24" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="black" d="M255.69,-1091.8C279.95,-1096.2 305.65,-1100.9 330.25,-1105.4"/>
<polygon fill="black" stroke="black" points="329.89,-1108.89 340.35,-1107.2 331.12,-1102 329.89,-1108.89"/>
</g>
<!-- ZcashFoundation/zebra#6954 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#6954</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6954" xlink:title="ZcashFoundation/zebra#6954&#10;Implement&#10;`z_getsubtreesbyindex`&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1616 24.5,-1616 24.5,-1548 255.5,-1548 255.5,-1616"/>
<text text-anchor="middle" x="140" y="-1600.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6954</text>
<text text-anchor="middle" x="140" y="-1585.8" font-family="Times,serif" font-size="14.00">Implement</text>
<text text-anchor="middle" x="140" y="-1570.8" font-family="Times,serif" font-size="14.00">`z_getsubtreesbyindex`</text>
<text text-anchor="middle" x="140" y="-1555.8" font-family="Times,serif" font-size="14.00">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7233 -->
<g id="node31" class="node closed">
<title>ZcashFoundation/zebra#7233</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7233" xlink:title="ZcashFoundation/zebra#7233&#10;Publish Zebra release:&#10;1.2.0" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-1761.5 340.5,-1761.5 340.5,-1708.5 571.5,-1708.5 571.5,-1761.5"/>
<text text-anchor="middle" x="456" y="-1746.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7233</text>
<text text-anchor="middle" x="456" y="-1731.3" font-family="Times,serif" font-size="14.00">Publish Zebra release:</text>
<text text-anchor="middle" x="456" y="-1716.3" font-family="Times,serif" font-size="14.00">1.2.0</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7233 -->
<g id="edge25" class="edge">
<title>ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7233</title>
<path fill="none" stroke="black" d="M247.36,-1616.1C259.05,-1622.4 270.24,-1629.6 280,-1638 303.87,-1658.5 290.85,-1680.1 316,-1699 320.78,-1702.6 325.89,-1705.8 331.23,-1708.8"/>
<polygon fill="black" stroke="black" points="329.88,-1712.04 340.39,-1713.4 333.02,-1705.78 329.88,-1712.04"/>
</g>
<!-- ZcashFoundation/zebra#7450 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#7450</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7450" xlink:title="ZcashFoundation/zebra#7450&#10;Manually test&#10;`z_getsubtreesbyindex`&#10;using `zcash&#45;rpc&#45;diff`" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-1690 340.5,-1690 340.5,-1622 571.5,-1622 571.5,-1690"/>
<text text-anchor="middle" x="456" y="-1674.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7450</text>
<text text-anchor="middle" x="456" y="-1659.8" font-family="Times,serif" font-size="14.00">Manually test</text>
<text text-anchor="middle" x="456" y="-1644.8" font-family="Times,serif" font-size="14.00">`z_getsubtreesbyindex`</text>
<text text-anchor="middle" x="456" y="-1629.8" font-family="Times,serif" font-size="14.00">using `zcash&#45;rpc&#45;diff`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7450 -->
<g id="edge26" class="edge">
<title>ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7450</title>
<path fill="none" stroke="black" d="M255.69,-1609C280.05,-1614.8 305.88,-1620.9 330.58,-1626.7"/>
<polygon fill="black" stroke="black" points="329.81,-1630.12 340.35,-1629 331.42,-1623.3 329.81,-1630.12"/>
</g>
<!-- ZcashFoundation/zebra#7449 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#7449</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7449" xlink:title="ZcashFoundation/zebra#7449&#10;Add snapshot and state&#10;integration tests for&#10;`z_getsubtreesbyindex`" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-1604 340.5,-1604 340.5,-1536 571.5,-1536 571.5,-1604"/>
<text text-anchor="middle" x="456" y="-1588.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7449</text>
<text text-anchor="middle" x="456" y="-1573.8" font-family="Times,serif" font-size="14.00">Add snapshot and state</text>
<text text-anchor="middle" x="456" y="-1558.8" font-family="Times,serif" font-size="14.00">integration tests for</text>
<text text-anchor="middle" x="456" y="-1543.8" font-family="Times,serif" font-size="14.00">`z_getsubtreesbyindex`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7449 -->
<g id="edge27" class="edge">
<title>ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7449</title>
<path fill="none" stroke="black" d="M255.69,-1577.6C279.95,-1576.7 305.65,-1575.7 330.25,-1574.8"/>
<polygon fill="black" stroke="black" points="330.5,-1578.29 340.35,-1574.4 330.22,-1571.3 330.5,-1578.29"/>
</g>
<!-- ZcashFoundation/zebra#7451 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#7451</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7451" xlink:title="ZcashFoundation/zebra#7451&#10;Test&#10;`z_getsubtreesbyindex`&#10;using a `lightwalletd`&#10;gRPC request" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-1517.5 340.5,-1517.5 340.5,-1434.5 571.5,-1434.5 571.5,-1517.5"/>
<text text-anchor="middle" x="456" y="-1502.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7451</text>
<text text-anchor="middle" x="456" y="-1487.3" font-family="Times,serif" font-size="14.00">Test</text>
<text text-anchor="middle" x="456" y="-1472.3" font-family="Times,serif" font-size="14.00">`z_getsubtreesbyindex`</text>
<text text-anchor="middle" x="456" y="-1457.3" font-family="Times,serif" font-size="14.00">using a `lightwalletd`</text>
<text text-anchor="middle" x="456" y="-1442.3" font-family="Times,serif" font-size="14.00">gRPC request</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7451 -->
<g id="edge28" class="edge">
<title>ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7451</title>
<path fill="none" stroke="black" d="M242.08,-1547.9C270.39,-1538.3 301.49,-1527.8 330.97,-1517.9"/>
<polygon fill="black" stroke="black" points="332.12,-1521.21 340.48,-1514.7 329.89,-1514.57 332.12,-1521.21"/>
</g>
<!-- ZcashFoundation/zebra#7350 -->
<g id="node35" class="node closed">
<title>ZcashFoundation/zebra#7350</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/7350" xlink:title="ZcashFoundation/zebra#7350&#10;OUTDATED: change(state):&#10;Add note subtree indexes&#10;to the database, and&#10;calculate subtrees for&#10;existing blocks" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="863,-1784 632,-1784 632,-1780 628,-1780 628,-1776 632,-1776 632,-1694 628,-1694 628,-1690 632,-1690 632,-1686 863,-1686 863,-1784"/>
<polyline fill="none" stroke="black" points="632,-1780 636,-1780 636,-1776 632,-1776 "/>
<polyline fill="none" stroke="black" points="632,-1694 636,-1694 636,-1690 632,-1690 "/>
<text text-anchor="middle" x="747.5" y="-1768.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7350</text>
<text text-anchor="middle" x="747.5" y="-1753.8" font-family="Times,serif" font-size="14.00">OUTDATED: change(state):</text>
<text text-anchor="middle" x="747.5" y="-1738.8" font-family="Times,serif" font-size="14.00">Add note subtree indexes</text>
<text text-anchor="middle" x="747.5" y="-1723.8" font-family="Times,serif" font-size="14.00">to the database, and</text>
<text text-anchor="middle" x="747.5" y="-1708.8" font-family="Times,serif" font-size="14.00">calculate subtrees for</text>
<text text-anchor="middle" x="747.5" y="-1693.8" font-family="Times,serif" font-size="14.00">existing blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7233&#45;&gt;ZcashFoundation/zebra#7350 -->
<g id="edge29" class="edge">
<title>ZcashFoundation/zebra#7233&#45;&gt;ZcashFoundation/zebra#7350</title>
<path fill="none" stroke="black" d="M571.83,-1735C588.18,-1735 605.05,-1735 621.57,-1735"/>
<polygon fill="black" stroke="black" points="621.81,-1738.5 631.81,-1735 621.81,-1731.5 621.81,-1738.5"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4554" xlink:title="ZcashFoundation/zebra#4554&#10;benchmarks: create a&#10;ticket if zebrad mainnet&#10;sync time increases&#10;significantly" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1730.5 24.5,-1730.5 24.5,-1647.5 255.5,-1647.5 255.5,-1730.5"/>
<text text-anchor="middle" x="140" y="-1715.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="140" y="-1700.3" font-family="Times,serif" font-size="14.00">benchmarks: create a</text>
<text text-anchor="middle" x="140" y="-1685.3" font-family="Times,serif" font-size="14.00">ticket if zebrad mainnet</text>
<text text-anchor="middle" x="140" y="-1670.3" font-family="Times,serif" font-size="14.00">sync time increases</text>
<text text-anchor="middle" x="140" y="-1655.3" font-family="Times,serif" font-size="14.00">significantly</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node37"><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="black" stroke-width="2" points="255.5,-1855.5 24.5,-1855.5 24.5,-1772.5 255.5,-1772.5 255.5,-1855.5"/>
<text text-anchor="middle" x="140" y="-1840.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="140" y="-1825.3" font-family="Times,serif" font-size="14.00">Start disconnecting from</text>
<text text-anchor="middle" x="140" y="-1810.3" font-family="Times,serif" font-size="14.00">outdated peers before</text>
<text text-anchor="middle" x="140" y="-1795.3" font-family="Times,serif" font-size="14.00">network upgrade</text>
<text text-anchor="middle" x="140" y="-1780.3" font-family="Times,serif" font-size="14.00">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node38" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node38"><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="black" points="571.5,-1848 340.5,-1848 340.5,-1780 571.5,-1780 571.5,-1848"/>
<text text-anchor="middle" x="456" y="-1832.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="456" y="-1817.8" font-family="Times,serif" font-size="14.00">Prefer faster peers, but</text>
<text text-anchor="middle" x="456" y="-1802.8" font-family="Times,serif" font-size="14.00">if all peers are slow,</text>
<text text-anchor="middle" x="456" y="-1787.8" font-family="Times,serif" font-size="14.00">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge30" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="black" d="M255.69,-1814C279.95,-1814 305.65,-1814 330.25,-1814"/>
<polygon fill="black" stroke="black" points="330.35,-1817.5 340.35,-1814 330.35,-1810.5 330.35,-1817.5"/>
</g>
<!-- ZcashFoundation/zebra#7361 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#7361</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7361" xlink:title="ZcashFoundation/zebra#7361&#10;Make getblocktemplate&#45;&#10;rpcs a default feature" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1961.5 24.5,-1961.5 24.5,-1908.5 255.5,-1908.5 255.5,-1961.5"/>
<text text-anchor="middle" x="140" y="-1946.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7361</text>
<text text-anchor="middle" x="140" y="-1931.3" font-family="Times,serif" font-size="14.00">Make getblocktemplate&#45;</text>
<text text-anchor="middle" x="140" y="-1916.3" font-family="Times,serif" font-size="14.00">rpcs a default feature</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7415 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#7415</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7415" xlink:title="ZcashFoundation/zebra#7415&#10;devops: Remove redundant&#10;tags in Docker Hub" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-2005.5 340.5,-2005.5 340.5,-1952.5 571.5,-1952.5 571.5,-2005.5"/>
<text text-anchor="middle" x="456" y="-1990.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7415</text>
<text text-anchor="middle" x="456" y="-1975.3" font-family="Times,serif" font-size="14.00">devops: Remove redundant</text>
<text text-anchor="middle" x="456" y="-1960.3" font-family="Times,serif" font-size="14.00">tags in Docker Hub</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7361&#45;&gt;ZcashFoundation/zebra#7415 -->
<g id="edge31" class="edge">
<title>ZcashFoundation/zebra#7361&#45;&gt;ZcashFoundation/zebra#7415</title>
<path fill="none" stroke="black" d="M255.69,-1951.1C279.95,-1954.5 305.65,-1958.1 330.25,-1961.5"/>
<polygon fill="black" stroke="black" points="329.96,-1964.99 340.35,-1962.9 330.93,-1958.06 329.96,-1964.99"/>
</g>
<!-- ZcashFoundation/zebra#7362 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#7362</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7362" xlink:title="ZcashFoundation/zebra#7362&#10;Remove extra tests for&#10;getblocktemplate&#45;rpcs&#10;feature" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-1934 340.5,-1934 340.5,-1866 571.5,-1866 571.5,-1934"/>
<text text-anchor="middle" x="456" y="-1918.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7362</text>
<text text-anchor="middle" x="456" y="-1903.8" font-family="Times,serif" font-size="14.00">Remove extra tests for</text>
<text text-anchor="middle" x="456" y="-1888.8" font-family="Times,serif" font-size="14.00">getblocktemplate&#45;rpcs</text>
<text text-anchor="middle" x="456" y="-1873.8" font-family="Times,serif" font-size="14.00">feature</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7361&#45;&gt;ZcashFoundation/zebra#7362 -->
<g id="edge32" class="edge">
<title>ZcashFoundation/zebra#7361&#45;&gt;ZcashFoundation/zebra#7362</title>
<path fill="none" stroke="black" d="M255.69,-1922.2C279.95,-1919.5 305.65,-1916.6 330.25,-1913.9"/>
<polygon fill="black" stroke="black" points="330.79,-1917.36 340.35,-1912.8 330.03,-1910.4 330.79,-1917.36"/>
</g>
<!-- ZcashFoundation/zebra#7416 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#7416</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7416" xlink:title="ZcashFoundation/zebra#7416&#10;diagnostic: Log column&#10;family and database size&#10;on startup and shutdown" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2084 24.5,-2084 24.5,-2016 255.5,-2016 255.5,-2084"/>
<text text-anchor="middle" x="140" y="-2068.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7416</text>
<text text-anchor="middle" x="140" y="-2053.8" font-family="Times,serif" font-size="14.00">diagnostic: Log column</text>
<text text-anchor="middle" x="140" y="-2038.8" font-family="Times,serif" font-size="14.00">family and database size</text>
<text text-anchor="middle" x="140" y="-2023.8" font-family="Times,serif" font-size="14.00">on startup and shutdown</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5718 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#5718</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5718" xlink:title="ZcashFoundation/zebra#5718&#10;Reduce Zebra disk usage&#10;for mining pools" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-2076.5 340.5,-2076.5 340.5,-2023.5 571.5,-2023.5 571.5,-2076.5"/>
<text text-anchor="middle" x="456" y="-2061.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5718</text>
<text text-anchor="middle" x="456" y="-2046.3" font-family="Times,serif" font-size="14.00">Reduce Zebra disk usage</text>
<text text-anchor="middle" x="456" y="-2031.3" font-family="Times,serif" font-size="14.00">for mining pools</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7416&#45;&gt;ZcashFoundation/zebra#5718 -->
<g id="edge33" class="edge">
<title>ZcashFoundation/zebra#7416&#45;&gt;ZcashFoundation/zebra#5718</title>
<path fill="none" stroke="black" d="M255.69,-2050C279.95,-2050 305.65,-2050 330.25,-2050"/>
<polygon fill="black" stroke="black" points="330.35,-2053.5 340.35,-2050 330.35,-2046.5 330.35,-2053.5"/>
</g>
<!-- ZcashFoundation/zebra#6642 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#6642</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6642" xlink:title="ZcashFoundation/zebra#6642&#10;Tracking: Update&#10;`lightwalletd` RPCs for&#10;&quot;spend before sync&quot;&#10;algorithm" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2185.5 24.5,-2185.5 24.5,-2102.5 255.5,-2102.5 255.5,-2185.5"/>
<text text-anchor="middle" x="140" y="-2170.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6642</text>
<text text-anchor="middle" x="140" y="-2155.3" font-family="Times,serif" font-size="14.00">Tracking: Update</text>
<text text-anchor="middle" x="140" y="-2140.3" font-family="Times,serif" font-size="14.00">`lightwalletd` RPCs for</text>
<text text-anchor="middle" x="140" y="-2125.3" font-family="Times,serif" font-size="14.00">&quot;spend before sync&quot;</text>
<text text-anchor="middle" x="140" y="-2110.3" font-family="Times,serif" font-size="14.00">algorithm</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7335 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#7335</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7335" xlink:title="ZcashFoundation/zebra#7335&#10;Fix lightwalletd sync&#10;finish detection code in&#10;tests" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1510 24.5,-1510 24.5,-1442 255.5,-1442 255.5,-1510"/>
<text text-anchor="middle" x="140" y="-1494.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7335</text>
<text text-anchor="middle" x="140" y="-1479.8" font-family="Times,serif" font-size="14.00">Fix lightwalletd sync</text>
<text text-anchor="middle" x="140" y="-1464.8" font-family="Times,serif" font-size="14.00">finish detection code in</text>
<text text-anchor="middle" x="140" y="-1449.8" font-family="Times,serif" font-size="14.00">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7335&#45;&gt;ZcashFoundation/zebra#7451 -->
<g id="edge34" class="edge">
<title>ZcashFoundation/zebra#7335&#45;&gt;ZcashFoundation/zebra#7451</title>
<path fill="none" stroke="black" d="M255.69,-1476C279.95,-1476 305.65,-1476 330.25,-1476"/>
<polygon fill="black" stroke="black" points="330.35,-1479.5 340.35,-1476 330.35,-1472.5 330.35,-1479.5"/>
</g>
<!-- ZcashFoundation/zebra#6812 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#6812</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6812" xlink:title="ZcashFoundation/zebra#6812&#10;Process abort in state&#10;tests on some macOS&#10;versions with Rust 1.70" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2272 24.5,-2272 24.5,-2204 255.5,-2204 255.5,-2272"/>
<text text-anchor="middle" x="140" y="-2256.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6812</text>
<text text-anchor="middle" x="140" y="-2241.8" font-family="Times,serif" font-size="14.00">Process abort in state</text>
<text text-anchor="middle" x="140" y="-2226.8" font-family="Times,serif" font-size="14.00">tests on some macOS</text>
<text text-anchor="middle" x="140" y="-2211.8" font-family="Times,serif" font-size="14.00">versions with Rust 1.70</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6824 -->
<g id="node47" class="node closed">
<title>ZcashFoundation/zebra#6824</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6824" xlink:title="ZcashFoundation/zebra#6824&#10;Restore macOS tests" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-2257 340.5,-2257 340.5,-2219 571.5,-2219 571.5,-2257"/>
<text text-anchor="middle" x="456" y="-2241.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6824</text>
<text text-anchor="middle" x="456" y="-2226.8" font-family="Times,serif" font-size="14.00">Restore macOS tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6812&#45;&gt;ZcashFoundation/zebra#6824 -->
<g id="edge35" class="edge">
<title>ZcashFoundation/zebra#6812&#45;&gt;ZcashFoundation/zebra#6824</title>
<path fill="none" stroke="black" d="M255.69,-2238C279.95,-2238 305.65,-2238 330.25,-2238"/>
<polygon fill="black" stroke="black" points="330.35,-2241.5 340.35,-2238 330.35,-2234.5 330.35,-2241.5"/>
</g>
<!-- ZcashFoundation/zebra#7437 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#7437</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/7437" xlink:title="ZcashFoundation/zebra#7437&#10;change(state): Add note&#10;subtree indexes for new&#10;and existing blocks" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="571.5,-499 340.5,-499 340.5,-495 336.5,-495 336.5,-491 340.5,-491 340.5,-439 336.5,-439 336.5,-435 340.5,-435 340.5,-431 571.5,-431 571.5,-499"/>
<polyline fill="none" stroke="black" stroke-width="2" points="340.5,-495 344.5,-495 344.5,-491 340.5,-491 "/>
<polyline fill="none" stroke="black" stroke-width="2" points="340.5,-439 344.5,-439 344.5,-435 340.5,-435 "/>
<text text-anchor="middle" x="456" y="-483.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7437</text>
<text text-anchor="middle" x="456" y="-468.8" font-family="Times,serif" font-size="14.00">change(state): Add note</text>
<text text-anchor="middle" x="456" y="-453.8" font-family="Times,serif" font-size="14.00">subtree indexes for new</text>
<text text-anchor="middle" x="456" y="-438.8" font-family="Times,serif" font-size="14.00">and existing blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7437&#45;&gt;ZcashFoundation/zebra#7263 -->
<g id="edge36" class="edge">
<title>ZcashFoundation/zebra#7437&#45;&gt;ZcashFoundation/zebra#7263</title>
<path fill="none" stroke="black" d="M571.83,-465C588.18,-465 605.05,-465 621.57,-465"/>
<polygon fill="black" stroke="black" points="621.81,-468.5 631.81,-465 621.81,-461.5 621.81,-468.5"/>
</g>
<!-- ZcashFoundation/zebra#7363 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#7363</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7363" xlink:title="ZcashFoundation/zebra#7363&#10;Make a config for&#10;progress bars, rather&#10;than having the feature&#10;activate them by default" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2373.5 24.5,-2373.5 24.5,-2290.5 255.5,-2290.5 255.5,-2373.5"/>
<text text-anchor="middle" x="140" y="-2358.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7363</text>
<text text-anchor="middle" x="140" y="-2343.3" font-family="Times,serif" font-size="14.00">Make a config for</text>
<text text-anchor="middle" x="140" y="-2328.3" font-family="Times,serif" font-size="14.00">progress bars, rather</text>
<text text-anchor="middle" x="140" y="-2313.3" font-family="Times,serif" font-size="14.00">than having the feature</text>
<text text-anchor="middle" x="140" y="-2298.3" font-family="Times,serif" font-size="14.00">activate them by default</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7364 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#7364</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/7364" xlink:title="ZcashFoundation/zebra#7364&#10;Make progress&#45;bars a&#10;default feature" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-2358.5 340.5,-2358.5 340.5,-2305.5 571.5,-2305.5 571.5,-2358.5"/>
<text text-anchor="middle" x="456" y="-2343.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7364</text>
<text text-anchor="middle" x="456" y="-2328.3" font-family="Times,serif" font-size="14.00">Make progress&#45;bars a</text>
<text text-anchor="middle" x="456" y="-2313.3" font-family="Times,serif" font-size="14.00">default feature</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#7363&#45;&gt;ZcashFoundation/zebra#7364 -->
<g id="edge37" class="edge">
<title>ZcashFoundation/zebra#7363&#45;&gt;ZcashFoundation/zebra#7364</title>
<path fill="none" stroke="black" d="M255.69,-2332C279.95,-2332 305.65,-2332 330.25,-2332"/>
<polygon fill="black" stroke="black" points="330.35,-2335.5 340.35,-2332 330.35,-2328.5 330.35,-2335.5"/>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#77 -->
<g id="node51" class="node open">
<title>ZcashFoundation/ed25519&#45;zebra#77</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/ed25519-zebra/issues/77" xlink:title="ZcashFoundation/ed25519&#45;zebra#77&#10;Add instructions to the&#10;README for updating this&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="280,-2460 0,-2460 0,-2392 280,-2392 280,-2460"/>
<text text-anchor="middle" x="140" y="-2444.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#77</text>
<text text-anchor="middle" x="140" y="-2429.8" font-family="Times,serif" font-size="14.00">Add instructions to the</text>
<text text-anchor="middle" x="140" y="-2414.8" font-family="Times,serif" font-size="14.00">README for updating this</text>
<text text-anchor="middle" x="140" y="-2399.8" font-family="Times,serif" font-size="14.00">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#79 -->
<g id="node52" class="node closed">
<title>ZcashFoundation/ed25519&#45;zebra#79</title>
<g id="a_node52"><a xlink:href="https://github.com/ZcashFoundation/ed25519-zebra/issues/79" xlink:title="ZcashFoundation/ed25519&#45;zebra#79&#10;Tag a new &#160;ed25519&#45;zebra&#10;release" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="596,-2452.5 316,-2452.5 316,-2399.5 596,-2399.5 596,-2452.5"/>
<text text-anchor="middle" x="456" y="-2437.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#79</text>
<text text-anchor="middle" x="456" y="-2422.3" font-family="Times,serif" font-size="14.00">Tag a new &#160;ed25519&#45;zebra</text>
<text text-anchor="middle" x="456" y="-2407.3" font-family="Times,serif" font-size="14.00">release</text>
</a>
</g>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#77&#45;&gt;ZcashFoundation/ed25519&#45;zebra#79 -->
<g id="edge38" class="edge">
<title>ZcashFoundation/ed25519&#45;zebra#77&#45;&gt;ZcashFoundation/ed25519&#45;zebra#79</title>
<path fill="none" stroke="black" d="M280.1,-2426C288.49,-2426 296.96,-2426 305.4,-2426"/>
<polygon fill="black" stroke="black" points="305.67,-2429.5 315.67,-2426 305.67,-2422.5 305.67,-2429.5"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>