developers/zcash-zf-dag.html

662 lines
49 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="1060pt" height="2202pt"
viewBox="0.00 0.00 1060.00 2201.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 2197.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2197.5 1056,-2197.5 1056,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,-8 260,-1191 508,-1191 508,-8 260,-8"/>
<text text-anchor="middle" x="384" y="-1175.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidates</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-2193.5 1052,-2193.5 1052,0 0,0"/>
<text text-anchor="middle" x="526" y="-2178.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="528,-526 528,-1294 1044,-1294 1044,-526 528,-526"/>
<text text-anchor="middle" x="786" y="-1278.8" font-family="Times,serif" font-size="14.00" fill="#000000">DevOps Ticket Tracker</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-2193.5 1052,-2193.5 1052,0 0,0"/>
<text text-anchor="middle" x="526" y="-2178.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to state using a separate task</text>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node1"><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="500,-1160 268,-1160 268,-1092 500,-1092 500,-1160"/>
<text text-anchor="middle" x="384" y="-1144.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="384" y="-1129.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="384" y="-1114.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="384" y="-1099.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#3050</title>
<g id="a_node2"><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="500,-987.5 268,-987.5 268,-934.5 500,-934.5 500,-987.5"/>
<text text-anchor="middle" x="384" y="-972.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="384" y="-957.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="384" y="-942.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4955 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#4955</title>
<g id="a_node20"><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="768,-1034 536,-1034 536,-966 768,-966 768,-1034"/>
<text text-anchor="middle" x="652" y="-1018.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4955</text>
<text text-anchor="middle" x="652" y="-1003.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make long&#45;running test</text>
<text text-anchor="middle" x="652" y="-988.8" font-family="Times,serif" font-size="14.00" fill="#000000">names match workflow</text>
<text text-anchor="middle" x="652" y="-973.8" font-family="Times,serif" font-size="14.00" fill="#000000">names</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4955 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4955</title>
<path fill="none" stroke="#000000" d="M500.38,-977.94C508.81,-979.16 517.33,-980.4 525.81,-981.64"/>
<polygon fill="#000000" stroke="#000000" points="525.3412,-985.1085 535.74,-983.08 526.3458,-978.181 525.3412,-985.1085"/>
</g>
<!-- ZcashFoundation/zebra#4992 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4992</title>
<g id="a_node21"><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="768,-947.5 536,-947.5 536,-894.5 768,-894.5 768,-947.5"/>
<text text-anchor="middle" x="652" y="-932.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="652" y="-917.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="652" y="-902.3" font-family="Times,serif" font-size="14.00" fill="#000000">testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992</title>
<path fill="none" stroke="#000000" d="M500.38,-943.63C508.81,-942.37 517.33,-941.1 525.81,-939.83"/>
<polygon fill="#000000" stroke="#000000" points="526.3652,-943.286 535.74,-938.35 525.3333,-936.3625 526.3652,-943.286"/>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node26"><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="768,-516.5 536,-516.5 536,-512.5 532,-512.5 532,-508.5 536,-508.5 536,-471.5 532,-471.5 532,-467.5 536,-467.5 536,-463.5 768,-463.5 768,-516.5"/>
<polyline fill="none" stroke="#000000" points="536,-512.5 540,-512.5 540,-508.5 536,-508.5 "/>
<polyline fill="none" stroke="#000000" points="536,-471.5 540,-471.5 540,-467.5 536,-467.5 "/>
<text text-anchor="middle" x="652" y="-501.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="652" y="-486.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="652" y="-471.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="edge5" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M500.24,-934.22C503.03,-931.71 505.63,-928.97 508,-926 564,-855.69 471.21,-591.68 528,-522 528.22,-521.73 528.45,-521.45 528.68,-521.18"/>
<polygon fill="#000000" stroke="#000000" points="531.2936,-523.514 535.81,-513.93 526.3027,-518.6057 531.2936,-523.514"/>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node3"><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="500,-1074 268,-1074 268,-1006 500,-1006 500,-1074"/>
<text text-anchor="middle" x="384" y="-1058.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="384" y="-1043.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="384" y="-1028.8" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="384" y="-1013.8" font-family="Times,serif" font-size="14.00" fill="#000000">jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node19"><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="768,-1120 536,-1120 536,-1052 768,-1052 768,-1120"/>
<text text-anchor="middle" x="652" y="-1104.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="652" y="-1089.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="652" y="-1074.8" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="652" y="-1059.8" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M500.38,-1060C508.81,-1061.4 517.33,-1062.9 525.81,-1064.3"/>
<polygon fill="#000000" stroke="#000000" points="525.2928,-1067.7623 535.74,-1066 526.474,-1060.8627 525.2928,-1067.7623"/>
</g>
<!-- ZcashFoundation/zebra#5121 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5121</title>
<g id="a_node4"><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="500,-916.5 268,-916.5 268,-863.5 500,-863.5 500,-916.5"/>
<text text-anchor="middle" x="384" y="-901.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5121</text>
<text text-anchor="middle" x="384" y="-886.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document where users can</text>
<text text-anchor="middle" x="384" y="-871.3" font-family="Times,serif" font-size="14.00" fill="#000000">get support</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4529 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#4529</title>
<g id="a_node5"><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="500,-845 268,-845 268,-777 500,-777 500,-845"/>
<text text-anchor="middle" x="384" y="-829.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4529</text>
<text text-anchor="middle" x="384" y="-814.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make PRs from external</text>
<text text-anchor="middle" x="384" y="-799.8" font-family="Times,serif" font-size="14.00" fill="#000000">repositories pass or skip</text>
<text text-anchor="middle" x="384" y="-784.8" font-family="Times,serif" font-size="14.00" fill="#000000">CI jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5125 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5125</title>
<g id="a_node6"><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="500,-759 268,-759 268,-691 500,-691 500,-759"/>
<text text-anchor="middle" x="384" y="-743.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5125</text>
<text text-anchor="middle" x="384" y="-728.8" font-family="Times,serif" font-size="14.00" fill="#000000">Avoid temporary failures</text>
<text text-anchor="middle" x="384" y="-713.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifying the first non&#45;</text>
<text text-anchor="middle" x="384" y="-698.8" font-family="Times,serif" font-size="14.00" fill="#000000">finalized block</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5102 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#5102</title>
<g id="a_node7"><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="500,-673 268,-673 268,-605 500,-605 500,-673"/>
<text text-anchor="middle" x="384" y="-657.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5102</text>
<text text-anchor="middle" x="384" y="-642.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make StateService</text>
<text text-anchor="middle" x="384" y="-627.8" font-family="Times,serif" font-size="14.00" fill="#000000">requests into concurrent</text>
<text text-anchor="middle" x="384" y="-612.8" font-family="Times,serif" font-size="14.00" fill="#000000">ReadStateService requests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5120 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5120</title>
<g id="a_node8"><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="500,-587 268,-587 268,-519 500,-519 500,-587"/>
<text text-anchor="middle" x="384" y="-571.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5120</text>
<text text-anchor="middle" x="384" y="-556.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prepare issue and</text>
<text text-anchor="middle" x="384" y="-541.8" font-family="Times,serif" font-size="14.00" fill="#000000">response templates for</text>
<text text-anchor="middle" x="384" y="-526.8" font-family="Times,serif" font-size="14.00" fill="#000000">user issues</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4821 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#4821</title>
<g id="a_node9"><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="500,-500.5 268,-500.5 268,-447.5 500,-447.5 500,-500.5"/>
<text text-anchor="middle" x="384" y="-485.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4821</text>
<text text-anchor="middle" x="384" y="-470.3" font-family="Times,serif" font-size="14.00" fill="#000000">Open the database in a</text>
<text text-anchor="middle" x="384" y="-455.3" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tokio thread</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5168 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5168</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5168" xlink:title="ZcashFoundation/zebra#5168&#10;Add Docker tests for&#10;default config and&#10;$ZEBRA_CONF_PATH" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-429 268,-429 268,-361 500,-361 500,-429"/>
<text text-anchor="middle" x="384" y="-413.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5168</text>
<text text-anchor="middle" x="384" y="-398.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Docker tests for</text>
<text text-anchor="middle" x="384" y="-383.8" font-family="Times,serif" font-size="14.00" fill="#000000">default config and</text>
<text text-anchor="middle" x="384" y="-368.8" font-family="Times,serif" font-size="14.00" fill="#000000">$ZEBRA_CONF_PATH</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2654 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#2654</title>
<g id="a_node11"><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="500,-343 268,-343 268,-245 500,-245 500,-343"/>
<text text-anchor="middle" x="384" y="-327.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2654</text>
<text text-anchor="middle" x="384" y="-312.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test if checkpoint</text>
<text text-anchor="middle" x="384" y="-297.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier and state</text>
<text text-anchor="middle" x="384" y="-282.8" font-family="Times,serif" font-size="14.00" fill="#000000">service are correctly</text>
<text text-anchor="middle" x="384" y="-267.8" font-family="Times,serif" font-size="14.00" fill="#000000">reset on block commit</text>
<text text-anchor="middle" x="384" y="-252.8" font-family="Times,serif" font-size="14.00" fill="#000000">errors</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4937</title>
<g id="a_node12"><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="500,-227 268,-227 268,-159 500,-159 500,-227"/>
<text text-anchor="middle" x="384" y="-211.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="384" y="-196.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to</text>
<text text-anchor="middle" x="384" y="-181.8" font-family="Times,serif" font-size="14.00" fill="#000000">state using a separate</text>
<text text-anchor="middle" x="384" y="-166.8" font-family="Times,serif" font-size="14.00" fill="#000000">task</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node13"><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="500,-140.5 268,-140.5 268,-87.5 500,-87.5 500,-140.5"/>
<text text-anchor="middle" x="384" y="-125.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="384" y="-110.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="384" y="-95.3" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node14"><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="500,-69.5 268,-69.5 268,-16.5 500,-16.5 500,-69.5"/>
<text text-anchor="middle" x="384" y="-54.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="384" y="-39.3" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="384" y="-24.3" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#4953</title>
<g id="a_node15"><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="768,-1262.5 536,-1262.5 536,-1209.5 768,-1209.5 768,-1262.5"/>
<text text-anchor="middle" x="652" y="-1247.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="652" y="-1232.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="652" y="-1217.3" font-family="Times,serif" font-size="14.00" fill="#000000">released Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M551.25,-1209.5C543.32,-1206.8 535.49,-1204 528,-1201 524,-1199.4 491.06,-1182.3 457.7,-1164.8"/>
<polygon fill="#000000" stroke="#000000" points="459.2493,-1161.6603 448.77,-1160.1 455.9891,-1167.8547 459.2493,-1161.6603"/>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node16"><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="768,-1191.5 536,-1191.5 536,-1138.5 768,-1138.5 768,-1191.5"/>
<text text-anchor="middle" x="652" y="-1176.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="652" y="-1161.3" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
<text text-anchor="middle" x="652" y="-1146.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node17"><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="1036,-858 804,-858 804,-790 1036,-790 1036,-858"/>
<text text-anchor="middle" x="920" y="-842.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="920" y="-827.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="920" y="-812.8" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="920" y="-797.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="M754.81,-1138.5C759.47,-1135.6 763.9,-1132.5 768,-1129 850.1,-1059.2 892.32,-934.31 909.85,-868.07"/>
<polygon fill="#000000" stroke="#000000" points="913.2487,-868.9067 912.35,-858.35 906.4693,-867.1629 913.2487,-868.9067"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node18"><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="1036,-1199 804,-1199 804,-1131 1036,-1131 1036,-1199"/>
<text text-anchor="middle" x="920" y="-1183.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="920" y="-1168.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="920" y="-1153.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="920" y="-1138.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="M768.38,-1165C776.71,-1165 785.14,-1165 793.53,-1165"/>
<polygon fill="#000000" stroke="#000000" points="793.74,-1168.5001 803.74,-1165 793.74,-1161.5001 793.74,-1168.5001"/>
</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="1031.5,-1340 808.5,-1340 808.5,-1302 1031.5,-1302 1031.5,-1340"/>
<text text-anchor="middle" x="920" y="-1324.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#755</text>
<text text-anchor="middle" x="920" y="-1309.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="edge8" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M756.08,-1191.5C760.32,-1194.4 764.33,-1197.5 768,-1201 799.04,-1230.4 773.23,-1263.2 801.67,-1294.8"/>
<polygon fill="#000000" stroke="#000000" points="799.483,-1297.5544 809.1,-1302 804.3543,-1292.5274 799.483,-1297.5544"/>
</g>
<!-- ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M917.89,-789.82C911.15,-713.95 883.14,-532.1 768,-455 679.37,-395.65 605.01,-381.19 528,-455 490.18,-491.24 540.49,-884.91 508,-926 507.78,-926.28 507.56,-926.56 507.33,-926.83"/>
<polygon fill="#000000" stroke="#000000" points="504.6309,-924.5888 500.26,-934.24 509.6955,-929.421 504.6309,-924.5888"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node22"><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="768,-876 536,-876 536,-808 768,-808 768,-876"/>
<text text-anchor="middle" x="652" y="-860.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="652" y="-845.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="652" y="-830.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="652" y="-815.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4956 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#4956</title>
<g id="a_node23"><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="768,-790 536,-790 536,-722 768,-722 768,-790"/>
<text text-anchor="middle" x="652" y="-774.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4956</text>
<text text-anchor="middle" x="652" y="-759.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make file locations</text>
<text text-anchor="middle" x="652" y="-744.8" font-family="Times,serif" font-size="14.00" fill="#000000">appear in zebrad Docker</text>
<text text-anchor="middle" x="652" y="-729.8" font-family="Times,serif" font-size="14.00" fill="#000000">error messages</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4976 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#4976</title>
<g id="a_node24"><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="768,-704 536,-704 536,-636 768,-636 768,-704"/>
<text text-anchor="middle" x="652" y="-688.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4976</text>
<text text-anchor="middle" x="652" y="-673.8" font-family="Times,serif" font-size="14.00" fill="#000000">Move continuous</text>
<text text-anchor="middle" x="652" y="-658.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployment to another</text>
<text text-anchor="middle" x="652" y="-643.8" font-family="Times,serif" font-size="14.00" fill="#000000">Google Cloud region</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4946 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#4946</title>
<g id="a_node25"><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="768,-617.5 536,-617.5 536,-534.5 768,-534.5 768,-617.5"/>
<text text-anchor="middle" x="652" y="-602.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4946</text>
<text text-anchor="middle" x="652" y="-587.3" font-family="Times,serif" font-size="14.00" fill="#000000">Managed instance groups</text>
<text text-anchor="middle" x="652" y="-572.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployed with continuous</text>
<text text-anchor="middle" x="652" y="-557.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployment can&#39;t scale</text>
<text text-anchor="middle" x="652" y="-542.3" font-family="Times,serif" font-size="14.00" fill="#000000">beyond 1 instance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node28"><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="227.5,-1291.5 4.5,-1291.5 4.5,-1238.5 227.5,-1238.5 227.5,-1291.5"/>
<text text-anchor="middle" x="116" y="-1276.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="116" y="-1261.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="116" y="-1246.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node29"><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="495.5,-1339 272.5,-1339 272.5,-1271 495.5,-1271 495.5,-1339"/>
<text text-anchor="middle" x="384" y="-1323.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="384" y="-1308.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="384" y="-1293.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="384" y="-1278.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="edge10" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M227.72,-1281.7C239.16,-1283.4 250.82,-1285.1 262.36,-1286.8"/>
<polygon fill="#000000" stroke="#000000" points="262.0458,-1290.2938 272.47,-1288.4 263.1401,-1283.3798 262.0458,-1290.2938"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node30"><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="500,-1252.5 268,-1252.5 268,-1199.5 500,-1199.5 500,-1252.5"/>
<text text-anchor="middle" x="384" y="-1237.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="384" y="-1222.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="384" y="-1207.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="edge11" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M227.72,-1248.7C237.63,-1247.3 247.7,-1245.8 257.72,-1244.4"/>
<polygon fill="#000000" stroke="#000000" points="258.3406,-1247.8461 267.71,-1242.9 257.3011,-1240.9237 258.3406,-1247.8461"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node31"><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="227.5,-1348 4.5,-1348 4.5,-1310 227.5,-1310 227.5,-1348"/>
<text text-anchor="middle" x="116" y="-1332.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="116" y="-1317.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node32"><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="232,-1434 0,-1434 0,-1366 232,-1366 232,-1434"/>
<text text-anchor="middle" x="116" y="-1418.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="116" y="-1403.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="116" y="-1388.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="116" y="-1373.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1505.5 0,-1505.5 0,-1452.5 232,-1452.5 232,-1505.5"/>
<text text-anchor="middle" x="116" y="-1490.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-1475.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-1460.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1576.5 0,-1576.5 0,-1523.5 232,-1523.5 232,-1576.5"/>
<text text-anchor="middle" x="116" y="-1561.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="116" y="-1546.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="116" y="-1531.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4894 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#4894</title>
<g id="a_node35"><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="232,-1002.5 0,-1002.5 0,-919.5 232,-919.5 232,-1002.5"/>
<text text-anchor="middle" x="116" y="-987.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="116" y="-972.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="116" y="-957.3" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="116" y="-942.3" font-family="Times,serif" font-size="14.00" fill="#000000">goes all the way to the</text>
<text text-anchor="middle" x="116" y="-927.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="edge12" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M232.38,-961C240.71,-961 249.14,-961 257.53,-961"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-964.5001 267.74,-961 257.74,-957.5001 257.74,-964.5001"/>
</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="232,-1647.5 0,-1647.5 0,-1594.5 232,-1594.5 232,-1647.5"/>
<text text-anchor="middle" x="116" y="-1632.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="116" y="-1617.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="116" y="-1602.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="500,-1784.5 268,-1784.5 268,-1731.5 500,-1731.5 500,-1784.5"/>
<text text-anchor="middle" x="384" y="-1769.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="384" y="-1754.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="384" y="-1739.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="232,-1950.5 0,-1950.5 0,-1867.5 232,-1867.5 232,-1950.5"/>
<text text-anchor="middle" x="116" y="-1935.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="116" y="-1920.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="116" y="-1905.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="116" y="-1890.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="116" y="-1875.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="232,-2021.5 0,-2021.5 0,-1968.5 232,-1968.5 232,-2021.5"/>
<text text-anchor="middle" x="116" y="-2006.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="116" y="-1991.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="116" y="-1976.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="232,-1849.5 0,-1849.5 0,-1766.5 232,-1766.5 232,-1849.5"/>
<text text-anchor="middle" x="116" y="-1834.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-1819.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1804.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1789.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-1774.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="edge13" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-1786.3C240.81,-1784.7 249.33,-1783.1 257.81,-1781.5"/>
<polygon fill="#000000" stroke="#000000" points="258.5246,-1784.9276 267.74,-1779.7 257.2761,-1778.0398 258.5246,-1784.9276"/>
</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="232,-1748.5 0,-1748.5 0,-1665.5 232,-1665.5 232,-1748.5"/>
<text text-anchor="middle" x="116" y="-1733.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-1718.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1703.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1688.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-1673.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="edge14" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-1729.1C240.81,-1730.8 249.33,-1732.4 257.81,-1734"/>
<polygon fill="#000000" stroke="#000000" points="257.2604,-1737.4583 267.74,-1735.9 258.576,-1730.583 257.2604,-1737.4583"/>
</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="232,-2092.5 0,-2092.5 0,-2039.5 232,-2039.5 232,-2092.5"/>
<text text-anchor="middle" x="116" y="-2077.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5011</text>
<text text-anchor="middle" x="116" y="-2062.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="116" y="-2047.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="232,-2193.5 0,-2193.5 0,-2110.5 232,-2110.5 232,-2193.5"/>
<text text-anchor="middle" x="116" y="-2178.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-2163.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-2148.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-2133.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-2118.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="500,-2186 268,-2186 268,-2118 500,-2118 500,-2186"/>
<text text-anchor="middle" x="384" y="-2170.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="384" y="-2155.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="384" y="-2140.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="384" y="-2125.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="edge15" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M232.38,-2152C240.71,-2152 249.14,-2152 257.53,-2152"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-2155.5001 267.74,-2152 257.74,-2148.5001 257.74,-2155.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>