developers/zcash-zf-dag.html

710 lines
51 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html>
<head>
<title>Zcash zf DAG</title>
<!-- Pan/zoom SVGs -->
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
<link rel="stylesheet" href="zcash-dag.css">
<style>
@media (prefers-color-scheme: dark) {
body {
/* Material dark theme surface colour */
background-color: #121212;
}
}
</style>
</head>
<body>
<div id="dag"><svg width="871pt" height="2289pt"
viewBox="0.00 0.00 871.00 2289.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 2285)">
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2285 867,-2285 867,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#4784 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#4784</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4784" xlink:title="ZcashFoundation/zebra#4784&#10;Store only the first tree&#10;state in each series of&#10;identical tree states" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-592 24.5,-592 24.5,-524 255.5,-524 255.5,-592"/>
<text text-anchor="middle" x="140" y="-576.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4784</text>
<text text-anchor="middle" x="140" y="-561.8" font-family="Times,serif" font-size="14.00">Store only the first tree</text>
<text text-anchor="middle" x="140" y="-546.8" font-family="Times,serif" font-size="14.00">state in each series of</text>
<text text-anchor="middle" x="140" y="-531.8" font-family="Times,serif" font-size="14.00">identical tree states</text>
</a>
</g>
</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,-585 340.5,-585 340.5,-517 571.5,-517 571.5,-585"/>
<text text-anchor="middle" x="456" y="-569.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7215</text>
<text text-anchor="middle" x="456" y="-554.8" font-family="Times,serif" font-size="14.00">Document how to do in&#45;</text>
<text text-anchor="middle" x="456" y="-539.8" font-family="Times,serif" font-size="14.00">place upgrades of the</text>
<text text-anchor="middle" x="456" y="-524.8" font-family="Times,serif" font-size="14.00">state database format</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4784&#45;&gt;ZcashFoundation/zebra#7215 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#4784&#45;&gt;ZcashFoundation/zebra#7215</title>
<path fill="none" stroke="black" d="M255.69,-555.44C279.95,-554.9 305.65,-554.33 330.25,-553.78"/>
<polygon fill="black" stroke="black" points="330.43,-557.28 340.35,-553.56 330.28,-550.28 330.43,-557.28"/>
</g>
<!-- ZcashFoundation/zebra#6642 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#6642</title>
<g id="a_node11"><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" points="571.5,-686.5 340.5,-686.5 340.5,-603.5 571.5,-603.5 571.5,-686.5"/>
<text text-anchor="middle" x="456" y="-671.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6642</text>
<text text-anchor="middle" x="456" y="-656.3" font-family="Times,serif" font-size="14.00">Tracking: Update</text>
<text text-anchor="middle" x="456" y="-641.3" font-family="Times,serif" font-size="14.00">`lightwalletd` RPCs for</text>
<text text-anchor="middle" x="456" y="-626.3" font-family="Times,serif" font-size="14.00">&quot;spend before sync&quot;</text>
<text text-anchor="middle" x="456" y="-611.3" font-family="Times,serif" font-size="14.00">algorithm</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4784&#45;&gt;ZcashFoundation/zebra#6642 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#4784&#45;&gt;ZcashFoundation/zebra#6642</title>
<path fill="none" stroke="black" d="M255.69,-589.78C280.05,-596.53 305.88,-603.68 330.58,-610.53"/>
<polygon fill="black" stroke="black" points="329.78,-613.94 340.35,-613.24 331.65,-607.19 329.78,-613.94"/>
</g>
<!-- ZcashFoundation/zebra#6953 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#6953</title>
<g id="a_node12"><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,-502 24.5,-502 24.5,-434 255.5,-434 255.5,-502"/>
<text text-anchor="middle" x="140" y="-486.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6953</text>
<text text-anchor="middle" x="140" y="-471.8" font-family="Times,serif" font-size="14.00">Add note subtree indexes</text>
<text text-anchor="middle" x="140" y="-456.8" font-family="Times,serif" font-size="14.00">to the finalized and non&#45;</text>
<text text-anchor="middle" x="140" y="-441.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="edge8" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#7215</title>
<path fill="none" stroke="black" d="M255.69,-498.32C280.05,-504.76 305.88,-511.58 330.58,-518.11"/>
<polygon fill="black" stroke="black" points="329.79,-521.52 340.35,-520.7 331.58,-514.75 329.79,-521.52"/>
</g>
<!-- ZcashFoundation/zebra#6954 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#6954</title>
<g id="a_node13"><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" points="571.5,-499 340.5,-499 340.5,-431 571.5,-431 571.5,-499"/>
<text text-anchor="middle" x="456" y="-483.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6954</text>
<text text-anchor="middle" x="456" y="-468.8" font-family="Times,serif" font-size="14.00">Implement</text>
<text text-anchor="middle" x="456" y="-453.8" font-family="Times,serif" font-size="14.00">`z_getsubtreesbyindex`</text>
<text text-anchor="middle" x="456" y="-438.8" font-family="Times,serif" font-size="14.00">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#6954 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#6953&#45;&gt;ZcashFoundation/zebra#6954</title>
<path fill="none" stroke="black" d="M255.69,-466.9C279.95,-466.67 305.65,-466.43 330.25,-466.19"/>
<polygon fill="black" stroke="black" points="330.38,-469.69 340.35,-466.1 330.32,-462.69 330.38,-469.69"/>
</g>
<!-- ZcashFoundation/zebra#7233 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#7233</title>
<g id="a_node14"><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="#c2e0c6" stroke="black" points="863,-491.5 632,-491.5 632,-438.5 863,-438.5 863,-491.5"/>
<text text-anchor="middle" x="747.5" y="-476.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7233</text>
<text text-anchor="middle" x="747.5" y="-461.3" font-family="Times,serif" font-size="14.00">Publish Zebra release:</text>
<text text-anchor="middle" x="747.5" y="-446.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="edge10" class="edge">
<title>ZcashFoundation/zebra#6954&#45;&gt;ZcashFoundation/zebra#7233</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#7179 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#7179</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/7179" xlink:title="ZcashFoundation/zebra#7179&#10;add(Docker): &#160;Docs for&#10;mining with Docker" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-710.5 24.5,-710.5 24.5,-706.5 20.5,-706.5 20.5,-702.5 24.5,-702.5 24.5,-665.5 20.5,-665.5 20.5,-661.5 24.5,-661.5 24.5,-657.5 255.5,-657.5 255.5,-710.5"/>
<polyline fill="none" stroke="black" stroke-width="2" points="24.5,-706.5 28.5,-706.5 28.5,-702.5 24.5,-702.5 "/>
<polyline fill="none" stroke="black" stroke-width="2" points="24.5,-665.5 28.5,-665.5 28.5,-661.5 24.5,-661.5 "/>
<text text-anchor="middle" x="140" y="-695.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7179</text>
<text text-anchor="middle" x="140" y="-680.3" font-family="Times,serif" font-size="14.00">add(Docker): &#160;Docs for</text>
<text text-anchor="middle" x="140" y="-665.3" font-family="Times,serif" font-size="14.00">mining with Docker</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6037" xlink:title="ZcashFoundation/zebra#6037&#10;Don&#39;t return from long&#10;polling if the block&#10;template is an invalid&#10;block proposal" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-826.5 24.5,-826.5 24.5,-743.5 255.5,-743.5 255.5,-826.5"/>
<text text-anchor="middle" x="140" y="-811.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="140" y="-796.3" font-family="Times,serif" font-size="14.00">Don&#39;t return from long</text>
<text text-anchor="middle" x="140" y="-781.3" font-family="Times,serif" font-size="14.00">polling if the block</text>
<text text-anchor="middle" x="140" y="-766.3" font-family="Times,serif" font-size="14.00">template is an invalid</text>
<text text-anchor="middle" x="140" y="-751.3" font-family="Times,serif" font-size="14.00">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6047" xlink:title="ZcashFoundation/zebra#6047&#10;Verify proposals are&#10;valid after sending them&#10;to miners" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-874 340.5,-874 340.5,-806 571.5,-806 571.5,-874"/>
<text text-anchor="middle" x="456" y="-858.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="456" y="-843.8" font-family="Times,serif" font-size="14.00">Verify proposals are</text>
<text text-anchor="middle" x="456" y="-828.8" font-family="Times,serif" font-size="14.00">valid after sending them</text>
<text text-anchor="middle" x="456" y="-813.8" font-family="Times,serif" font-size="14.00">to miners</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="black" d="M255.69,-805.09C279.95,-809.34 305.65,-813.84 330.25,-818.15"/>
<polygon fill="black" stroke="black" points="329.9,-821.64 340.35,-819.92 331.1,-814.75 329.9,-821.64"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node18"><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" points="571.5,-787.5 340.5,-787.5 340.5,-704.5 571.5,-704.5 571.5,-787.5"/>
<text text-anchor="middle" x="456" y="-772.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="456" y="-757.3" font-family="Times,serif" font-size="14.00">Send the same</text>
<text text-anchor="middle" x="456" y="-742.3" font-family="Times,serif" font-size="14.00">getblocktemplate RPC</text>
<text text-anchor="middle" x="456" y="-727.3" font-family="Times,serif" font-size="14.00">response until the</text>
<text text-anchor="middle" x="456" y="-712.3" font-family="Times,serif" font-size="14.00">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="black" d="M255.69,-770.75C279.95,-767.74 305.65,-764.55 330.25,-761.49"/>
<polygon fill="black" stroke="black" points="330.86,-764.94 340.35,-760.24 330,-757.99 330.86,-764.94"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6025" xlink:title="ZcashFoundation/zebra#6025&#10;Add a manually&#45;triggered&#10;workflow for mining a&#10;block on testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-960 340.5,-960 340.5,-892 571.5,-892 571.5,-960"/>
<text text-anchor="middle" x="456" y="-944.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="456" y="-929.8" font-family="Times,serif" font-size="14.00">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="456" y="-914.8" font-family="Times,serif" font-size="14.00">workflow for mining a</text>
<text text-anchor="middle" x="456" y="-899.8" font-family="Times,serif" font-size="14.00">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6611 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#6611</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6611" xlink:title="ZcashFoundation/zebra#6611&#10;Document how to switch&#10;from Testnet to Mainnet&#10;in Docker images" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1054 24.5,-1054 24.5,-986 255.5,-986 255.5,-1054"/>
<text text-anchor="middle" x="140" y="-1038.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6611</text>
<text text-anchor="middle" x="140" y="-1023.8" font-family="Times,serif" font-size="14.00">Document how to switch</text>
<text text-anchor="middle" x="140" y="-1008.8" font-family="Times,serif" font-size="14.00">from Testnet to Mainnet</text>
<text text-anchor="middle" x="140" y="-993.8" font-family="Times,serif" font-size="14.00">in Docker images</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6159 -->
<g id="node21" class="node closed">
<title>ZcashFoundation/zebra#6159</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6159" xlink:title="ZcashFoundation/zebra#6159&#10;Documentation: Write a&#10;blog post to share how we&#10;used Zebra and s&#45;nomp to&#10;mine on testnet" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-1061.5 340.5,-1061.5 340.5,-978.5 571.5,-978.5 571.5,-1061.5"/>
<text text-anchor="middle" x="456" y="-1046.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6159</text>
<text text-anchor="middle" x="456" y="-1031.3" font-family="Times,serif" font-size="14.00">Documentation: Write a</text>
<text text-anchor="middle" x="456" y="-1016.3" font-family="Times,serif" font-size="14.00">blog post to share how we</text>
<text text-anchor="middle" x="456" y="-1001.3" font-family="Times,serif" font-size="14.00">used Zebra and s&#45;nomp to</text>
<text text-anchor="middle" x="456" y="-986.3" font-family="Times,serif" font-size="14.00">mine on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6611&#45;&gt;ZcashFoundation/zebra#6159 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#6611&#45;&gt;ZcashFoundation/zebra#6159</title>
<path fill="none" stroke="black" d="M255.69,-1020C279.95,-1020 305.65,-1020 330.25,-1020"/>
<polygon fill="black" stroke="black" points="330.35,-1023.5 340.35,-1020 330.35,-1016.5 330.35,-1023.5"/>
</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,-1140 24.5,-1140 24.5,-1072 255.5,-1072 255.5,-1140"/>
<text text-anchor="middle" x="140" y="-1124.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5911</text>
<text text-anchor="middle" x="140" y="-1109.8" font-family="Times,serif" font-size="14.00">Store the serialized</text>
<text text-anchor="middle" x="140" y="-1094.8" font-family="Times,serif" font-size="14.00">block size in the</text>
<text text-anchor="middle" x="140" y="-1079.8" font-family="Times,serif" font-size="14.00">database</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#6118</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6118" xlink:title="ZcashFoundation/zebra#6118&#10;Create a Docker images&#10;and docker&#45;compose for&#10;mining with Zebra on&#10;Testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-967.5 24.5,-967.5 24.5,-884.5 255.5,-884.5 255.5,-967.5"/>
<text text-anchor="middle" x="140" y="-952.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6118</text>
<text text-anchor="middle" x="140" y="-937.3" font-family="Times,serif" font-size="14.00">Create a Docker images</text>
<text text-anchor="middle" x="140" y="-922.3" font-family="Times,serif" font-size="14.00">and docker&#45;compose for</text>
<text text-anchor="middle" x="140" y="-907.3" font-family="Times,serif" font-size="14.00">mining with Zebra on</text>
<text text-anchor="middle" x="140" y="-892.3" font-family="Times,serif" font-size="14.00">Testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="black" d="M255.69,-926C279.95,-926 305.65,-926 330.25,-926"/>
<polygon fill="black" stroke="black" points="330.35,-929.5 340.35,-926 330.35,-922.5 330.35,-929.5"/>
</g>
<!-- ZcashFoundation/zebra#7266 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#7266</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/7266" xlink:title="ZcashFoundation/zebra#7266&#10;change(state): &#160;Insert&#10;only the first tree in&#10;each series of identical&#10;trees into finalized&#10;state" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1256 24.5,-1256 24.5,-1252 20.5,-1252 20.5,-1248 24.5,-1248 24.5,-1166 20.5,-1166 20.5,-1162 24.5,-1162 24.5,-1158 255.5,-1158 255.5,-1256"/>
<polyline fill="none" stroke="black" stroke-width="2" points="24.5,-1252 28.5,-1252 28.5,-1248 24.5,-1248 "/>
<polyline fill="none" stroke="black" stroke-width="2" points="24.5,-1166 28.5,-1166 28.5,-1162 24.5,-1162 "/>
<text text-anchor="middle" x="140" y="-1240.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#7266</text>
<text text-anchor="middle" x="140" y="-1225.8" font-family="Times,serif" font-size="14.00">change(state): &#160;Insert</text>
<text text-anchor="middle" x="140" y="-1210.8" font-family="Times,serif" font-size="14.00">only the first tree in</text>
<text text-anchor="middle" x="140" y="-1195.8" font-family="Times,serif" font-size="14.00">each series of identical</text>
<text text-anchor="middle" x="140" y="-1180.8" font-family="Times,serif" font-size="14.00">trees into finalized</text>
<text text-anchor="middle" x="140" y="-1165.8" font-family="Times,serif" font-size="14.00">state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node25" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4841" xlink:title="ZcashFoundation/zebra#4841&#10;Improve note commitment&#10;tree append performance" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-1393.5 340.5,-1393.5 340.5,-1340.5 571.5,-1340.5 571.5,-1393.5"/>
<text text-anchor="middle" x="456" y="-1378.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="456" y="-1363.3" font-family="Times,serif" font-size="14.00">Improve note commitment</text>
<text text-anchor="middle" x="456" y="-1348.3" font-family="Times,serif" font-size="14.00">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#2908</title>
<g id="a_node26"><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,-1575 24.5,-1575 24.5,-1477 255.5,-1477 255.5,-1575"/>
<text text-anchor="middle" x="140" y="-1559.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#2908</text>
<text text-anchor="middle" x="140" y="-1544.8" font-family="Times,serif" font-size="14.00">Improve</text>
<text text-anchor="middle" x="140" y="-1529.8" font-family="Times,serif" font-size="14.00">VerifyBlockError::Commit</text>
<text text-anchor="middle" x="140" y="-1514.8" font-family="Times,serif" font-size="14.00">typing, so we don&#39;t</text>
<text text-anchor="middle" x="140" y="-1499.8" font-family="Times,serif" font-size="14.00">accidentally break syncer</text>
<text text-anchor="middle" x="140" y="-1484.8" font-family="Times,serif" font-size="14.00">error handling</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5487" xlink:title="ZcashFoundation/zebra#5487&#10;Return detailed errors&#10;from the `submitblock`&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-1560 340.5,-1560 340.5,-1492 571.5,-1492 571.5,-1560"/>
<text text-anchor="middle" x="456" y="-1544.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="456" y="-1529.8" font-family="Times,serif" font-size="14.00">Return detailed errors</text>
<text text-anchor="middle" x="456" y="-1514.8" font-family="Times,serif" font-size="14.00">from the `submitblock`</text>
<text text-anchor="middle" x="456" y="-1499.8" font-family="Times,serif" font-size="14.00">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908&#45;&gt;ZcashFoundation/zebra#5487 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#2908&#45;&gt;ZcashFoundation/zebra#5487</title>
<path fill="none" stroke="black" d="M255.69,-1526C279.95,-1526 305.65,-1526 330.25,-1526"/>
<polygon fill="black" stroke="black" points="330.35,-1529.5 340.35,-1526 330.35,-1522.5 330.35,-1529.5"/>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5709" xlink:title="ZcashFoundation/zebra#5709&#10;Fix repeated block&#10;timeouts during initial&#10;sync" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1661 24.5,-1661 24.5,-1593 255.5,-1593 255.5,-1661"/>
<text text-anchor="middle" x="140" y="-1645.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="140" y="-1630.8" font-family="Times,serif" font-size="14.00">Fix repeated block</text>
<text text-anchor="middle" x="140" y="-1615.8" font-family="Times,serif" font-size="14.00">timeouts during initial</text>
<text text-anchor="middle" x="140" y="-1600.8" font-family="Times,serif" font-size="14.00">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node29" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5425" xlink:title="ZcashFoundation/zebra#5425&#10;Parallelise note&#10;commitment tree point&#10;conversions" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-1661 340.5,-1661 340.5,-1593 571.5,-1593 571.5,-1661"/>
<text text-anchor="middle" x="456" y="-1645.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="456" y="-1630.8" font-family="Times,serif" font-size="14.00">Parallelise note</text>
<text text-anchor="middle" x="456" y="-1615.8" font-family="Times,serif" font-size="14.00">commitment tree point</text>
<text text-anchor="middle" x="456" y="-1600.8" font-family="Times,serif" font-size="14.00">conversions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="black" d="M255.69,-1627C279.95,-1627 305.65,-1627 330.25,-1627"/>
<polygon fill="black" stroke="black" points="330.35,-1630.5 340.35,-1627 330.35,-1623.5 330.35,-1630.5"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4774" xlink:title="ZcashFoundation/zebra#4774&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Orchard&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1458.5 24.5,-1458.5 24.5,-1375.5 255.5,-1375.5 255.5,-1458.5"/>
<text text-anchor="middle" x="140" y="-1443.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="140" y="-1428.3" font-family="Times,serif" font-size="14.00">Add an NU5 block test</text>
<text text-anchor="middle" x="140" y="-1413.3" font-family="Times,serif" font-size="14.00">vector that contains many</text>
<text text-anchor="middle" x="140" y="-1398.3" font-family="Times,serif" font-size="14.00">shielded Orchard</text>
<text text-anchor="middle" x="140" y="-1383.3" font-family="Times,serif" font-size="14.00">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="black" d="M255.69,-1398.7C279.95,-1394.9 305.65,-1390.8 330.25,-1386.9"/>
<polygon fill="black" stroke="black" points="331.02,-1390.32 340.35,-1385.3 329.93,-1383.41 331.02,-1390.32"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4775" xlink:title="ZcashFoundation/zebra#4775&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Sapling&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1357.5 24.5,-1357.5 24.5,-1274.5 255.5,-1274.5 255.5,-1357.5"/>
<text text-anchor="middle" x="140" y="-1342.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="140" y="-1327.3" font-family="Times,serif" font-size="14.00">Add an NU5 block test</text>
<text text-anchor="middle" x="140" y="-1312.3" font-family="Times,serif" font-size="14.00">vector that contains many</text>
<text text-anchor="middle" x="140" y="-1297.3" font-family="Times,serif" font-size="14.00">shielded Sapling</text>
<text text-anchor="middle" x="140" y="-1282.3" font-family="Times,serif" font-size="14.00">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="black" d="M255.69,-1334.6C279.95,-1338.6 305.65,-1342.7 330.25,-1346.7"/>
<polygon fill="black" stroke="black" points="329.91,-1350.19 340.35,-1348.4 331.07,-1343.29 329.91,-1350.19"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node32"><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,-1762.5 24.5,-1762.5 24.5,-1679.5 255.5,-1679.5 255.5,-1762.5"/>
<text text-anchor="middle" x="140" y="-1747.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="140" y="-1732.3" font-family="Times,serif" font-size="14.00">benchmarks: create a</text>
<text text-anchor="middle" x="140" y="-1717.3" font-family="Times,serif" font-size="14.00">ticket if zebrad mainnet</text>
<text text-anchor="middle" x="140" y="-1702.3" font-family="Times,serif" font-size="14.00">sync time increases</text>
<text text-anchor="middle" x="140" y="-1687.3" font-family="Times,serif" font-size="14.00">significantly</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node33"><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,-1863.5 24.5,-1863.5 24.5,-1780.5 255.5,-1780.5 255.5,-1863.5"/>
<text text-anchor="middle" x="140" y="-1848.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="140" y="-1833.3" font-family="Times,serif" font-size="14.00">Start disconnecting from</text>
<text text-anchor="middle" x="140" y="-1818.3" font-family="Times,serif" font-size="14.00">outdated peers before</text>
<text text-anchor="middle" x="140" y="-1803.3" font-family="Times,serif" font-size="14.00">network upgrade</text>
<text text-anchor="middle" x="140" y="-1788.3" font-family="Times,serif" font-size="14.00">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node34" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node34"><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,-1856 340.5,-1856 340.5,-1788 571.5,-1788 571.5,-1856"/>
<text text-anchor="middle" x="456" y="-1840.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="456" y="-1825.8" font-family="Times,serif" font-size="14.00">Prefer faster peers, but</text>
<text text-anchor="middle" x="456" y="-1810.8" font-family="Times,serif" font-size="14.00">if all peers are slow,</text>
<text text-anchor="middle" x="456" y="-1795.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="edge19" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="black" d="M255.69,-1822C279.95,-1822 305.65,-1822 330.25,-1822"/>
<polygon fill="black" stroke="black" points="330.35,-1825.5 340.35,-1822 330.35,-1818.5 330.35,-1825.5"/>
</g>
<!-- ZcashFoundation/zebra#6388 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#6388</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6388" xlink:title="ZcashFoundation/zebra#6388&#10;can_fork_chain_at()&#10;should ignore blocks&#10;below the finalized tip" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2014 24.5,-2014 24.5,-1946 255.5,-1946 255.5,-2014"/>
<text text-anchor="middle" x="140" y="-1998.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6388</text>
<text text-anchor="middle" x="140" y="-1983.8" font-family="Times,serif" font-size="14.00">can_fork_chain_at()</text>
<text text-anchor="middle" x="140" y="-1968.8" font-family="Times,serif" font-size="14.00">should ignore blocks</text>
<text text-anchor="middle" x="140" y="-1953.8" font-family="Times,serif" font-size="14.00">below the finalized tip</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6681 -->
<g id="node36" class="node closed">
<title>ZcashFoundation/zebra#6681</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6681" xlink:title="ZcashFoundation/zebra#6681&#10;Update documentation to&#10;clarify terminology&#10;around block verification" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="863,-2005 632,-2005 632,-1937 863,-1937 863,-2005"/>
<text text-anchor="middle" x="747.5" y="-1989.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6681</text>
<text text-anchor="middle" x="747.5" y="-1974.8" font-family="Times,serif" font-size="14.00">Update documentation to</text>
<text text-anchor="middle" x="747.5" y="-1959.8" font-family="Times,serif" font-size="14.00">clarify terminology</text>
<text text-anchor="middle" x="747.5" y="-1944.8" font-family="Times,serif" font-size="14.00">around block verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#6681 -->
<g id="edge20" class="edge">
<title>ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#6681</title>
<path fill="none" stroke="black" d="M255.58,-2012.3C275.57,-2016.8 296.28,-2020.6 316,-2023 439.54,-2038 473.27,-2043.6 596,-2023 615.24,-2019.8 635.31,-2014.4 654.29,-2008.2"/>
<polygon fill="black" stroke="black" points="655.39,-2011.52 663.81,-2005.1 653.22,-2004.87 655.39,-2011.52"/>
</g>
<!-- ZcashFoundation/zebra#5125 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#5125</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5125" xlink:title="ZcashFoundation/zebra#5125&#10;Avoid temporary failures&#10;verifying the first non&#45;&#10;finalized block" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="571.5,-2014 340.5,-2014 340.5,-1946 571.5,-1946 571.5,-2014"/>
<text text-anchor="middle" x="456" y="-1998.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5125</text>
<text text-anchor="middle" x="456" y="-1983.8" font-family="Times,serif" font-size="14.00">Avoid temporary failures</text>
<text text-anchor="middle" x="456" y="-1968.8" font-family="Times,serif" font-size="14.00">verifying the first non&#45;</text>
<text text-anchor="middle" x="456" y="-1953.8" font-family="Times,serif" font-size="14.00">finalized block</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#5125 -->
<g id="edge21" class="edge">
<title>ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#5125</title>
<path fill="none" stroke="black" d="M255.69,-1980C279.95,-1980 305.65,-1980 330.25,-1980"/>
<polygon fill="black" stroke="black" points="330.35,-1983.5 340.35,-1980 330.35,-1976.5 330.35,-1983.5"/>
</g>
<!-- ZcashFoundation/zebra#6793 -->
<g id="node38" class="node closed">
<title>ZcashFoundation/zebra#6793</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6793" xlink:title="ZcashFoundation/zebra#6793&#10;Do the state renames that&#10;were not done in #6762" target="_blank">
<polygon fill="#fad8c7" stroke="black" points="571.5,-1927.5 340.5,-1927.5 340.5,-1874.5 571.5,-1874.5 571.5,-1927.5"/>
<text text-anchor="middle" x="456" y="-1912.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6793</text>
<text text-anchor="middle" x="456" y="-1897.3" font-family="Times,serif" font-size="14.00">Do the state renames that</text>
<text text-anchor="middle" x="456" y="-1882.3" font-family="Times,serif" font-size="14.00">were not done in #6762</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#6793 -->
<g id="edge22" class="edge">
<title>ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#6793</title>
<path fill="none" stroke="black" d="M255.69,-1951.1C283,-1944.3 312.15,-1936.9 339.49,-1930.1"/>
<polygon fill="black" stroke="black" points="340.68,-1933.41 349.48,-1927.5 338.92,-1926.63 340.68,-1933.41"/>
</g>
<!-- ZcashFoundation/zebra#6793&#45;&gt;ZcashFoundation/zebra#6681 -->
<g id="edge23" class="edge">
<title>ZcashFoundation/zebra#6793&#45;&gt;ZcashFoundation/zebra#6681</title>
<path fill="none" stroke="black" d="M566.86,-1927.6C584.89,-1931.9 603.69,-1936.5 622.05,-1940.9"/>
<polygon fill="black" stroke="black" points="621.36,-1944.33 631.9,-1943.3 623.01,-1937.53 621.36,-1944.33"/>
</g>
<!-- ZcashFoundation/zebra#6812 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#6812</title>
<g id="a_node39"><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,-2123 24.5,-2123 24.5,-2055 255.5,-2055 255.5,-2123"/>
<text text-anchor="middle" x="140" y="-2107.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6812</text>
<text text-anchor="middle" x="140" y="-2092.8" font-family="Times,serif" font-size="14.00">Process abort in state</text>
<text text-anchor="middle" x="140" y="-2077.8" font-family="Times,serif" font-size="14.00">tests on some macOS</text>
<text text-anchor="middle" x="140" y="-2062.8" font-family="Times,serif" font-size="14.00">versions with Rust 1.70</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6824 -->
<g id="node40" class="node closed">
<title>ZcashFoundation/zebra#6824</title>
<g id="a_node40"><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,-2108 340.5,-2108 340.5,-2070 571.5,-2070 571.5,-2108"/>
<text text-anchor="middle" x="456" y="-2092.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6824</text>
<text text-anchor="middle" x="456" y="-2077.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="edge24" class="edge">
<title>ZcashFoundation/zebra#6812&#45;&gt;ZcashFoundation/zebra#6824</title>
<path fill="none" stroke="black" d="M255.69,-2089C279.95,-2089 305.65,-2089 330.25,-2089"/>
<polygon fill="black" stroke="black" points="330.35,-2092.5 340.35,-2089 330.35,-2085.5 330.35,-2092.5"/>
</g>
<!-- ZcashFoundation/zebra#6952 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#6952</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6952" xlink:title="ZcashFoundation/zebra#6952&#10;Add note tree size fields&#10;to the `getblock` RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2194.5 24.5,-2194.5 24.5,-2141.5 255.5,-2141.5 255.5,-2194.5"/>
<text text-anchor="middle" x="140" y="-2179.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6952</text>
<text text-anchor="middle" x="140" y="-2164.3" font-family="Times,serif" font-size="14.00">Add note tree size fields</text>
<text text-anchor="middle" x="140" y="-2149.3" font-family="Times,serif" font-size="14.00">to the `getblock` RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#77 -->
<g id="node42" class="node open">
<title>ZcashFoundation/ed25519&#45;zebra#77</title>
<g id="a_node42"><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,-2281 0,-2281 0,-2213 280,-2213 280,-2281"/>
<text text-anchor="middle" x="140" y="-2265.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#77</text>
<text text-anchor="middle" x="140" y="-2250.8" font-family="Times,serif" font-size="14.00">Add instructions to the</text>
<text text-anchor="middle" x="140" y="-2235.8" font-family="Times,serif" font-size="14.00">README for updating this</text>
<text text-anchor="middle" x="140" y="-2220.8" font-family="Times,serif" font-size="14.00">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#79 -->
<g id="node43" class="node closed">
<title>ZcashFoundation/ed25519&#45;zebra#79</title>
<g id="a_node43"><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,-2273.5 316,-2273.5 316,-2220.5 596,-2220.5 596,-2273.5"/>
<text text-anchor="middle" x="456" y="-2258.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#79</text>
<text text-anchor="middle" x="456" y="-2243.3" font-family="Times,serif" font-size="14.00">Tag a new &#160;ed25519&#45;zebra</text>
<text text-anchor="middle" x="456" y="-2228.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="edge25" class="edge">
<title>ZcashFoundation/ed25519&#45;zebra#77&#45;&gt;ZcashFoundation/ed25519&#45;zebra#79</title>
<path fill="none" stroke="black" d="M280.1,-2247C288.49,-2247 296.96,-2247 305.4,-2247"/>
<polygon fill="black" stroke="black" points="305.67,-2250.5 315.67,-2247 305.67,-2243.5 305.67,-2250.5"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>