developers/zcash-zf-dag.html

806 lines
61 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="919pt" height="2287pt"
viewBox="0.00 0.00 919.00 2286.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 2282.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2282.5 915,-2282.5 915,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="0,-569 0,-706 383,-706 383,-569 0,-569"/>
<text text-anchor="middle" x="191.5" y="-690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to state using a separate task</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="67,-382 67,-561 651,-561 651,-382 67,-382"/>
<text text-anchor="middle" x="359" y="-545.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidate</text>
</g>
<!-- ZcashFoundation/zebra#2654 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#2654</title>
<g id="a_node1"><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,-675 75,-675 75,-577 307,-577 307,-675"/>
<text text-anchor="middle" x="191" y="-659.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2654</text>
<text text-anchor="middle" x="191" y="-644.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test if checkpoint</text>
<text text-anchor="middle" x="191" y="-629.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier and state</text>
<text text-anchor="middle" x="191" y="-614.8" font-family="Times,serif" font-size="14.00" fill="#000000">service are correctly</text>
<text text-anchor="middle" x="191" y="-599.8" font-family="Times,serif" font-size="14.00" fill="#000000">reset on block commit</text>
<text text-anchor="middle" x="191" y="-584.8" font-family="Times,serif" font-size="14.00" fill="#000000">errors</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="643,-529.5 411,-529.5 411,-476.5 643,-476.5 643,-529.5"/>
<text text-anchor="middle" x="527" y="-514.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="527" y="-499.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="-484.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2654&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#2654&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.12,-591.14C332.3,-583.02 358.67,-574.08 383,-565 408.33,-555.55 435.68,-544.1 459.67,-533.63"/>
<polygon fill="#000000" stroke="#000000" points="461.2875,-536.7422 469.03,-529.51 458.4674,-530.3354 461.2875,-536.7422"/>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node5"><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,-608.5 679,-608.5 679,-604.5 675,-604.5 675,-600.5 679,-600.5 679,-563.5 675,-563.5 675,-559.5 679,-559.5 679,-555.5 911,-555.5 911,-608.5"/>
<polyline fill="none" stroke="#000000" points="679,-604.5 683,-604.5 683,-600.5 679,-600.5 "/>
<polyline fill="none" stroke="#000000" points="679,-563.5 683,-563.5 683,-559.5 679,-559.5 "/>
<text text-anchor="middle" x="795" y="-593.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="795" y="-578.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="795" y="-563.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="edge3" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M616.99,-529.53C642.07,-536.92 669.46,-544.99 695.07,-552.54"/>
<polygon fill="#000000" stroke="#000000" points="694.2183,-555.9378 704.8,-555.41 696.1988,-549.2238 694.2183,-555.9378"/>
</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,-537 679,-537 679,-469 911,-469 911,-537"/>
<text text-anchor="middle" x="795" y="-521.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4955</text>
<text text-anchor="middle" x="795" y="-506.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make long&#45;running test</text>
<text text-anchor="middle" x="795" y="-491.8" font-family="Times,serif" font-size="14.00" fill="#000000">names match workflow</text>
<text text-anchor="middle" x="795" y="-476.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="edge4" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4955</title>
<path fill="none" stroke="#000000" d="M643.38,-503C651.71,-503 660.14,-503 668.53,-503"/>
<polygon fill="#000000" stroke="#000000" points="668.74,-506.5001 678.74,-503 668.74,-499.5001 668.74,-506.5001"/>
</g>
<!-- ZcashFoundation/zebra#4992 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#4992</title>
<g id="a_node7"><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,-450.5 679,-450.5 679,-397.5 911,-397.5 911,-450.5"/>
<text text-anchor="middle" x="795" y="-435.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="795" y="-420.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="795" y="-405.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="edge5" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992</title>
<path fill="none" stroke="#000000" d="M616.99,-476.47C642.07,-469.08 669.46,-461.01 695.07,-453.46"/>
<polygon fill="#000000" stroke="#000000" points="696.1988,-456.7762 704.8,-450.59 694.2183,-450.0622 696.1988,-456.7762"/>
</g>
<!-- ZcashFoundation/zebra#4937 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4937</title>
<g id="a_node3"><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,-530 75,-530 75,-462 307,-462 307,-530"/>
<text text-anchor="middle" x="191" y="-514.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="191" y="-499.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to</text>
<text text-anchor="middle" x="191" y="-484.8" font-family="Times,serif" font-size="14.00" fill="#000000">state using a separate</text>
<text text-anchor="middle" x="191" y="-469.8" font-family="Times,serif" font-size="14.00" fill="#000000">task</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#4937&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.1,-498.42C337.27,-499.05 369.91,-499.73 400.57,-500.37"/>
<polygon fill="#000000" stroke="#000000" points="400.8208,-503.8757 410.89,-500.58 400.9633,-496.8772 400.8208,-503.8757"/>
</g>
<!-- ZcashFoundation/zebra#5189 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5189</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5189" xlink:title="ZcashFoundation/zebra#5189&#10;Run some docker tests on&#10;smaller instances" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-373.5 411,-373.5 411,-320.5 643,-320.5 643,-373.5"/>
<text text-anchor="middle" x="527" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5189</text>
<text text-anchor="middle" x="527" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run some docker tests on</text>
<text text-anchor="middle" x="527" y="-328.3" font-family="Times,serif" font-size="14.00" fill="#000000">smaller instances</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937&#45;&gt;ZcashFoundation/zebra#5189 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#4937&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M307.01,-488.98C334.43,-482.5 361.82,-471.46 383,-453 407.52,-431.63 388.6,-406.65 409.32,-380.88"/>
<polygon fill="#000000" stroke="#000000" points="411.9025,-383.2437 416.29,-373.6 406.8462,-378.4027 411.9025,-383.2437"/>
</g>
<!-- ZcashFoundation/zebra#5214 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5214</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5214" xlink:title="ZcashFoundation/zebra#5214&#10;Task: Make a list of&#10;Zebra dependencies" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-443.5 75,-443.5 75,-390.5 307,-390.5 307,-443.5"/>
<text text-anchor="middle" x="191" y="-428.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5214</text>
<text text-anchor="middle" x="191" y="-413.3" font-family="Times,serif" font-size="14.00" fill="#000000">Task: Make a list of</text>
<text text-anchor="middle" x="191" y="-398.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra dependencies</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5257 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#5257</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5257" xlink:title="ZcashFoundation/zebra#5257&#10;change(state): Write non&#45;&#10;finalized blocks to the&#10;state in a separate&#10;thread, to avoid network&#10;and RPC hangs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-372 75,-372 75,-368 71,-368 71,-364 75,-364 75,-282 71,-282 71,-278 75,-278 75,-274 307,-274 307,-372"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-368 79,-368 79,-364 75,-364 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-282 79,-282 79,-278 75,-278 "/>
<text text-anchor="middle" x="191" y="-356.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5257</text>
<text text-anchor="middle" x="191" y="-341.8" font-family="Times,serif" font-size="14.00" fill="#000000">change(state): Write non&#45;</text>
<text text-anchor="middle" x="191" y="-326.8" font-family="Times,serif" font-size="14.00" fill="#000000">finalized blocks to the</text>
<text text-anchor="middle" x="191" y="-311.8" font-family="Times,serif" font-size="14.00" fill="#000000">state in a separate</text>
<text text-anchor="middle" x="191" y="-296.8" font-family="Times,serif" font-size="14.00" fill="#000000">thread, to avoid network</text>
<text text-anchor="middle" x="191" y="-281.8" font-family="Times,serif" font-size="14.00" fill="#000000">and RPC hangs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5257&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#5257&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.17,-347.47C332.98,-355.29 359.61,-365.31 383,-378 426.94,-401.83 469.15,-441.04 496.38,-469.19"/>
<polygon fill="#000000" stroke="#000000" points="493.8768,-471.6366 503.31,-476.46 498.9436,-466.8067 493.8768,-471.6366"/>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5297" xlink:title="ZcashFoundation/zebra#5297&#10;Add metrics for chain&#10;fork work and lengths" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-302.5 411,-302.5 411,-249.5 643,-249.5 643,-302.5"/>
<text text-anchor="middle" x="527" y="-287.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="527" y="-272.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="527" y="-257.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5257&#45;&gt;ZcashFoundation/zebra#5297 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#5257&#45;&gt;ZcashFoundation/zebra#5297</title>
<path fill="none" stroke="#000000" d="M307.1,-306.76C337.4,-302.52 370.19,-297.93 400.97,-293.63"/>
<polygon fill="#000000" stroke="#000000" points="401.4725,-297.0939 410.89,-292.24 400.501,-290.1616 401.4725,-297.0939"/>
</g>
<!-- ZcashFoundation/zebra#5308 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#5308</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5308" xlink:title="ZcashFoundation/zebra#5308&#10;fix(deps): Update yanked&#10;versions of cpufeatures&#10;(orchard/aes), ed25519&#10;(tor), and quick&#45;xml&#10;(flamegraph)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-812 75,-812 75,-808 71,-808 71,-804 75,-804 75,-722 71,-722 71,-718 75,-718 75,-714 307,-714 307,-812"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-808 79,-808 79,-804 75,-804 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-722 79,-722 79,-718 75,-718 "/>
<text text-anchor="middle" x="191" y="-796.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5308</text>
<text text-anchor="middle" x="191" y="-781.8" font-family="Times,serif" font-size="14.00" fill="#000000">fix(deps): Update yanked</text>
<text text-anchor="middle" x="191" y="-766.8" font-family="Times,serif" font-size="14.00" fill="#000000">versions of cpufeatures</text>
<text text-anchor="middle" x="191" y="-751.8" font-family="Times,serif" font-size="14.00" fill="#000000">(orchard/aes), ed25519</text>
<text text-anchor="middle" x="191" y="-736.8" font-family="Times,serif" font-size="14.00" fill="#000000">(tor), and quick&#45;xml</text>
<text text-anchor="middle" x="191" y="-721.8" font-family="Times,serif" font-size="14.00" fill="#000000">(flamegraph)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5308&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#5308&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.21,-744.74C333.72,-736.95 360.64,-725.84 383,-710 445.5,-665.74 489.83,-585.3 511.63,-538.8"/>
<polygon fill="#000000" stroke="#000000" points="514.8168,-540.2472 515.82,-529.7 508.4584,-537.3196 514.8168,-540.2472"/>
</g>
<!-- ZcashFoundation/zebra#4894 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4894</title>
<g id="a_node12"><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,-169.5 75,-169.5 75,-86.5 307,-86.5 307,-169.5"/>
<text text-anchor="middle" x="191" y="-154.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="191" y="-139.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="191" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="191" y="-109.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="-94.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="edge10" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.06,-136.34C335.56,-143.89 363.46,-156.91 383,-179 443.34,-247.22 371.33,-300.02 411,-382 427.77,-416.66 458.19,-447.81 483.68,-469.83"/>
<polygon fill="#000000" stroke="#000000" points="481.5046,-472.5741 491.4,-476.36 486.0253,-467.2296 481.5046,-472.5741"/>
</g>
<!-- ZcashFoundation/zebra#5316 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#5316</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5316" xlink:title="ZcashFoundation/zebra#5316&#10;Only run the&#10;`lightwalletd` full sync&#10;on the `main` branch" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-68 411,-68 411,0 643,0 643,-68"/>
<text text-anchor="middle" x="527" y="-52.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5316</text>
<text text-anchor="middle" x="527" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Only run the</text>
<text text-anchor="middle" x="527" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">`lightwalletd` full sync</text>
<text text-anchor="middle" x="527" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">on the `main` branch</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#5316 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#5316</title>
<path fill="none" stroke="#000000" d="M307.15,-97.758C332.21,-91.064 358.52,-83.905 383,-77 389.99,-75.028 397.17,-72.976 404.4,-70.885"/>
<polygon fill="#000000" stroke="#000000" points="405.6622,-74.1632 414.29,-68.014 403.7107,-67.4407 405.6622,-74.1632"/>
</g>
<!-- ZcashFoundation/zebra#5015 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5015</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5015" xlink:title="ZcashFoundation/zebra#5015&#10;Get transactions from the&#10;non&#45;finalized state in&#10;the send transactions&#10;test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-169.5 411,-169.5 411,-86.5 643,-86.5 643,-169.5"/>
<text text-anchor="middle" x="527" y="-154.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5015</text>
<text text-anchor="middle" x="527" y="-139.3" font-family="Times,serif" font-size="14.00" fill="#000000">Get transactions from the</text>
<text text-anchor="middle" x="527" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">non&#45;finalized state in</text>
<text text-anchor="middle" x="527" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">the send transactions</text>
<text text-anchor="middle" x="527" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#5015 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#5015</title>
<path fill="none" stroke="#000000" d="M307.1,-128C337.27,-128 369.91,-128 400.57,-128"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-131.5001 410.89,-128 400.89,-124.5001 400.89,-131.5001"/>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2375" xlink:title="ZcashFoundation/zebra#2375&#10;Allow different `zebra&#45;&#10;network` apps to use&#10;different user agents" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1056 75,-1056 75,-988 307,-988 307,-1056"/>
<text text-anchor="middle" x="191" y="-1040.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="191" y="-1025.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="191" y="-1010.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="191" y="-995.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node16" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/794" xlink:title="ZcashFoundation/zebra#794&#10;Make sure custom user&#10;agents conform to BIP&#45;14" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="638.5,-1048.5 415.5,-1048.5 415.5,-995.5 638.5,-995.5 638.5,-1048.5"/>
<text text-anchor="middle" x="527" y="-1033.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="527" y="-1018.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="527" y="-1003.3" font-family="Times,serif" font-size="14.00" fill="#000000">agents conform to BIP&#45;14</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M307.1,-1022C338.77,-1022 373.16,-1022 405.14,-1022"/>
<polygon fill="#000000" stroke="#000000" points="405.43,-1025.5001 415.43,-1022 405.43,-1018.5001 405.43,-1025.5001"/>
</g>
<!-- ZcashFoundation/zebra#5069 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#5069</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5069" xlink:title="ZcashFoundation/zebra#5069&#10;Fix &quot;Connection closed by&#10;remote host&quot; error on&#10;Google Cloud ssh" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-68 75,-68 75,0 307,0 307,-68"/>
<text text-anchor="middle" x="191" y="-52.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5069</text>
<text text-anchor="middle" x="191" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix &quot;Connection closed by</text>
<text text-anchor="middle" x="191" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">remote host&quot; error on</text>
<text text-anchor="middle" x="191" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">Google Cloud ssh</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5069&#45;&gt;ZcashFoundation/zebra#5316 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#5069&#45;&gt;ZcashFoundation/zebra#5316</title>
<path fill="none" stroke="#000000" d="M307.1,-34C337.27,-34 369.91,-34 400.57,-34"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-37.5001 410.89,-34 400.89,-30.5001 400.89,-37.5001"/>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node18"><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="643,-943 411,-943 411,-875 643,-875 643,-943"/>
<text text-anchor="middle" x="527" y="-927.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="527" y="-912.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="527" y="-897.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="527" y="-882.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5235 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#5235</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5235" xlink:title="ZcashFoundation/zebra#5235&#10;Add support for&#10;`getblocktemplate` RPC&#10;call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-924 679,-924 679,-856 911,-856 911,-924"/>
<text text-anchor="middle" x="795" y="-908.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5235</text>
<text text-anchor="middle" x="795" y="-893.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="795" y="-878.8" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` RPC</text>
<text text-anchor="middle" x="795" y="-863.8" font-family="Times,serif" font-size="14.00" fill="#000000">call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631&#45;&gt;ZcashFoundation/zebra#5235 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#2631&#45;&gt;ZcashFoundation/zebra#5235</title>
<path fill="none" stroke="#000000" d="M643.38,-900.75C651.71,-900.16 660.14,-899.56 668.53,-898.97"/>
<polygon fill="#000000" stroke="#000000" points="669.0151,-902.4443 678.74,-898.24 668.5158,-895.4622 669.0151,-902.4443"/>
</g>
<!-- ZcashFoundation/zebra#5236 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#5236</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5236" xlink:title="ZcashFoundation/zebra#5236&#10;Add support for&#10;`submitblock` RPC call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-995.5 679,-995.5 679,-942.5 911,-942.5 911,-995.5"/>
<text text-anchor="middle" x="795" y="-980.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5236</text>
<text text-anchor="middle" x="795" y="-965.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="795" y="-950.3" font-family="Times,serif" font-size="14.00" fill="#000000">`submitblock` RPC call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631&#45;&gt;ZcashFoundation/zebra#5236 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#2631&#45;&gt;ZcashFoundation/zebra#5236</title>
<path fill="none" stroke="#000000" d="M643.38,-935.06C651.81,-936.94 660.33,-938.85 668.81,-940.75"/>
<polygon fill="#000000" stroke="#000000" points="668.2173,-944.2038 678.74,-942.97 669.7446,-937.3725 668.2173,-944.2038"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node21"><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,-1127.5 75,-1127.5 75,-1074.5 307,-1074.5 307,-1127.5"/>
<text text-anchor="middle" x="191" y="-1112.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="191" y="-1097.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="191" y="-1082.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node22"><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,-1198.5 75,-1198.5 75,-1145.5 307,-1145.5 307,-1198.5"/>
<text text-anchor="middle" x="191" y="-1183.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="191" y="-1168.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="191" y="-1153.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#4953</title>
<g id="a_node23"><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="307,-1269.5 75,-1269.5 75,-1216.5 307,-1216.5 307,-1269.5"/>
<text text-anchor="middle" x="191" y="-1254.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="191" y="-1239.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="191" y="-1224.3" font-family="Times,serif" font-size="14.00" fill="#000000">released Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node24"><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="643,-1277 411,-1277 411,-1209 643,-1209 643,-1277"/>
<text text-anchor="middle" x="527" y="-1261.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="527" y="-1246.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="527" y="-1231.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="527" y="-1216.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="edge17" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M307.1,-1243C337.27,-1243 369.91,-1243 400.57,-1243"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-1246.5001 410.89,-1243 400.89,-1239.5001 400.89,-1246.5001"/>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node25"><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" stroke-width="2" points="307,-970 75,-970 75,-902 307,-902 307,-970"/>
<text text-anchor="middle" x="191" y="-954.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="191" y="-939.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="191" y="-924.8" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="191" y="-909.8" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate series</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.48,-931.73C335.47,-925.29 363.01,-913.59 383,-893 428.72,-845.91 390.57,-810.38 411,-748 436.47,-670.22 480.87,-585.05 506.72,-538.43"/>
<polygon fill="#000000" stroke="#000000" points="509.814,-540.068 511.63,-529.63 503.7011,-536.6573 509.814,-540.068"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node26"><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" stroke-width="2" points="307,-1356 75,-1356 75,-1288 307,-1288 307,-1356"/>
<text text-anchor="middle" x="191" y="-1340.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="191" y="-1325.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="191" y="-1310.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="191" y="-1295.8" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node27"><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,-1427.5 75,-1427.5 75,-1374.5 307,-1374.5 307,-1427.5"/>
<text text-anchor="middle" x="191" y="-1412.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="191" y="-1397.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="191" y="-1382.3" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node28" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node28"><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,-1563.5 411,-1563.5 411,-1510.5 643,-1510.5 643,-1563.5"/>
<text text-anchor="middle" x="527" y="-1548.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="527" y="-1533.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="527" y="-1518.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node29" class="node closed">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node29"><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="#fad8c7" stroke="#000000" points="643,-1716 411,-1716 411,-1648 643,-1648 643,-1716"/>
<text text-anchor="middle" x="527" y="-1700.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="527" y="-1685.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="527" y="-1670.8" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="527" y="-1655.8" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5091 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#5091</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5091" xlink:title="ZcashFoundation/zebra#5091&#10;Fix parameter download&#10;hangs with Rust 1.64" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-883.5 75,-883.5 75,-830.5 307,-830.5 307,-883.5"/>
<text text-anchor="middle" x="191" y="-868.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5091</text>
<text text-anchor="middle" x="191" y="-853.3" font-family="Times,serif" font-size="14.00" fill="#000000">Fix parameter download</text>
<text text-anchor="middle" x="191" y="-838.3" font-family="Times,serif" font-size="14.00" fill="#000000">hangs with Rust 1.64</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5091&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#5091&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.17,-854.34C334.43,-848.84 361.7,-838.75 383,-821 409.69,-798.75 397.33,-779.95 411,-748 443.3,-672.51 485.45,-586.11 509.03,-538.74"/>
<polygon fill="#000000" stroke="#000000" points="512.2974,-540.0307 513.63,-529.52 506.0337,-536.9056 512.2974,-540.0307"/>
</g>
<!-- ZcashFoundation/zebra#5164 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#5164</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5164" xlink:title="ZcashFoundation/zebra#5164&#10;fix(test): Wait for&#10;zebrad and lightwalletd&#10;to reach the tip in&#10;tests, to improve test&#10;coverage" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1832 75,-1832 75,-1828 71,-1828 71,-1824 75,-1824 75,-1742 71,-1742 71,-1738 75,-1738 75,-1734 307,-1734 307,-1832"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-1828 79,-1828 79,-1824 75,-1824 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-1742 79,-1742 79,-1738 75,-1738 "/>
<text text-anchor="middle" x="191" y="-1816.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5164</text>
<text text-anchor="middle" x="191" y="-1801.8" font-family="Times,serif" font-size="14.00" fill="#000000">fix(test): Wait for</text>
<text text-anchor="middle" x="191" y="-1786.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad and lightwalletd</text>
<text text-anchor="middle" x="191" y="-1771.8" font-family="Times,serif" font-size="14.00" fill="#000000">to reach the tip in</text>
<text text-anchor="middle" x="191" y="-1756.8" font-family="Times,serif" font-size="14.00" fill="#000000">tests, to improve test</text>
<text text-anchor="middle" x="191" y="-1741.8" font-family="Times,serif" font-size="14.00" fill="#000000">coverage</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#5153</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5153" xlink:title="ZcashFoundation/zebra#5153&#10;Tag Google Cloud&#10;instances with the name&#10;of the test or workflow" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1918 75,-1918 75,-1850 307,-1850 307,-1918"/>
<text text-anchor="middle" x="191" y="-1902.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5153</text>
<text text-anchor="middle" x="191" y="-1887.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Google Cloud</text>
<text text-anchor="middle" x="191" y="-1872.8" font-family="Times,serif" font-size="14.00" fill="#000000">instances with the name</text>
<text text-anchor="middle" x="191" y="-1857.8" font-family="Times,serif" font-size="14.00" fill="#000000">of the test or workflow</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5155 -->
<g id="node33" class="node closed">
<title>ZcashFoundation/zebra#5155</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5155" xlink:title="ZcashFoundation/zebra#5155&#10;Decide if we want to&#10;create cached states more&#10;often" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="643,-1961 411,-1961 411,-1893 643,-1893 643,-1961"/>
<text text-anchor="middle" x="527" y="-1945.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5155</text>
<text text-anchor="middle" x="527" y="-1930.8" font-family="Times,serif" font-size="14.00" fill="#000000">Decide if we want to</text>
<text text-anchor="middle" x="527" y="-1915.8" font-family="Times,serif" font-size="14.00" fill="#000000">create cached states more</text>
<text text-anchor="middle" x="527" y="-1900.8" font-family="Times,serif" font-size="14.00" fill="#000000">often</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5155 -->
<g id="edge20" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5155</title>
<path fill="none" stroke="#000000" d="M307.1,-1898.9C337.27,-1902.7 369.91,-1906.9 400.57,-1910.8"/>
<polygon fill="#000000" stroke="#000000" points="400.5309,-1914.3227 410.89,-1912.1 401.4059,-1907.3775 400.5309,-1914.3227"/>
</g>
<!-- ZcashFoundation/zebra#5188 -->
<g id="node34" class="node closed">
<title>ZcashFoundation/zebra#5188</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5188" xlink:title="ZcashFoundation/zebra#5188&#10;Reduce continuous&#10;deployment instance group&#10;size to 1" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="643,-1875 411,-1875 411,-1807 643,-1807 643,-1875"/>
<text text-anchor="middle" x="527" y="-1859.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5188</text>
<text text-anchor="middle" x="527" y="-1844.8" font-family="Times,serif" font-size="14.00" fill="#000000">Reduce continuous</text>
<text text-anchor="middle" x="527" y="-1829.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployment instance group</text>
<text text-anchor="middle" x="527" y="-1814.8" font-family="Times,serif" font-size="14.00" fill="#000000">size to 1</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5188 -->
<g id="edge21" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5188</title>
<path fill="none" stroke="#000000" d="M307.1,-1869.1C337.27,-1865.3 369.91,-1861.1 400.57,-1857.2"/>
<polygon fill="#000000" stroke="#000000" points="401.4059,-1860.6225 410.89,-1855.9 400.5309,-1853.6773 401.4059,-1860.6225"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node35"><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,-2019.5 75,-2019.5 75,-1936.5 307,-1936.5 307,-2019.5"/>
<text text-anchor="middle" x="191" y="-2004.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="191" y="-1989.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="191" y="-1974.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="191" y="-1959.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="191" y="-1944.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3096" xlink:title="ZcashFoundation/zebra#3096&#10;Epic: Zebra Release&#10;Candidate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2090.5 75,-2090.5 75,-2037.5 307,-2037.5 307,-2090.5"/>
<text text-anchor="middle" x="191" y="-2075.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="191" y="-2060.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="191" y="-2045.3" font-family="Times,serif" font-size="14.00" fill="#000000">Candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node37"><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,-1629.5 75,-1629.5 75,-1546.5 307,-1546.5 307,-1629.5"/>
<text text-anchor="middle" x="191" y="-1614.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="191" y="-1599.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-1584.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-1569.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="191" y="-1554.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="edge22" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-1570.4C337.4,-1565.8 370.19,-1560.8 400.97,-1556.1"/>
<polygon fill="#000000" stroke="#000000" points="401.5257,-1559.5558 410.89,-1554.6 400.4791,-1552.6345 401.5257,-1559.5558"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node38"><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,-1528.5 75,-1528.5 75,-1445.5 307,-1445.5 307,-1528.5"/>
<text text-anchor="middle" x="191" y="-1513.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="191" y="-1498.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-1483.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-1468.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="191" y="-1453.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="edge23" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-1504.3C337.4,-1508.8 370.19,-1513.7 400.97,-1518.2"/>
<polygon fill="#000000" stroke="#000000" points="400.4791,-1521.6655 410.89,-1519.7 401.5257,-1514.7442 400.4791,-1521.6655"/>
</g>
<!-- ZcashFoundation/zebra#5305 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#5305</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5305" xlink:title="ZcashFoundation/zebra#5305&#10;Add a `getblocktemplate&#45;&#10;rpcs` feature to `zebrad`&#10;and `zebra&#45;rpc`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="643,-825 411,-825 411,-757 643,-757 643,-825"/>
<text text-anchor="middle" x="527" y="-809.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5305</text>
<text text-anchor="middle" x="527" y="-794.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a `getblocktemplate&#45;</text>
<text text-anchor="middle" x="527" y="-779.8" font-family="Times,serif" font-size="14.00" fill="#000000">rpcs` feature to `zebrad`</text>
<text text-anchor="middle" x="527" y="-764.8" font-family="Times,serif" font-size="14.00" fill="#000000">and `zebra&#45;rpc`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#4967 -->
<g id="edge24" class="edge">
<title>ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M548.56,-756.68C574.8,-717.63 622.65,-654.55 679,-618 681.57,-616.33 684.22,-614.74 686.94,-613.21"/>
<polygon fill="#000000" stroke="#000000" points="688.5646,-616.3102 695.81,-608.58 685.3254,-610.1047 688.5646,-616.3102"/>
</g>
<!-- ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5235 -->
<g id="edge25" class="edge">
<title>ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5235</title>
<path fill="none" stroke="#000000" d="M619.23,-825.07C643.02,-833.86 668.77,-843.37 693.03,-852.33"/>
<polygon fill="#000000" stroke="#000000" points="692.0068,-855.6832 702.6,-855.87 694.4354,-849.118 692.0068,-855.6832"/>
</g>
<!-- ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5236 -->
<g id="edge26" class="edge">
<title>ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5236</title>
<path fill="none" stroke="#000000" d="M600.38,-825C618.68,-836.09 637.04,-849.8 651,-866 672.07,-890.45 655.12,-911.29 679,-933 680.31,-934.19 681.67,-935.35 683.05,-936.47"/>
<polygon fill="#000000" stroke="#000000" points="681.1988,-939.4499 691.36,-942.45 685.2875,-933.7681 681.1988,-939.4499"/>
</g>
<!-- ZcashFoundation/zebra#5268 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#5268</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5268" xlink:title="ZcashFoundation/zebra#5268&#10;Add support for&#10;`getblockhash` RPC call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-766.5 679,-766.5 679,-713.5 911,-713.5 911,-766.5"/>
<text text-anchor="middle" x="795" y="-751.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5268</text>
<text text-anchor="middle" x="795" y="-736.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="795" y="-721.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getblockhash` RPC call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5268 -->
<g id="edge27" class="edge">
<title>ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5268</title>
<path fill="none" stroke="#000000" d="M643.38,-768.85C651.81,-767.25 660.33,-765.63 668.81,-764.01"/>
<polygon fill="#000000" stroke="#000000" points="669.5708,-767.4281 678.74,-762.12 668.2619,-760.5516 669.5708,-767.4281"/>
</g>
<!-- ZcashFoundation/zebra#5302 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#5302</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5302" xlink:title="ZcashFoundation/zebra#5302&#10;Add support for&#10;`getblocksubsidy` RPC&#10;call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-695 679,-695 679,-627 911,-627 911,-695"/>
<text text-anchor="middle" x="795" y="-679.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5302</text>
<text text-anchor="middle" x="795" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="795" y="-649.8" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocksubsidy` RPC</text>
<text text-anchor="middle" x="795" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5302 -->
<g id="edge28" class="edge">
<title>ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5302</title>
<path fill="none" stroke="#000000" d="M582.58,-756.85C610.9,-740.15 646.2,-720.39 679,-705 683.28,-702.99 687.69,-701 692.16,-699.04"/>
<polygon fill="#000000" stroke="#000000" points="693.5945,-702.2332 701.41,-695.08 690.8395,-695.7981 693.5945,-702.2332"/>
</g>
<!-- ZcashFoundation/zebra#5303 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#5303</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5303" xlink:title="ZcashFoundation/zebra#5303&#10;Add support for&#10;`getblockcount` RPC call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="911,-837.5 679,-837.5 679,-784.5 911,-784.5 911,-837.5"/>
<text text-anchor="middle" x="795" y="-822.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5303</text>
<text text-anchor="middle" x="795" y="-807.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="795" y="-792.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getblockcount` RPC call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5303 -->
<g id="edge29" class="edge">
<title>ZcashFoundation/zebra#5305&#45;&gt;ZcashFoundation/zebra#5303</title>
<path fill="none" stroke="#000000" d="M643.38,-799.69C651.71,-800.31 660.14,-800.94 668.53,-801.56"/>
<polygon fill="#000000" stroke="#000000" points="668.5077,-805.0679 678.74,-802.32 669.0274,-798.0873 668.5077,-805.0679"/>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node43"><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="307,-1716 75,-1716 75,-1648 307,-1648 307,-1716"/>
<text text-anchor="middle" x="191" y="-1700.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="191" y="-1685.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="191" y="-1670.8" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="191" y="-1655.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="edge30" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M307.1,-1682C337.27,-1682 369.91,-1682 400.57,-1682"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-1685.5001 410.89,-1682 400.89,-1678.5001 400.89,-1685.5001"/>
</g>
<!-- ZcashFoundation/zebra#5199 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#5199</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5199" xlink:title="ZcashFoundation/zebra#5199&#10;Consider using `nextest`&#10;to run tests faster and&#10;reduce Google Cloud costs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-256 75,-256 75,-188 307,-188 307,-256"/>
<text text-anchor="middle" x="191" y="-240.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5199</text>
<text text-anchor="middle" x="191" y="-225.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider using `nextest`</text>
<text text-anchor="middle" x="191" y="-210.8" font-family="Times,serif" font-size="14.00" fill="#000000">to run tests faster and</text>
<text text-anchor="middle" x="191" y="-195.8" font-family="Times,serif" font-size="14.00" fill="#000000">reduce Google Cloud costs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5199&#45;&gt;ZcashFoundation/zebra#5189 -->
<g id="edge31" class="edge">
<title>ZcashFoundation/zebra#5199&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M307.23,-232.5C333.89,-238.97 360.86,-249.12 383,-265 402.45,-278.95 392.13,-296.28 411,-311 412.79,-312.4 414.63,-313.74 416.53,-315.03"/>
<polygon fill="#000000" stroke="#000000" points="414.7511,-318.0453 425.09,-320.36 418.4511,-312.1031 414.7511,-318.0453"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node45"><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="307,-2177 75,-2177 75,-2109 307,-2109 307,-2177"/>
<text text-anchor="middle" x="191" y="-2161.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="191" y="-2146.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="191" y="-2131.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="191" y="-2116.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node46"><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,-2278.5 75,-2278.5 75,-2195.5 307,-2195.5 307,-2278.5"/>
<text text-anchor="middle" x="191" y="-2263.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="191" y="-2248.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="191" y="-2233.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="191" y="-2218.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="191" y="-2203.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node47" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node47"><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,-2271 411,-2271 411,-2203 643,-2203 643,-2271"/>
<text text-anchor="middle" x="527" y="-2255.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="527" y="-2240.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="527" y="-2225.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="527" y="-2210.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="edge32" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M307.1,-2237C337.27,-2237 369.91,-2237 400.57,-2237"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-2240.5001 410.89,-2237 400.89,-2233.5001 400.89,-2240.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>