developers/zcash-zf-dag.html

669 lines
50 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="1203pt" height="2197pt"
viewBox="0.00 0.00 1203.00 2196.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2192.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2192.5 1199,-2192.5 1199,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="671,-46 671,-900 1187,-900 1187,-46 671,-46"/>
<text text-anchor="middle" x="929" y="-884.8" font-family="Times,serif" font-size="14.00" fill="#000000">DevOps Ticket Tracker</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="67,-139 67,-908 651,-908 651,-139 67,-139"/>
<text text-anchor="middle" x="359" y="-892.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidates</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-2188.5 1195,-2188.5 1195,0 0,0"/>
<text text-anchor="middle" x="597.5" y="-2173.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,-916 0,-1225 383,-1225 383,-916 0,-916"/>
<text text-anchor="middle" x="191.5" y="-1209.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to state using a separate task</text>
</g>
<!-- ZcashFoundation/zebra#4953 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#4953</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4953" xlink:title="ZcashFoundation/zebra#4953&#10;Document how to use&#10;released Zebra binaries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-553.5 679,-553.5 679,-500.5 911,-500.5 911,-553.5"/>
<text text-anchor="middle" x="795" y="-538.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="795" y="-523.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="795" y="-508.3" font-family="Times,serif" font-size="14.00" fill="#000000">released Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1615" xlink:title="ZcashFoundation/zebra#1615&#10;Zebra release candidate&#10;binaries should be linked&#10;from ZFND website" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="307,-674 75,-674 75,-606 307,-606 307,-674"/>
<text text-anchor="middle" x="191" y="-658.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="191" y="-643.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="191" y="-628.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="191" y="-613.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M678.76,-548.75C575.04,-568.15 423.52,-596.5 316.95,-616.44"/>
<polygon fill="#000000" stroke="#000000" points="316.2872,-613.0032 307.1,-618.28 317.5727,-619.8841 316.2872,-613.0032"/>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Work out how to release&#10;Zebra binaries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-782.5 679,-782.5 679,-729.5 911,-729.5 911,-782.5"/>
<text text-anchor="middle" x="795" y="-767.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="795" y="-752.3" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
<text text-anchor="middle" x="795" y="-737.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4954" xlink:title="ZcashFoundation/zebra#4954&#10;Update release checklist&#10;PR template for the&#10;release candidate series" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1179,-869 947,-869 947,-801 1179,-801 1179,-869"/>
<text text-anchor="middle" x="1063" y="-853.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="1063" y="-838.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="1063" y="-823.8" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="1063" y="-808.8" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate series</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4954 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4954</title>
<path fill="none" stroke="#000000" d="M884.99,-782.53C901.92,-787.52 919.91,-792.82 937.7,-798.06"/>
<polygon fill="#000000" stroke="#000000" points="936.9681,-801.4933 947.55,-800.97 938.9514,-794.7801 936.9681,-801.4933"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4412" xlink:title="ZcashFoundation/zebra#4412&#10;Automate pinning CI&#10;dependencies to specific&#10;commit hashes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1179,-783 947,-783 947,-715 1179,-715 1179,-783"/>
<text text-anchor="middle" x="1063" y="-767.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="1063" y="-752.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="1063" y="-737.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="1063" y="-722.8" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412</title>
<path fill="none" stroke="#000000" d="M911.38,-752.96C919.71,-752.74 928.14,-752.52 936.53,-752.3"/>
<polygon fill="#000000" stroke="#000000" points="936.8324,-755.7935 946.74,-752.04 936.6541,-748.7958 936.8324,-755.7935"/>
</g>
<!-- ZcashFoundation/zebra#755 -->
<g id="node27" class="node closed">
<title>ZcashFoundation/zebra#755</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/755" xlink:title="ZcashFoundation/zebra#755&#10;Automate zebrad releases" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1174.5,-38 951.5,-38 951.5,0 1174.5,0 1174.5,-38"/>
<text text-anchor="middle" x="1063" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#755</text>
<text text-anchor="middle" x="1063" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate zebrad releases</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M903.3,-729.22C906.08,-726.71 908.66,-723.98 911,-721 1002.3,-604.68 854.65,-175.2 944.94,-45.69"/>
<polygon fill="#000000" stroke="#000000" points="947.8579,-47.6395 951.24,-37.599 942.3347,-43.3389 947.8579,-47.6395"/>
</g>
<!-- ZcashFoundation/zebra#3050 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#3050</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3050" xlink:title="ZcashFoundation/zebra#3050&#10;Tag Zebra 1.0.0&#45;rc.0&#10;stable release candidate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-861.5 411,-861.5 411,-808.5 643,-808.5 643,-861.5"/>
<text text-anchor="middle" x="527" y="-846.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="527" y="-831.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;rc.0</text>
<text text-anchor="middle" x="527" y="-816.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M1037.5,-869.19C1010.4,-902.41 964.09,-950.72 911,-971 811.36,-1009.1 770.12,-1010.4 671,-971 620.04,-950.74 576.68,-902.94 551.24,-869.78"/>
<polygon fill="#000000" stroke="#000000" points="553.9659,-867.5813 545.16,-861.69 548.37,-871.7869 553.9659,-867.5813"/>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4612" xlink:title="ZcashFoundation/zebra#4612&#10;ci: Wait for lightwalletd&#10;image rebuild if it has&#10;changed" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1179,-640 947,-640 947,-572 1179,-572 1179,-640"/>
<text text-anchor="middle" x="1063" y="-624.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="1063" y="-609.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="1063" y="-594.8" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="1063" y="-579.8" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4955 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#4955</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4955" xlink:title="ZcashFoundation/zebra#4955&#10;Make long&#45;running test&#10;names match workflow&#10;names" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-869 679,-869 679,-801 911,-801 911,-869"/>
<text text-anchor="middle" x="795" y="-853.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4955</text>
<text text-anchor="middle" x="795" y="-838.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make long&#45;running test</text>
<text text-anchor="middle" x="795" y="-823.8" font-family="Times,serif" font-size="14.00" fill="#000000">names match workflow</text>
<text text-anchor="middle" x="795" y="-808.8" font-family="Times,serif" font-size="14.00" fill="#000000">names</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4882" xlink:title="ZcashFoundation/zebra#4882&#10;Add zcash&#45;lightwalletd /&#10;Build images to required&#10;jobs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-640 679,-640 679,-572 911,-572 911,-640"/>
<text text-anchor="middle" x="795" y="-624.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="795" y="-609.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="795" y="-594.8" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="795" y="-579.8" font-family="Times,serif" font-size="14.00" fill="#000000">jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M911.38,-606C919.71,-606 928.14,-606 936.53,-606"/>
<polygon fill="#000000" stroke="#000000" points="936.74,-609.5001 946.74,-606 936.74,-602.5001 936.74,-609.5001"/>
</g>
<!-- ZcashFoundation/zebra#4992 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#4992</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4992" xlink:title="ZcashFoundation/zebra#4992&#10;Run cached state CI on&#10;testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-711.5 679,-711.5 679,-658.5 911,-658.5 911,-711.5"/>
<text text-anchor="middle" x="795" y="-696.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="795" y="-681.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="795" y="-666.3" font-family="Times,serif" font-size="14.00" fill="#000000">testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4554" xlink:title="ZcashFoundation/zebra#4554&#10;benchmarks: surface&#10;zebrad mainnet sync time&#10;in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-482 679,-482 679,-414 911,-414 911,-482"/>
<text text-anchor="middle" x="795" y="-466.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="795" y="-451.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="795" y="-436.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="795" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4529 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#4529</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4529" xlink:title="ZcashFoundation/zebra#4529&#10;Make PRs from external&#10;repositories pass or skip&#10;CI jobs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-396 679,-396 679,-328 911,-328 911,-396"/>
<text text-anchor="middle" x="795" y="-380.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4529</text>
<text text-anchor="middle" x="795" y="-365.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make PRs from external</text>
<text text-anchor="middle" x="795" y="-350.8" font-family="Times,serif" font-size="14.00" fill="#000000">repositories pass or skip</text>
<text text-anchor="middle" x="795" y="-335.8" font-family="Times,serif" font-size="14.00" fill="#000000">CI jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4956 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#4956</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4956" xlink:title="ZcashFoundation/zebra#4956&#10;Make file locations&#10;appear in zebrad Docker&#10;error messages" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-310 679,-310 679,-242 911,-242 911,-310"/>
<text text-anchor="middle" x="795" y="-294.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4956</text>
<text text-anchor="middle" x="795" y="-279.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make file locations</text>
<text text-anchor="middle" x="795" y="-264.8" font-family="Times,serif" font-size="14.00" fill="#000000">appear in zebrad Docker</text>
<text text-anchor="middle" x="795" y="-249.8" font-family="Times,serif" font-size="14.00" fill="#000000">error messages</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4976 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4976</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4976" xlink:title="ZcashFoundation/zebra#4976&#10;Move continuous&#10;deployment to another&#10;Google Cloud region" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-224 679,-224 679,-156 911,-156 911,-224"/>
<text text-anchor="middle" x="795" y="-208.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4976</text>
<text text-anchor="middle" x="795" y="-193.8" font-family="Times,serif" font-size="14.00" fill="#000000">Move continuous</text>
<text text-anchor="middle" x="795" y="-178.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployment to another</text>
<text text-anchor="middle" x="795" y="-163.8" font-family="Times,serif" font-size="14.00" fill="#000000">Google Cloud region</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4946 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#4946</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4946" xlink:title="ZcashFoundation/zebra#4946&#10;Managed instance groups&#10;deployed with continuous&#10;deployment can&#39;t scale&#10;beyond 1 instance" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="911,-137.5 679,-137.5 679,-54.5 911,-54.5 911,-137.5"/>
<text text-anchor="middle" x="795" y="-122.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4946</text>
<text text-anchor="middle" x="795" y="-107.3" font-family="Times,serif" font-size="14.00" fill="#000000">Managed instance groups</text>
<text text-anchor="middle" x="795" y="-92.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployed with continuous</text>
<text text-anchor="middle" x="795" y="-77.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployment can&#39;t scale</text>
<text text-anchor="middle" x="795" y="-62.3" font-family="Times,serif" font-size="14.00" fill="#000000">beyond 1 instance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4955 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4955</title>
<path fill="none" stroke="#000000" d="M643.38,-835C651.71,-835 660.14,-835 668.53,-835"/>
<polygon fill="#000000" stroke="#000000" points="668.74,-838.5001 678.74,-835 668.74,-831.5001 668.74,-838.5001"/>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992</title>
<path fill="none" stroke="#000000" d="M553.95,-808.31C581.3,-782.58 625.94,-744.24 671,-721 674.75,-719.06 678.63,-717.22 682.58,-715.46"/>
<polygon fill="#000000" stroke="#000000" points="684.0876,-718.6227 691.94,-711.51 681.366,-712.1735 684.0876,-718.6227"/>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4967" xlink:title="ZcashFoundation/zebra#4967&#10;feat(rpc): add&#10;getblockhash rpc method" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-961.5 679,-961.5 679,-957.5 675,-957.5 675,-953.5 679,-953.5 679,-916.5 675,-916.5 675,-912.5 679,-912.5 679,-908.5 911,-908.5 911,-961.5"/>
<polyline fill="none" stroke="#000000" points="679,-957.5 683,-957.5 683,-953.5 679,-953.5 "/>
<polyline fill="none" stroke="#000000" points="679,-916.5 683,-916.5 683,-912.5 679,-912.5 "/>
<text text-anchor="middle" x="795" y="-946.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="795" y="-931.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="795" y="-916.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblockhash rpc method</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M576.25,-861.65C603.58,-875.66 638.53,-892.3 671,-904 672.2,-904.43 673.42,-904.86 674.64,-905.29"/>
<polygon fill="#000000" stroke="#000000" points="673.5259,-908.6079 684.12,-908.48 675.7585,-901.9734 673.5259,-908.6079"/>
</g>
<!-- ZcashFoundation/zebra#4894 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4894</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4894" xlink:title="ZcashFoundation/zebra#4894&#10;Make tests wait until&#10;lightwalletd full sync&#10;goes all the way to the&#10;tip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-876.5 75,-876.5 75,-793.5 307,-793.5 307,-876.5"/>
<text text-anchor="middle" x="191" y="-861.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="191" y="-846.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="191" y="-831.3" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="191" y="-816.3" font-family="Times,serif" font-size="14.00" fill="#000000">goes all the way to the</text>
<text text-anchor="middle" x="191" y="-801.3" font-family="Times,serif" font-size="14.00" fill="#000000">tip</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.1,-835C337.27,-835 369.91,-835 400.57,-835"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-838.5001 410.89,-835 400.89,-831.5001 400.89,-838.5001"/>
</g>
<!-- ZcashFoundation/zebra#4778 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4778</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4778" xlink:title="ZcashFoundation/zebra#4778&#10;Replace old release&#10;criteria with stable&#10;release candidate&#10;criteria in docs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-775.5 75,-775.5 75,-692.5 307,-692.5 307,-775.5"/>
<text text-anchor="middle" x="191" y="-760.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4778</text>
<text text-anchor="middle" x="191" y="-745.3" font-family="Times,serif" font-size="14.00" fill="#000000">Replace old release</text>
<text text-anchor="middle" x="191" y="-730.3" font-family="Times,serif" font-size="14.00" fill="#000000">criteria with stable</text>
<text text-anchor="middle" x="191" y="-715.3" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate</text>
<text text-anchor="middle" x="191" y="-700.3" font-family="Times,serif" font-size="14.00" fill="#000000">criteria in docs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4778&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#4778&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.14,-763.36C332.26,-770.12 358.59,-777.53 383,-785 402.9,-791.09 424.16,-798.15 444.07,-805.02"/>
<polygon fill="#000000" stroke="#000000" points="443.1252,-808.3969 453.72,-808.37 445.4209,-801.784 443.1252,-808.3969"/>
</g>
<!-- ZcashFoundation/zebra#5121 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#5121</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5121" xlink:title="ZcashFoundation/zebra#5121&#10;Document where users can&#10;get support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-587.5 75,-587.5 75,-534.5 307,-534.5 307,-587.5"/>
<text text-anchor="middle" x="191" y="-572.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5121</text>
<text text-anchor="middle" x="191" y="-557.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document where users can</text>
<text text-anchor="middle" x="191" y="-542.3" font-family="Times,serif" font-size="14.00" fill="#000000">get support</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5120 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#5120</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5120" xlink:title="ZcashFoundation/zebra#5120&#10;Prepare issue and&#10;response templates for&#10;user issues" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-516 75,-516 75,-448 307,-448 307,-516"/>
<text text-anchor="middle" x="191" y="-500.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5120</text>
<text text-anchor="middle" x="191" y="-485.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prepare issue and</text>
<text text-anchor="middle" x="191" y="-470.8" font-family="Times,serif" font-size="14.00" fill="#000000">response templates for</text>
<text text-anchor="middle" x="191" y="-455.8" font-family="Times,serif" font-size="14.00" fill="#000000">user issues</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4821 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#4821</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4821" xlink:title="ZcashFoundation/zebra#4821&#10;Open the database in a&#10;blocking tokio thread" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-429.5 75,-429.5 75,-376.5 307,-376.5 307,-429.5"/>
<text text-anchor="middle" x="191" y="-414.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4821</text>
<text text-anchor="middle" x="191" y="-399.3" font-family="Times,serif" font-size="14.00" fill="#000000">Open the database in a</text>
<text text-anchor="middle" x="191" y="-384.3" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tokio thread</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4937</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4937" xlink:title="ZcashFoundation/zebra#4937&#10;Epic: Commit blocks to&#10;state using a separate&#10;task" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-358 75,-358 75,-290 307,-290 307,-358"/>
<text text-anchor="middle" x="191" y="-342.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="191" y="-327.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to</text>
<text text-anchor="middle" x="191" y="-312.8" font-family="Times,serif" font-size="14.00" fill="#000000">state using a separate</text>
<text text-anchor="middle" x="191" y="-297.8" font-family="Times,serif" font-size="14.00" fill="#000000">task</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node22"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1638" xlink:title="ZcashFoundation/zebra#1638&#10;Create PGP keys amongst&#10;security@zfnd.org" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-271.5 75,-271.5 75,-218.5 307,-218.5 307,-271.5"/>
<text text-anchor="middle" x="191" y="-256.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="191" y="-241.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="191" y="-226.3" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2001" xlink:title="ZcashFoundation/zebra#2001&#10;Write a draft security&#10;triage RFC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-200.5 75,-200.5 75,-147.5 307,-147.5 307,-200.5"/>
<text text-anchor="middle" x="191" y="-185.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="191" y="-170.3" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="191" y="-155.3" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2654 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#2654</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2654" xlink:title="ZcashFoundation/zebra#2654&#10;Test if checkpoint&#10;verifier and state&#10;service are correctly&#10;reset on block commit&#10;errors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1194 75,-1194 75,-1096 307,-1096 307,-1194"/>
<text text-anchor="middle" x="191" y="-1178.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2654</text>
<text text-anchor="middle" x="191" y="-1163.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test if checkpoint</text>
<text text-anchor="middle" x="191" y="-1148.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier and state</text>
<text text-anchor="middle" x="191" y="-1133.8" font-family="Times,serif" font-size="14.00" fill="#000000">service are correctly</text>
<text text-anchor="middle" x="191" y="-1118.8" font-family="Times,serif" font-size="14.00" fill="#000000">reset on block commit</text>
<text text-anchor="middle" x="191" y="-1103.8" font-family="Times,serif" font-size="14.00" fill="#000000">errors</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5102 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5102</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5102" xlink:title="ZcashFoundation/zebra#5102&#10;Make StateService&#10;requests into concurrent&#10;ReadStateService requests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1078 75,-1078 75,-1010 307,-1010 307,-1078"/>
<text text-anchor="middle" x="191" y="-1062.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5102</text>
<text text-anchor="middle" x="191" y="-1047.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make StateService</text>
<text text-anchor="middle" x="191" y="-1032.8" font-family="Times,serif" font-size="14.00" fill="#000000">requests into concurrent</text>
<text text-anchor="middle" x="191" y="-1017.8" font-family="Times,serif" font-size="14.00" fill="#000000">ReadStateService requests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5125 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5125</title>
<g id="a_node26"><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="#000000" stroke-width="2" points="307,-992 75,-992 75,-924 307,-924 307,-992"/>
<text text-anchor="middle" x="191" y="-976.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5125</text>
<text text-anchor="middle" x="191" y="-961.8" font-family="Times,serif" font-size="14.00" fill="#000000">Avoid temporary failures</text>
<text text-anchor="middle" x="191" y="-946.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifying the first non&#45;</text>
<text text-anchor="middle" x="191" y="-931.8" font-family="Times,serif" font-size="14.00" fill="#000000">finalized block</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="302.5,-1286.5 79.5,-1286.5 79.5,-1233.5 302.5,-1233.5 302.5,-1286.5"/>
<text text-anchor="middle" x="191" y="-1271.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="191" y="-1256.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="191" y="-1241.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="638.5,-1333 415.5,-1333 415.5,-1265 638.5,-1265 638.5,-1333"/>
<text text-anchor="middle" x="527" y="-1317.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="527" y="-1302.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="527" y="-1287.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="527" y="-1272.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M302.88,-1273C335.67,-1276.8 371.67,-1281 405.05,-1284.8"/>
<polygon fill="#000000" stroke="#000000" points="404.9813,-1288.3157 415.32,-1286 405.7938,-1281.363 404.9813,-1288.3157"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-1246.5 411,-1246.5 411,-1193.5 643,-1193.5 643,-1246.5"/>
<text text-anchor="middle" x="527" y="-1231.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="527" y="-1216.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="527" y="-1201.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M302.88,-1246.7C334.15,-1243 368.34,-1238.9 400.39,-1235.1"/>
<polygon fill="#000000" stroke="#000000" points="401.2353,-1238.5213 410.72,-1233.8 400.3612,-1231.5761 401.2353,-1238.5213"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="302.5,-1343 79.5,-1343 79.5,-1305 302.5,-1305 302.5,-1343"/>
<text text-anchor="middle" x="191" y="-1327.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="191" y="-1312.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2631" xlink:title="ZcashFoundation/zebra#2631&#10;Send committed spent&#10;OutPoints &amp; nullifiers to&#10;the mempool for rejection" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1429 75,-1429 75,-1361 307,-1361 307,-1429"/>
<text text-anchor="middle" x="191" y="-1413.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="191" y="-1398.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="191" y="-1383.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="191" y="-1368.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1500.5 75,-1500.5 75,-1447.5 307,-1447.5 307,-1500.5"/>
<text text-anchor="middle" x="191" y="-1485.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="191" y="-1470.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="191" y="-1455.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1571.5 75,-1571.5 75,-1518.5 307,-1518.5 307,-1571.5"/>
<text text-anchor="middle" x="191" y="-1556.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="191" y="-1541.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="191" y="-1526.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4672" xlink:title="ZcashFoundation/zebra#4672&#10;Add support for Orchard&#10;proof batch verification" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1642.5 75,-1642.5 75,-1589.5 307,-1589.5 307,-1642.5"/>
<text text-anchor="middle" x="191" y="-1627.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="191" y="-1612.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="191" y="-1597.3" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node37" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4841" xlink:title="ZcashFoundation/zebra#4841&#10;Improve note commitment&#10;tree append performance" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="643,-1778.5 411,-1778.5 411,-1725.5 643,-1725.5 643,-1778.5"/>
<text text-anchor="middle" x="527" y="-1763.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="527" y="-1748.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="527" y="-1733.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1945.5 75,-1945.5 75,-1862.5 307,-1862.5 307,-1945.5"/>
<text text-anchor="middle" x="191" y="-1930.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="191" y="-1915.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="191" y="-1900.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="191" y="-1885.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="191" y="-1870.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3096" xlink:title="ZcashFoundation/zebra#3096&#10;Epic: Zebra Release&#10;Candidates" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2016.5 75,-2016.5 75,-1963.5 307,-1963.5 307,-2016.5"/>
<text text-anchor="middle" x="191" y="-2001.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="191" y="-1986.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="191" y="-1971.3" font-family="Times,serif" font-size="14.00" fill="#000000">Candidates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4774" xlink:title="ZcashFoundation/zebra#4774&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Orchard&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1844.5 75,-1844.5 75,-1761.5 307,-1761.5 307,-1844.5"/>
<text text-anchor="middle" x="191" y="-1829.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="191" y="-1814.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-1799.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-1784.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="191" y="-1769.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-1785.4C337.4,-1780.8 370.19,-1775.8 400.97,-1771.1"/>
<polygon fill="#000000" stroke="#000000" points="401.5257,-1774.5558 410.89,-1769.6 400.4791,-1767.6345 401.5257,-1774.5558"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4775" xlink:title="ZcashFoundation/zebra#4775&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Sapling&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1743.5 75,-1743.5 75,-1660.5 307,-1660.5 307,-1743.5"/>
<text text-anchor="middle" x="191" y="-1728.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="191" y="-1713.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-1698.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-1683.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="191" y="-1668.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-1719.3C337.4,-1723.8 370.19,-1728.7 400.97,-1733.2"/>
<polygon fill="#000000" stroke="#000000" points="400.4791,-1736.6655 410.89,-1734.7 401.5257,-1729.7442 400.4791,-1736.6655"/>
</g>
<!-- ZcashFoundation/zebra#5011 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#5011</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5011" xlink:title="ZcashFoundation/zebra#5011&#10;Tag Zebra 1.0.0&#45;beta.15&#10;release" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2087.5 75,-2087.5 75,-2034.5 307,-2034.5 307,-2087.5"/>
<text text-anchor="middle" x="191" y="-2072.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5011</text>
<text text-anchor="middle" x="191" y="-2057.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;beta.15</text>
<text text-anchor="middle" x="191" y="-2042.3" font-family="Times,serif" font-size="14.00" fill="#000000">release</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4545" xlink:title="ZcashFoundation/zebra#4545&#10;Start disconnecting from&#10;outdated peers before&#10;network upgrade&#10;activation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2188.5 75,-2188.5 75,-2105.5 307,-2105.5 307,-2188.5"/>
<text text-anchor="middle" x="191" y="-2173.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="191" y="-2158.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="191" y="-2143.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="191" y="-2128.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="191" y="-2113.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node44" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4226" xlink:title="ZcashFoundation/zebra#4226&#10;Prefer faster peers, but&#10;if all peers are slow,&#10;still connect to them" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="643,-2181 411,-2181 411,-2113 643,-2113 643,-2181"/>
<text text-anchor="middle" x="527" y="-2165.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="527" y="-2150.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="527" y="-2135.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="527" y="-2120.8" font-family="Times,serif" font-size="14.00" fill="#000000">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M307.1,-2147C337.27,-2147 369.91,-2147 400.57,-2147"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-2150.5001 410.89,-2147 400.89,-2143.5001 400.89,-2150.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>