developers/zcash-zf-dag.html

707 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="878pt" height="2590pt"
viewBox="0.00 0.00 878.00 2590.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 2586)">
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2586 874,-2586 874,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="blue" points="16.5,-555 16.5,-922 582.5,-922 582.5,-555 16.5,-555"/>
<text text-anchor="middle" x="299.5" y="-906.8" font-family="Times,serif" font-size="14.00">Epic: Zebra Stable Release</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="blue" points="315.5,-78 315.5,-385 603.5,-385 603.5,-78 315.5,-78"/>
<text text-anchor="middle" x="459.5" y="-369.8" font-family="Times,serif" font-size="14.00">Epic: Improvements from Zebra Audit</text>
</g>
<!-- ZcashFoundation/zebra#1956 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#1956</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1956" xlink:title="ZcashFoundation/zebra#1956&#10;Zebra should store a&#10;persistent list of recent&#10;successful peers" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-891 24.5,-891 24.5,-823 255.5,-823 255.5,-891"/>
<text text-anchor="middle" x="140" y="-875.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#1956</text>
<text text-anchor="middle" x="140" y="-860.8" font-family="Times,serif" font-size="14.00">Zebra should store a</text>
<text text-anchor="middle" x="140" y="-845.8" font-family="Times,serif" font-size="14.00">persistent list of recent</text>
<text text-anchor="middle" x="140" y="-830.8" font-family="Times,serif" font-size="14.00">successful peers</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5502" xlink:title="ZcashFoundation/zebra#5502&#10;Migrate to the latest&#10;version of Abscissa (0.7&#10;or later)" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-733 24.5,-733 24.5,-665 255.5,-665 255.5,-733"/>
<text text-anchor="middle" x="140" y="-717.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="140" y="-702.8" font-family="Times,serif" font-size="14.00">Migrate to the latest</text>
<text text-anchor="middle" x="140" y="-687.8" font-family="Times,serif" font-size="14.00">version of Abscissa (0.7</text>
<text text-anchor="middle" x="140" y="-672.8" font-family="Times,serif" font-size="14.00">or later)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5624" xlink:title="ZcashFoundation/zebra#5624&#10;zebrad: command&#45;line help&#10;info is hard to access&#10;and understand" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="574.5,-547 343.5,-547 343.5,-479 574.5,-479 574.5,-547"/>
<text text-anchor="middle" x="459" y="-531.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="459" y="-516.8" font-family="Times,serif" font-size="14.00">zebrad: command&#45;line help</text>
<text text-anchor="middle" x="459" y="-501.8" font-family="Times,serif" font-size="14.00">info is hard to access</text>
<text text-anchor="middle" x="459" y="-486.8" font-family="Times,serif" font-size="14.00">and understand</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="black" d="M255.76,-673.7C264.6,-668.8 272.85,-662.96 280,-656 315.28,-621.62 279.55,-584.68 315.5,-551 321.22,-545.65 327.6,-541.03 334.41,-537.05"/>
<polygon fill="black" stroke="black" points="336.07,-540.13 343.25,-532.34 332.78,-533.95 336.07,-540.13"/>
</g>
<!-- ZcashFoundation/zebra#5707 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#5707</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5707" xlink:title="ZcashFoundation/zebra#5707&#10;Improve consistency of&#10;usage information printed&#10;by zebrad `help` command" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="574.5,-461 343.5,-461 343.5,-393 574.5,-393 574.5,-461"/>
<text text-anchor="middle" x="459" y="-445.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5707</text>
<text text-anchor="middle" x="459" y="-430.8" font-family="Times,serif" font-size="14.00">Improve consistency of</text>
<text text-anchor="middle" x="459" y="-415.8" font-family="Times,serif" font-size="14.00">usage information printed</text>
<text text-anchor="middle" x="459" y="-400.8" font-family="Times,serif" font-size="14.00">by zebrad `help` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5707 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5707</title>
<path fill="none" stroke="black" d="M255.51,-675.48C264.64,-670.22 273.01,-663.81 280,-656 336.1,-593.27 259.18,-532.54 315.5,-470 321.03,-463.86 327.41,-458.58 334.33,-454.04"/>
<polygon fill="black" stroke="black" points="336.54,-456.8 343.36,-448.69 332.97,-450.78 336.54,-456.8"/>
</g>
<!-- ZcashFoundation/zebra#6202 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#6202</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6202" xlink:title="ZcashFoundation/zebra#6202&#10;Rename `tower&#45;batch`&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-804.5 24.5,-804.5 24.5,-751.5 255.5,-751.5 255.5,-804.5"/>
<text text-anchor="middle" x="140" y="-789.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6202</text>
<text text-anchor="middle" x="140" y="-774.3" font-family="Times,serif" font-size="14.00">Rename `tower&#45;batch`</text>
<text text-anchor="middle" x="140" y="-759.3" font-family="Times,serif" font-size="14.00">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6149 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#6149</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6149" xlink:title="ZcashFoundation/zebra#6149&#10;Publish zebra crates to&#10;crates.io" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="574.5,-804.5 343.5,-804.5 343.5,-751.5 574.5,-751.5 574.5,-804.5"/>
<text text-anchor="middle" x="459" y="-789.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6149</text>
<text text-anchor="middle" x="459" y="-774.3" font-family="Times,serif" font-size="14.00">Publish zebra crates to</text>
<text text-anchor="middle" x="459" y="-759.3" font-family="Times,serif" font-size="14.00">crates.io</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6202&#45;&gt;ZcashFoundation/zebra#6149 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#6202&#45;&gt;ZcashFoundation/zebra#6149</title>
<path fill="none" stroke="black" d="M255.89,-778C281.08,-778 307.85,-778 333.4,-778"/>
<polygon fill="black" stroke="black" points="333.5,-781.5 343.5,-778 333.5,-774.5 333.5,-781.5"/>
</g>
<!-- ZcashFoundation/zebra#6680 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#6680</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6680" xlink:title="ZcashFoundation/zebra#6680&#10;Renames to address&#10;confusion in zebra&#39;s&#10;handling of finalized&#10;state" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-646.5 24.5,-646.5 24.5,-563.5 255.5,-563.5 255.5,-646.5"/>
<text text-anchor="middle" x="140" y="-631.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6680</text>
<text text-anchor="middle" x="140" y="-616.3" font-family="Times,serif" font-size="14.00">Renames to address</text>
<text text-anchor="middle" x="140" y="-601.3" font-family="Times,serif" font-size="14.00">confusion in zebra&#39;s</text>
<text text-anchor="middle" x="140" y="-586.3" font-family="Times,serif" font-size="14.00">handling of finalized</text>
<text text-anchor="middle" x="140" y="-571.3" font-family="Times,serif" font-size="14.00">state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6681 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#6681</title>
<g id="a_node6"><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="#c2e0c6" stroke="black" points="574.5,-354 343.5,-354 343.5,-286 574.5,-286 574.5,-354"/>
<text text-anchor="middle" x="459" y="-338.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6681</text>
<text text-anchor="middle" x="459" y="-323.8" font-family="Times,serif" font-size="14.00">Update documentation to</text>
<text text-anchor="middle" x="459" y="-308.8" font-family="Times,serif" font-size="14.00">clarify terminology</text>
<text text-anchor="middle" x="459" y="-293.8" font-family="Times,serif" font-size="14.00">around block verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6680&#45;&gt;ZcashFoundation/zebra#6681 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#6680&#45;&gt;ZcashFoundation/zebra#6681</title>
<path fill="none" stroke="black" d="M165.19,-563.38C195.17,-514.84 250.35,-434.8 315.5,-384 327.61,-374.56 341.32,-366.17 355.35,-358.82"/>
<polygon fill="black" stroke="black" points="357.26,-361.78 364.6,-354.14 354.1,-355.53 357.26,-361.78"/>
</g>
<!-- ZcashFoundation/zebra#6388 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#6388</title>
<g id="a_node12"><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" points="574.5,-68 343.5,-68 343.5,0 574.5,0 574.5,-68"/>
<text text-anchor="middle" x="459" y="-52.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6388</text>
<text text-anchor="middle" x="459" y="-37.8" font-family="Times,serif" font-size="14.00">can_fork_chain_at()</text>
<text text-anchor="middle" x="459" y="-22.8" font-family="Times,serif" font-size="14.00">should ignore blocks</text>
<text text-anchor="middle" x="459" y="-7.8" font-family="Times,serif" font-size="14.00">below the finalized tip</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6680&#45;&gt;ZcashFoundation/zebra#6388 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#6680&#45;&gt;ZcashFoundation/zebra#6388</title>
<path fill="none" stroke="black" d="M142.06,-563.29C146.91,-463.66 173.36,-210.04 315.5,-74 321.24,-68.5 327.68,-63.75 334.56,-59.64"/>
<polygon fill="black" stroke="black" points="336.38,-62.64 343.49,-54.78 333.03,-56.49 336.38,-62.64"/>
</g>
<!-- ZcashFoundation/zebra#6673 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#6673</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6673" xlink:title="ZcashFoundation/zebra#6673&#10;Outdated Documentation in&#10;`zebra&#45;state`" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="574.5,-267.5 343.5,-267.5 343.5,-214.5 574.5,-214.5 574.5,-267.5"/>
<text text-anchor="middle" x="459" y="-252.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6673</text>
<text text-anchor="middle" x="459" y="-237.3" font-family="Times,serif" font-size="14.00">Outdated Documentation in</text>
<text text-anchor="middle" x="459" y="-222.3" font-family="Times,serif" font-size="14.00">`zebra&#45;state`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6675 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#6675</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6675" xlink:title="ZcashFoundation/zebra#6675&#10;Notes on Peer Sourcing" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="574.5,-196 343.5,-196 343.5,-158 574.5,-158 574.5,-196"/>
<text text-anchor="middle" x="459" y="-180.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6675</text>
<text text-anchor="middle" x="459" y="-165.8" font-family="Times,serif" font-size="14.00">Notes on Peer Sourcing</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6281 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#6281</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6281" xlink:title="ZcashFoundation/zebra#6281&#10;Tracking: TODOs with&#10;closed tasks" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="574.5,-139.5 343.5,-139.5 343.5,-86.5 574.5,-86.5 574.5,-139.5"/>
<text text-anchor="middle" x="459" y="-124.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6281</text>
<text text-anchor="middle" x="459" y="-109.3" font-family="Times,serif" font-size="14.00">Tracking: TODOs with</text>
<text text-anchor="middle" x="459" y="-94.3" font-family="Times,serif" font-size="14.00">closed tasks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5125 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#5125</title>
<g id="a_node13"><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="870,-68 639,-68 639,0 870,0 870,-68"/>
<text text-anchor="middle" x="754.5" y="-52.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5125</text>
<text text-anchor="middle" x="754.5" y="-37.8" font-family="Times,serif" font-size="14.00">Avoid temporary failures</text>
<text text-anchor="middle" x="754.5" y="-22.8" font-family="Times,serif" font-size="14.00">verifying the first non&#45;</text>
<text text-anchor="middle" x="754.5" y="-7.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="edge6" class="edge">
<title>ZcashFoundation/zebra#6388&#45;&gt;ZcashFoundation/zebra#5125</title>
<path fill="none" stroke="black" d="M574.74,-34C592.34,-34 610.59,-34 628.41,-34"/>
<polygon fill="black" stroke="black" points="628.84,-37.5 638.84,-34 628.84,-30.5 628.84,-37.5"/>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node14"><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" stroke-width="2" points="255.5,-983.5 24.5,-983.5 24.5,-930.5 255.5,-930.5 255.5,-983.5"/>
<text text-anchor="middle" x="140" y="-968.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="140" y="-953.3" font-family="Times,serif" font-size="14.00">Add metrics for chain</text>
<text text-anchor="middle" x="140" y="-938.3" font-family="Times,serif" font-size="14.00">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node15"><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,-1070 24.5,-1070 24.5,-1002 255.5,-1002 255.5,-1070"/>
<text text-anchor="middle" x="140" y="-1054.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="140" y="-1039.8" font-family="Times,serif" font-size="14.00">Support shielded coinbase</text>
<text text-anchor="middle" x="140" y="-1024.8" font-family="Times,serif" font-size="14.00">in `getblocktemplate` for</text>
<text text-anchor="middle" x="140" y="-1009.8" font-family="Times,serif" font-size="14.00">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5929 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#5929</title>
<g id="a_node16"><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="574.5,-1070 343.5,-1070 343.5,-1002 574.5,-1002 574.5,-1070"/>
<text text-anchor="middle" x="459" y="-1054.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5929</text>
<text text-anchor="middle" x="459" y="-1039.8" font-family="Times,serif" font-size="14.00">Support shielded coinbase</text>
<text text-anchor="middle" x="459" y="-1024.8" font-family="Times,serif" font-size="14.00">in `getblocktemplate` for</text>
<text text-anchor="middle" x="459" y="-1009.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="edge7" class="edge">
<title>ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="black" d="M255.89,-1036C281.08,-1036 307.85,-1036 333.4,-1036"/>
<polygon fill="black" stroke="black" points="333.5,-1039.5 343.5,-1036 333.5,-1032.5 333.5,-1039.5"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1141.5 24.5,-1141.5 24.5,-1088.5 255.5,-1088.5 255.5,-1141.5"/>
<text text-anchor="middle" x="140" y="-1126.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="140" y="-1111.3" font-family="Times,serif" font-size="14.00">Tracking: Questions for</text>
<text text-anchor="middle" x="140" y="-1096.3" font-family="Times,serif" font-size="14.00">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1615" xlink:title="ZcashFoundation/zebra#1615&#10;Zebra release candidate&#10;binaries should be linked&#10;from ZFND website" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1228 24.5,-1228 24.5,-1160 255.5,-1160 255.5,-1228"/>
<text text-anchor="middle" x="140" y="-1212.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="140" y="-1197.8" font-family="Times,serif" font-size="14.00">Zebra release candidate</text>
<text text-anchor="middle" x="140" y="-1182.8" font-family="Times,serif" font-size="14.00">binaries should be linked</text>
<text text-anchor="middle" x="140" y="-1167.8" font-family="Times,serif" font-size="14.00">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node19"><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,-1329.5 24.5,-1329.5 24.5,-1246.5 255.5,-1246.5 255.5,-1329.5"/>
<text text-anchor="middle" x="140" y="-1314.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="140" y="-1299.3" font-family="Times,serif" font-size="14.00">Don&#39;t return from long</text>
<text text-anchor="middle" x="140" y="-1284.3" font-family="Times,serif" font-size="14.00">polling if the block</text>
<text text-anchor="middle" x="140" y="-1269.3" font-family="Times,serif" font-size="14.00">template is an invalid</text>
<text text-anchor="middle" x="140" y="-1254.3" font-family="Times,serif" font-size="14.00">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node20"><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="574.5,-1329 343.5,-1329 343.5,-1261 574.5,-1261 574.5,-1329"/>
<text text-anchor="middle" x="459" y="-1313.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="459" y="-1298.8" font-family="Times,serif" font-size="14.00">Verify proposals are</text>
<text text-anchor="middle" x="459" y="-1283.8" font-family="Times,serif" font-size="14.00">valid after sending them</text>
<text text-anchor="middle" x="459" y="-1268.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="edge8" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="black" d="M255.89,-1290.5C281.08,-1291.1 307.85,-1291.7 333.4,-1292.2"/>
<polygon fill="black" stroke="black" points="333.4,-1295.7 343.5,-1292.5 333.61,-1288.7 333.4,-1295.7"/>
</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" points="574.5,-1242.5 343.5,-1242.5 343.5,-1159.5 574.5,-1159.5 574.5,-1242.5"/>
<text text-anchor="middle" x="459" y="-1227.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="459" y="-1212.3" font-family="Times,serif" font-size="14.00">Send the same</text>
<text text-anchor="middle" x="459" y="-1197.3" font-family="Times,serif" font-size="14.00">getblocktemplate RPC</text>
<text text-anchor="middle" x="459" y="-1182.3" font-family="Times,serif" font-size="14.00">response until the</text>
<text text-anchor="middle" x="459" y="-1167.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="edge9" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="black" d="M255.89,-1256.5C281.19,-1249.5 308.09,-1242.1 333.74,-1235.1"/>
<polygon fill="black" stroke="black" points="334.8,-1238.44 343.5,-1232.4 332.93,-1231.69 334.8,-1238.44"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node22"><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="574.5,-1423 343.5,-1423 343.5,-1355 574.5,-1355 574.5,-1423"/>
<text text-anchor="middle" x="459" y="-1407.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="459" y="-1392.8" font-family="Times,serif" font-size="14.00">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="459" y="-1377.8" font-family="Times,serif" font-size="14.00">workflow for mining a</text>
<text text-anchor="middle" x="459" y="-1362.8" font-family="Times,serif" font-size="14.00">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6081 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#6081</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6081" xlink:title="ZcashFoundation/zebra#6081&#10;Implement missing mining&#10;status RPCs or fields" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1501.5 24.5,-1501.5 24.5,-1448.5 255.5,-1448.5 255.5,-1501.5"/>
<text text-anchor="middle" x="140" y="-1486.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6081</text>
<text text-anchor="middle" x="140" y="-1471.3" font-family="Times,serif" font-size="14.00">Implement missing mining</text>
<text text-anchor="middle" x="140" y="-1456.3" font-family="Times,serif" font-size="14.00">status RPCs or fields</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5911 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#5911</title>
<g id="a_node24"><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,-1588 24.5,-1588 24.5,-1520 255.5,-1520 255.5,-1588"/>
<text text-anchor="middle" x="140" y="-1572.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5911</text>
<text text-anchor="middle" x="140" y="-1557.8" font-family="Times,serif" font-size="14.00">Store the serialized</text>
<text text-anchor="middle" x="140" y="-1542.8" font-family="Times,serif" font-size="14.00">block size in the</text>
<text text-anchor="middle" x="140" y="-1527.8" font-family="Times,serif" font-size="14.00">database</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#6118</title>
<g id="a_node25"><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,-1430.5 24.5,-1430.5 24.5,-1347.5 255.5,-1347.5 255.5,-1430.5"/>
<text text-anchor="middle" x="140" y="-1415.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6118</text>
<text text-anchor="middle" x="140" y="-1400.3" font-family="Times,serif" font-size="14.00">Create a Docker images</text>
<text text-anchor="middle" x="140" y="-1385.3" font-family="Times,serif" font-size="14.00">and docker&#45;compose for</text>
<text text-anchor="middle" x="140" y="-1370.3" font-family="Times,serif" font-size="14.00">mining with Zebra on</text>
<text text-anchor="middle" x="140" y="-1355.3" font-family="Times,serif" font-size="14.00">Testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="black" d="M255.89,-1389C281.08,-1389 307.85,-1389 333.4,-1389"/>
<polygon fill="black" stroke="black" points="333.5,-1392.5 343.5,-1389 333.5,-1385.5 333.5,-1392.5"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node26" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node26"><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="574.5,-1724.5 343.5,-1724.5 343.5,-1671.5 574.5,-1671.5 574.5,-1724.5"/>
<text text-anchor="middle" x="459" y="-1709.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="459" y="-1694.3" font-family="Times,serif" font-size="14.00">Improve note commitment</text>
<text text-anchor="middle" x="459" y="-1679.3" font-family="Times,serif" font-size="14.00">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4784 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#4784</title>
<g id="a_node27"><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 identical&#10;series of tree states" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-1877 24.5,-1877 24.5,-1809 255.5,-1809 255.5,-1877"/>
<text text-anchor="middle" x="140" y="-1861.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4784</text>
<text text-anchor="middle" x="140" y="-1846.8" font-family="Times,serif" font-size="14.00">Store only the first tree</text>
<text text-anchor="middle" x="140" y="-1831.8" font-family="Times,serif" font-size="14.00">state in each identical</text>
<text text-anchor="middle" x="140" y="-1816.8" font-family="Times,serif" font-size="14.00">series of tree states</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6642 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#6642</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6642" xlink:title="ZcashFoundation/zebra#6642&#10;Update `lightwalletd`&#10;RPCs for &quot;fast&#10;spendability&quot; algorithm" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="574.5,-1877 343.5,-1877 343.5,-1809 574.5,-1809 574.5,-1877"/>
<text text-anchor="middle" x="459" y="-1861.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6642</text>
<text text-anchor="middle" x="459" y="-1846.8" font-family="Times,serif" font-size="14.00">Update `lightwalletd`</text>
<text text-anchor="middle" x="459" y="-1831.8" font-family="Times,serif" font-size="14.00">RPCs for &quot;fast</text>
<text text-anchor="middle" x="459" y="-1816.8" font-family="Times,serif" font-size="14.00">spendability&quot; algorithm</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4784&#45;&gt;ZcashFoundation/zebra#6642 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#4784&#45;&gt;ZcashFoundation/zebra#6642</title>
<path fill="none" stroke="black" d="M255.89,-1843C281.08,-1843 307.85,-1843 333.4,-1843"/>
<polygon fill="black" stroke="black" points="333.5,-1846.5 343.5,-1843 333.5,-1839.5 333.5,-1846.5"/>
</g>
<!-- ZcashFoundation/zebra#2908 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#2908</title>
<g id="a_node29"><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,-1993 24.5,-1993 24.5,-1895 255.5,-1895 255.5,-1993"/>
<text text-anchor="middle" x="140" y="-1977.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#2908</text>
<text text-anchor="middle" x="140" y="-1962.8" font-family="Times,serif" font-size="14.00">Improve</text>
<text text-anchor="middle" x="140" y="-1947.8" font-family="Times,serif" font-size="14.00">VerifyBlockError::Commit</text>
<text text-anchor="middle" x="140" y="-1932.8" font-family="Times,serif" font-size="14.00">typing, so we don&#39;t</text>
<text text-anchor="middle" x="140" y="-1917.8" font-family="Times,serif" font-size="14.00">accidentally break syncer</text>
<text text-anchor="middle" x="140" y="-1902.8" font-family="Times,serif" font-size="14.00">error handling</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node30"><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="574.5,-1978 343.5,-1978 343.5,-1910 574.5,-1910 574.5,-1978"/>
<text text-anchor="middle" x="459" y="-1962.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="459" y="-1947.8" font-family="Times,serif" font-size="14.00">Return detailed errors</text>
<text text-anchor="middle" x="459" y="-1932.8" font-family="Times,serif" font-size="14.00">from the `submitblock`</text>
<text text-anchor="middle" x="459" y="-1917.8" font-family="Times,serif" font-size="14.00">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908&#45;&gt;ZcashFoundation/zebra#5487 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#2908&#45;&gt;ZcashFoundation/zebra#5487</title>
<path fill="none" stroke="black" d="M255.89,-1944C281.08,-1944 307.85,-1944 333.4,-1944"/>
<polygon fill="black" stroke="black" points="333.5,-1947.5 343.5,-1944 333.5,-1940.5 333.5,-1947.5"/>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node31"><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,-2079 24.5,-2079 24.5,-2011 255.5,-2011 255.5,-2079"/>
<text text-anchor="middle" x="140" y="-2063.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="140" y="-2048.8" font-family="Times,serif" font-size="14.00">Fix repeated block</text>
<text text-anchor="middle" x="140" y="-2033.8" font-family="Times,serif" font-size="14.00">timeouts during initial</text>
<text text-anchor="middle" x="140" y="-2018.8" font-family="Times,serif" font-size="14.00">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node32" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node32"><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="574.5,-2079 343.5,-2079 343.5,-2011 574.5,-2011 574.5,-2079"/>
<text text-anchor="middle" x="459" y="-2063.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="459" y="-2048.8" font-family="Times,serif" font-size="14.00">Parallelise note</text>
<text text-anchor="middle" x="459" y="-2033.8" font-family="Times,serif" font-size="14.00">commitment tree point</text>
<text text-anchor="middle" x="459" y="-2018.8" font-family="Times,serif" font-size="14.00">conversions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="black" d="M255.89,-2045C281.08,-2045 307.85,-2045 333.4,-2045"/>
<polygon fill="black" stroke="black" points="333.5,-2048.5 343.5,-2045 333.5,-2041.5 333.5,-2048.5"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node33"><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,-1790.5 24.5,-1790.5 24.5,-1707.5 255.5,-1707.5 255.5,-1790.5"/>
<text text-anchor="middle" x="140" y="-1775.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="140" y="-1760.3" font-family="Times,serif" font-size="14.00">Add an NU5 block test</text>
<text text-anchor="middle" x="140" y="-1745.3" font-family="Times,serif" font-size="14.00">vector that contains many</text>
<text text-anchor="middle" x="140" y="-1730.3" font-family="Times,serif" font-size="14.00">shielded Orchard</text>
<text text-anchor="middle" x="140" y="-1715.3" font-family="Times,serif" font-size="14.00">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="black" d="M255.89,-1730.5C281.08,-1726.5 307.85,-1722.2 333.4,-1718"/>
<polygon fill="black" stroke="black" points="334.17,-1721.42 343.5,-1716.4 333.08,-1714.51 334.17,-1721.42"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node34"><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,-1689.5 24.5,-1689.5 24.5,-1606.5 255.5,-1606.5 255.5,-1689.5"/>
<text text-anchor="middle" x="140" y="-1674.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="140" y="-1659.3" font-family="Times,serif" font-size="14.00">Add an NU5 block test</text>
<text text-anchor="middle" x="140" y="-1644.3" font-family="Times,serif" font-size="14.00">vector that contains many</text>
<text text-anchor="middle" x="140" y="-1629.3" font-family="Times,serif" font-size="14.00">shielded Sapling</text>
<text text-anchor="middle" x="140" y="-1614.3" font-family="Times,serif" font-size="14.00">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="black" d="M255.89,-1666.1C281.08,-1670.1 307.85,-1674.3 333.4,-1678.3"/>
<polygon fill="black" stroke="black" points="333.08,-1681.79 343.5,-1679.9 334.17,-1674.88 333.08,-1681.79"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4554" xlink:title="ZcashFoundation/zebra#4554&#10;benchmarks: surface&#10;zebrad mainnet sync time&#10;in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2165 24.5,-2165 24.5,-2097 255.5,-2097 255.5,-2165"/>
<text text-anchor="middle" x="140" y="-2149.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="140" y="-2134.8" font-family="Times,serif" font-size="14.00">benchmarks: surface</text>
<text text-anchor="middle" x="140" y="-2119.8" font-family="Times,serif" font-size="14.00">zebrad mainnet sync time</text>
<text text-anchor="middle" x="140" y="-2104.8" font-family="Times,serif" font-size="14.00">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node36"><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,-2266.5 24.5,-2266.5 24.5,-2183.5 255.5,-2183.5 255.5,-2266.5"/>
<text text-anchor="middle" x="140" y="-2251.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="140" y="-2236.3" font-family="Times,serif" font-size="14.00">Start disconnecting from</text>
<text text-anchor="middle" x="140" y="-2221.3" font-family="Times,serif" font-size="14.00">outdated peers before</text>
<text text-anchor="middle" x="140" y="-2206.3" font-family="Times,serif" font-size="14.00">network upgrade</text>
<text text-anchor="middle" x="140" y="-2191.3" font-family="Times,serif" font-size="14.00">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node37" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node37"><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="574.5,-2259 343.5,-2259 343.5,-2191 574.5,-2191 574.5,-2259"/>
<text text-anchor="middle" x="459" y="-2243.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="459" y="-2228.8" font-family="Times,serif" font-size="14.00">Prefer faster peers, but</text>
<text text-anchor="middle" x="459" y="-2213.8" font-family="Times,serif" font-size="14.00">if all peers are slow,</text>
<text text-anchor="middle" x="459" y="-2198.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="edge16" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="black" d="M255.89,-2225C281.08,-2225 307.85,-2225 333.4,-2225"/>
<polygon fill="black" stroke="black" points="333.5,-2228.5 343.5,-2225 333.5,-2221.5 333.5,-2228.5"/>
</g>
<!-- ZcashFoundation/zebra#6611 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#6611</title>
<g id="a_node38"><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" points="574.5,-2353 343.5,-2353 343.5,-2285 574.5,-2285 574.5,-2353"/>
<text text-anchor="middle" x="459" y="-2337.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6611</text>
<text text-anchor="middle" x="459" y="-2322.8" font-family="Times,serif" font-size="14.00">Document how to switch</text>
<text text-anchor="middle" x="459" y="-2307.8" font-family="Times,serif" font-size="14.00">from Testnet to Mainnet</text>
<text text-anchor="middle" x="459" y="-2292.8" font-family="Times,serif" font-size="14.00">in Docker images</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6159 -->
<g id="node39" class="node closed">
<title>ZcashFoundation/zebra#6159</title>
<g id="a_node39"><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="870,-2360.5 639,-2360.5 639,-2277.5 870,-2277.5 870,-2360.5"/>
<text text-anchor="middle" x="754.5" y="-2345.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6159</text>
<text text-anchor="middle" x="754.5" y="-2330.3" font-family="Times,serif" font-size="14.00">Documentation: Write a</text>
<text text-anchor="middle" x="754.5" y="-2315.3" font-family="Times,serif" font-size="14.00">blog post to share how we</text>
<text text-anchor="middle" x="754.5" y="-2300.3" font-family="Times,serif" font-size="14.00">used Zebra and s&#45;nomp to</text>
<text text-anchor="middle" x="754.5" y="-2285.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="edge17" class="edge">
<title>ZcashFoundation/zebra#6611&#45;&gt;ZcashFoundation/zebra#6159</title>
<path fill="none" stroke="black" d="M574.74,-2319C592.34,-2319 610.59,-2319 628.41,-2319"/>
<polygon fill="black" stroke="black" points="628.84,-2322.5 638.84,-2319 628.84,-2315.5 628.84,-2322.5"/>
</g>
<!-- ZcashFoundation/zebra#6390 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#6390</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6390" xlink:title="ZcashFoundation/zebra#6390&#10;Epic: Zebra Stable&#10;Release" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2424.5 24.5,-2424.5 24.5,-2371.5 255.5,-2371.5 255.5,-2424.5"/>
<text text-anchor="middle" x="140" y="-2409.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6390</text>
<text text-anchor="middle" x="140" y="-2394.3" font-family="Times,serif" font-size="14.00">Epic: Zebra Stable</text>
<text text-anchor="middle" x="140" y="-2379.3" font-family="Times,serif" font-size="14.00">Release</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6692 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#6692</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6692" xlink:title="ZcashFoundation/zebra#6692&#10;Tag Zebra Stable Release:&#10;Zebra 1.0.0" target="_blank">
<polygon fill="#c2e0c6" stroke="black" points="574.5,-2424.5 343.5,-2424.5 343.5,-2371.5 574.5,-2371.5 574.5,-2424.5"/>
<text text-anchor="middle" x="459" y="-2409.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6692</text>
<text text-anchor="middle" x="459" y="-2394.3" font-family="Times,serif" font-size="14.00">Tag Zebra Stable Release:</text>
<text text-anchor="middle" x="459" y="-2379.3" font-family="Times,serif" font-size="14.00">Zebra 1.0.0</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6390&#45;&gt;ZcashFoundation/zebra#6692 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#6390&#45;&gt;ZcashFoundation/zebra#6692</title>
<path fill="none" stroke="black" d="M255.89,-2398C281.08,-2398 307.85,-2398 333.4,-2398"/>
<polygon fill="black" stroke="black" points="333.5,-2401.5 343.5,-2398 333.5,-2394.5 333.5,-2401.5"/>
</g>
<!-- ZcashFoundation/zebra#6752 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#6752</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6752" xlink:title="ZcashFoundation/zebra#6752&#10;Pass mining config to the&#10;mining Docker container&#10;at runtime" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="255.5,-2353 24.5,-2353 24.5,-2285 255.5,-2285 255.5,-2353"/>
<text text-anchor="middle" x="140" y="-2337.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/zebra#6752</text>
<text text-anchor="middle" x="140" y="-2322.8" font-family="Times,serif" font-size="14.00">Pass mining config to the</text>
<text text-anchor="middle" x="140" y="-2307.8" font-family="Times,serif" font-size="14.00">mining Docker container</text>
<text text-anchor="middle" x="140" y="-2292.8" font-family="Times,serif" font-size="14.00">at runtime</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6752&#45;&gt;ZcashFoundation/zebra#6611 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#6752&#45;&gt;ZcashFoundation/zebra#6611</title>
<path fill="none" stroke="black" d="M255.89,-2319C281.08,-2319 307.85,-2319 333.4,-2319"/>
<polygon fill="black" stroke="black" points="333.5,-2322.5 343.5,-2319 333.5,-2315.5 333.5,-2322.5"/>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#77 -->
<g id="node43" class="node open">
<title>ZcashFoundation/ed25519&#45;zebra#77</title>
<g id="a_node43"><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,-2582 0,-2582 0,-2514 280,-2514 280,-2582"/>
<text text-anchor="middle" x="140" y="-2566.8" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#77</text>
<text text-anchor="middle" x="140" y="-2551.8" font-family="Times,serif" font-size="14.00">Add instructions to the</text>
<text text-anchor="middle" x="140" y="-2536.8" font-family="Times,serif" font-size="14.00">README for updating this</text>
<text text-anchor="middle" x="140" y="-2521.8" font-family="Times,serif" font-size="14.00">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#79 -->
<g id="node44" class="node open">
<title>ZcashFoundation/ed25519&#45;zebra#79</title>
<g id="a_node44"><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="#c2e0c6" stroke="black" points="599,-2495.5 319,-2495.5 319,-2442.5 599,-2442.5 599,-2495.5"/>
<text text-anchor="middle" x="459" y="-2480.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#79</text>
<text text-anchor="middle" x="459" y="-2465.3" font-family="Times,serif" font-size="14.00">Tag a new &#160;ed25519&#45;zebra</text>
<text text-anchor="middle" x="459" y="-2450.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="edge20" class="edge">
<title>ZcashFoundation/ed25519&#45;zebra#77&#45;&gt;ZcashFoundation/ed25519&#45;zebra#79</title>
<path fill="none" stroke="black" d="M277.74,-2513.9C299,-2508.6 320.8,-2503.2 341.56,-2498"/>
<polygon fill="black" stroke="black" points="342.46,-2501.38 351.34,-2495.6 340.79,-2494.58 342.46,-2501.38"/>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#78 -->
<g id="node45" class="node open">
<title>ZcashFoundation/ed25519&#45;zebra#78</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/ed25519-zebra/issues/78" xlink:title="ZcashFoundation/ed25519&#45;zebra#78&#10;Upgrade curve25519&#45;dalek&#10;dependency" target="_blank">
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="280,-2495.5 0,-2495.5 0,-2442.5 280,-2442.5 280,-2495.5"/>
<text text-anchor="middle" x="140" y="-2480.3" font-family="Times,serif" font-size="14.00">ZcashFoundation/ed25519&#45;zebra#78</text>
<text text-anchor="middle" x="140" y="-2465.3" font-family="Times,serif" font-size="14.00">Upgrade curve25519&#45;dalek</text>
<text text-anchor="middle" x="140" y="-2450.3" font-family="Times,serif" font-size="14.00">dependency</text>
</a>
</g>
</g>
<!-- ZcashFoundation/ed25519&#45;zebra#78&#45;&gt;ZcashFoundation/ed25519&#45;zebra#79 -->
<g id="edge21" class="edge">
<title>ZcashFoundation/ed25519&#45;zebra#78&#45;&gt;ZcashFoundation/ed25519&#45;zebra#79</title>
<path fill="none" stroke="black" d="M280.04,-2469C289.45,-2469 298.95,-2469 308.4,-2469"/>
<polygon fill="black" stroke="black" points="308.64,-2472.5 318.64,-2469 308.64,-2465.5 308.64,-2472.5"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>