developers/zcash-zf-dag.html

752 lines
57 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="832pt" height="3295pt"
viewBox="0.00 0.00 832.00 3294.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 3290.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-3290.5 828,-3290.5 828,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="20,-115 20,-1142 556,-1142 556,-115 20,-115"/>
<text text-anchor="middle" x="288" y="-1126.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidates</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="308,-1213 308,-2052 824,-2052 824,-1213 308,-1213"/>
<text text-anchor="middle" x="566" y="-2036.8" font-family="Times,serif" font-size="14.00" fill="#000000">DevOps Ticket Tracker</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-107 288,-107 288,0 0,0"/>
<text text-anchor="middle" x="144" y="-91.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</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="260,-1111 28,-1111 28,-1043 260,-1043 260,-1111"/>
<text text-anchor="middle" x="144" y="-1095.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="144" y="-1080.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="144" y="-1065.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="144" y="-1050.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="548,-884.5 316,-884.5 316,-831.5 548,-831.5 548,-884.5"/>
<text text-anchor="middle" x="432" y="-869.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="432" y="-854.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="432" y="-839.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4992 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#4992</title>
<g id="a_node19"><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="548,-1791.5 316,-1791.5 316,-1738.5 548,-1738.5 548,-1791.5"/>
<text text-anchor="middle" x="432" y="-1776.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="432" y="-1761.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="432" y="-1746.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="edge6" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992</title>
<path fill="none" stroke="#000000" d="M414.87,-884.79C384.14,-934.6 320.74,-1045.9 298,-1150 291.24,-1180.9 285.12,-1691.1 298,-1720 300.62,-1725.9 304.12,-1731 308.28,-1735.5"/>
<polygon fill="#000000" stroke="#000000" points="306.1461,-1738.2932 315.87,-1742.5 310.8918,-1733.1475 306.1461,-1738.2932"/>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node27"><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="816,-884.5 584,-884.5 584,-880.5 580,-880.5 580,-876.5 584,-876.5 584,-839.5 580,-839.5 580,-835.5 584,-835.5 584,-831.5 816,-831.5 816,-884.5"/>
<polyline fill="none" stroke="#000000" points="584,-880.5 588,-880.5 588,-876.5 584,-876.5 "/>
<polyline fill="none" stroke="#000000" points="584,-839.5 588,-839.5 588,-835.5 584,-835.5 "/>
<text text-anchor="middle" x="700" y="-869.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="700" y="-854.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="700" y="-839.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="edge7" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M548.38,-858C556.71,-858 565.14,-858 573.53,-858"/>
<polygon fill="#000000" stroke="#000000" points="573.74,-861.5001 583.74,-858 573.74,-854.5001 573.74,-861.5001"/>
</g>
<!-- ZcashFoundation/zebra#4894 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4894</title>
<g id="a_node3"><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="260,-852.5 28,-852.5 28,-769.5 260,-769.5 260,-852.5"/>
<text text-anchor="middle" x="144" y="-837.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="144" y="-822.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="144" y="-807.3" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="144" y="-792.3" font-family="Times,serif" font-size="14.00" fill="#000000">goes all the way to the</text>
<text text-anchor="middle" x="144" y="-777.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="edge1" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M260.31,-829.98C275.29,-832.43 290.69,-834.94 305.83,-837.41"/>
<polygon fill="#000000" stroke="#000000" points="305.2875,-840.8677 315.72,-839.02 306.4123,-833.9586 305.2875,-840.8677"/>
</g>
<!-- ZcashFoundation/zebra#4778 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#4778</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4778" xlink:title="ZcashFoundation/zebra#4778&#10;Replace old release&#10;criteria with stable&#10;release candidate&#10;criteria in docs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-751.5 28,-751.5 28,-668.5 260,-668.5 260,-751.5"/>
<text text-anchor="middle" x="144" y="-736.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4778</text>
<text text-anchor="middle" x="144" y="-721.3" font-family="Times,serif" font-size="14.00" fill="#000000">Replace old release</text>
<text text-anchor="middle" x="144" y="-706.3" font-family="Times,serif" font-size="14.00" fill="#000000">criteria with stable</text>
<text text-anchor="middle" x="144" y="-691.3" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate</text>
<text text-anchor="middle" x="144" y="-676.3" font-family="Times,serif" font-size="14.00" fill="#000000">criteria in docs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4778&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#4778&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M260.26,-747.35C269.77,-751.32 279.13,-755.54 288,-760 324.36,-778.28 362.29,-804.42 390.08,-825.11"/>
<polygon fill="#000000" stroke="#000000" points="388.2731,-828.1302 398.37,-831.34 392.4785,-822.5343 388.2731,-828.1302"/>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node5"><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="260,-1025 28,-1025 28,-957 260,-957 260,-1025"/>
<text text-anchor="middle" x="144" y="-1009.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="144" y="-994.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="144" y="-979.8" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="144" y="-964.8" font-family="Times,serif" font-size="14.00" fill="#000000">jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node18"><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="548,-1878 316,-1878 316,-1810 548,-1810 548,-1878"/>
<text text-anchor="middle" x="432" y="-1862.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="432" y="-1847.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="432" y="-1832.8" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="432" y="-1817.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="edge8" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M260.32,-1010.7C270.98,-1016.7 280.55,-1024.3 288,-1034 339.75,-1101.6 257.98,-1731.1 308,-1800 308.56,-1800.8 309.13,-1801.5 309.72,-1802.3"/>
<polygon fill="#000000" stroke="#000000" points="307.1639,-1804.6912 316.5,-1809.7 312.3252,-1799.9624 307.1639,-1804.6912"/>
</g>
<!-- ZcashFoundation/zebra#4684 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#4684</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4684" xlink:title="ZcashFoundation/zebra#4684&#10;Test that every old&#10;zebrad.toml config still&#10;works" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-939 28,-939 28,-871 260,-871 260,-939"/>
<text text-anchor="middle" x="144" y="-923.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4684</text>
<text text-anchor="middle" x="144" y="-908.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test that every old</text>
<text text-anchor="middle" x="144" y="-893.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad.toml config still</text>
<text text-anchor="middle" x="144" y="-878.8" font-family="Times,serif" font-size="14.00" fill="#000000">works</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M260.31,-886.02C275.29,-883.57 290.69,-881.06 305.83,-878.59"/>
<polygon fill="#000000" stroke="#000000" points="306.4123,-882.0414 315.72,-876.98 305.2875,-875.1323 306.4123,-882.0414"/>
</g>
<!-- ZcashFoundation/zebra#5011 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#5011</title>
<g id="a_node28"><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" points="548,-1203.5 316,-1203.5 316,-1150.5 548,-1150.5 548,-1203.5"/>
<text text-anchor="middle" x="432" y="-1188.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5011</text>
<text text-anchor="middle" x="432" y="-1173.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="432" y="-1158.3" font-family="Times,serif" font-size="14.00" fill="#000000">release</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#5011 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#5011</title>
<path fill="none" stroke="#000000" d="M260.29,-925.66C270.81,-931.43 280.35,-938.75 288,-948 344.34,-1016.2 250.13,-1079.1 308,-1146 308.15,-1146.2 308.3,-1146.3 308.45,-1146.5"/>
<polygon fill="#000000" stroke="#000000" points="306.155,-1149.1499 315.77,-1153.6 311.0287,-1144.1252 306.155,-1149.1499"/>
</g>
<!-- ZcashFoundation/zebra#4529 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#4529</title>
<g id="a_node7"><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="260,-650 28,-650 28,-582 260,-582 260,-650"/>
<text text-anchor="middle" x="144" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4529</text>
<text text-anchor="middle" x="144" y="-619.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make PRs from external</text>
<text text-anchor="middle" x="144" y="-604.8" font-family="Times,serif" font-size="14.00" fill="#000000">repositories pass or skip</text>
<text text-anchor="middle" x="144" y="-589.8" font-family="Times,serif" font-size="14.00" fill="#000000">CI jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4821 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#4821</title>
<g id="a_node8"><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="260,-563.5 28,-563.5 28,-510.5 260,-510.5 260,-563.5"/>
<text text-anchor="middle" x="144" y="-548.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4821</text>
<text text-anchor="middle" x="144" y="-533.3" font-family="Times,serif" font-size="14.00" fill="#000000">Open the database in a</text>
<text text-anchor="middle" x="144" y="-518.3" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tokio thread</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4834 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#4834</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4834" xlink:title="ZcashFoundation/zebra#4834&#10;Switch zebrad to a non&#45;&#10;blocking tracing logger" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-492.5 28,-492.5 28,-439.5 260,-439.5 260,-492.5"/>
<text text-anchor="middle" x="144" y="-477.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4834</text>
<text text-anchor="middle" x="144" y="-462.3" font-family="Times,serif" font-size="14.00" fill="#000000">Switch zebrad to a non&#45;</text>
<text text-anchor="middle" x="144" y="-447.3" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tracing logger</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#4937</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4937" xlink:title="ZcashFoundation/zebra#4937&#10;Committing some blocks to&#10;the state takes 15&#10;minutes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-421 28,-421 28,-353 260,-353 260,-421"/>
<text text-anchor="middle" x="144" y="-405.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="144" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">Committing some blocks to</text>
<text text-anchor="middle" x="144" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">the state takes 15</text>
<text text-anchor="middle" x="144" y="-360.8" font-family="Times,serif" font-size="14.00" fill="#000000">minutes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node11"><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="260,-334.5 28,-334.5 28,-281.5 260,-281.5 260,-334.5"/>
<text text-anchor="middle" x="144" y="-319.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="144" y="-304.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="144" y="-289.3" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4678 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4678</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4678" xlink:title="ZcashFoundation/zebra#4678&#10;Return peer metadata from&#10;`connect_isolated`&#10;functions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-263 28,-263 28,-195 260,-195 260,-263"/>
<text text-anchor="middle" x="144" y="-247.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4678</text>
<text text-anchor="middle" x="144" y="-232.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return peer metadata from</text>
<text text-anchor="middle" x="144" y="-217.8" font-family="Times,serif" font-size="14.00" fill="#000000">`connect_isolated`</text>
<text text-anchor="middle" x="144" y="-202.8" font-family="Times,serif" font-size="14.00" fill="#000000">functions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node13"><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="260,-176.5 28,-176.5 28,-123.5 260,-123.5 260,-176.5"/>
<text text-anchor="middle" x="144" y="-161.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="144" y="-146.3" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="144" y="-131.3" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#4953</title>
<g id="a_node14"><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="548,-2020.5 316,-2020.5 316,-1967.5 548,-1967.5 548,-2020.5"/>
<text text-anchor="middle" x="432" y="-2005.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="432" y="-1990.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="432" y="-1975.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="edge10" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M318.09,-1967.3C314.47,-1964.5 311.09,-1961.4 308,-1958 194.16,-1832.4 155.28,-1282 146.25,-1121.2"/>
<polygon fill="#000000" stroke="#000000" points="149.7437,-1120.9886 145.69,-1111.2 142.7547,-1121.3801 149.7437,-1120.9886"/>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node15"><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="548,-1949.5 316,-1949.5 316,-1896.5 548,-1896.5 548,-1949.5"/>
<text text-anchor="middle" x="432" y="-1934.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="432" y="-1919.3" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
<text text-anchor="middle" x="432" y="-1904.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node16"><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="816,-1580 584,-1580 584,-1512 816,-1512 816,-1580"/>
<text text-anchor="middle" x="700" y="-1564.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="700" y="-1549.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="700" y="-1534.8" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="700" y="-1519.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="edge4" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4954</title>
<path fill="none" stroke="#000000" d="M543.6,-1896.3C547.99,-1893.5 552.15,-1890.4 556,-1887 645.48,-1807.4 680.99,-1663 693.69,-1590.3"/>
<polygon fill="#000000" stroke="#000000" points="697.1984,-1590.5411 695.4,-1580.1 690.2947,-1589.3837 697.1984,-1590.5411"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node17"><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="816,-1957 584,-1957 584,-1889 816,-1889 816,-1957"/>
<text text-anchor="middle" x="700" y="-1941.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="700" y="-1926.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="700" y="-1911.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="700" y="-1896.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="edge5" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412</title>
<path fill="none" stroke="#000000" d="M548.38,-1923C556.71,-1923 565.14,-1923 573.53,-1923"/>
<polygon fill="#000000" stroke="#000000" points="573.74,-1926.5001 583.74,-1923 573.74,-1919.5001 573.74,-1926.5001"/>
</g>
<!-- ZcashFoundation/zebra#755 -->
<g id="node29" class="node closed">
<title>ZcashFoundation/zebra#755</title>
<g id="a_node29"><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="811.5,-2098 588.5,-2098 588.5,-2060 811.5,-2060 811.5,-2098"/>
<text text-anchor="middle" x="700" y="-2082.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#755</text>
<text text-anchor="middle" x="700" y="-2067.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="edge11" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M546.04,-1949.5C549.57,-1952.1 552.91,-1954.9 556,-1958 585.83,-1987.7 555.59,-2020.4 581.75,-2052.6"/>
<polygon fill="#000000" stroke="#000000" points="579.3028,-2055.1068 588.7,-2060 584.4052,-2050.3147 579.3028,-2055.1068"/>
</g>
<!-- ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M688.77,-1511.8C665.53,-1441.7 609.82,-1276.8 556,-1141 520.37,-1051.1 473.43,-947.47 448.78,-894.03"/>
<polygon fill="#000000" stroke="#000000" points="451.8188,-892.2629 444.44,-884.66 445.467,-895.2049 451.8188,-892.2629"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node20"><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="548,-1720 316,-1720 316,-1652 548,-1652 548,-1720"/>
<text text-anchor="middle" x="432" y="-1704.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="432" y="-1689.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="432" y="-1674.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="432" y="-1659.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4955 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4955</title>
<g id="a_node21"><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" stroke-width="2" points="548,-1634 316,-1634 316,-1566 548,-1566 548,-1634"/>
<text text-anchor="middle" x="432" y="-1618.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4955</text>
<text text-anchor="middle" x="432" y="-1603.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make long&#45;running test</text>
<text text-anchor="middle" x="432" y="-1588.8" font-family="Times,serif" font-size="14.00" fill="#000000">names match workflow</text>
<text text-anchor="middle" x="432" y="-1573.8" font-family="Times,serif" font-size="14.00" fill="#000000">names</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4956 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4956</title>
<g id="a_node22"><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="548,-1548 316,-1548 316,-1480 548,-1480 548,-1548"/>
<text text-anchor="middle" x="432" y="-1532.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4956</text>
<text text-anchor="middle" x="432" y="-1517.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make file locations</text>
<text text-anchor="middle" x="432" y="-1502.8" font-family="Times,serif" font-size="14.00" fill="#000000">appear in zebrad Docker</text>
<text text-anchor="middle" x="432" y="-1487.8" font-family="Times,serif" font-size="14.00" fill="#000000">error messages</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4976 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#4976</title>
<g id="a_node23"><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="548,-1462 316,-1462 316,-1394 548,-1394 548,-1462"/>
<text text-anchor="middle" x="432" y="-1446.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4976</text>
<text text-anchor="middle" x="432" y="-1431.8" font-family="Times,serif" font-size="14.00" fill="#000000">Move continuous</text>
<text text-anchor="middle" x="432" y="-1416.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployment to another</text>
<text text-anchor="middle" x="432" y="-1401.8" font-family="Times,serif" font-size="14.00" fill="#000000">Google Cloud region</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4946 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#4946</title>
<g id="a_node24"><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="548,-1375.5 316,-1375.5 316,-1292.5 548,-1292.5 548,-1375.5"/>
<text text-anchor="middle" x="432" y="-1360.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4946</text>
<text text-anchor="middle" x="432" y="-1345.3" font-family="Times,serif" font-size="14.00" fill="#000000">Managed instance groups</text>
<text text-anchor="middle" x="432" y="-1330.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployed with continuous</text>
<text text-anchor="middle" x="432" y="-1315.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployment can&#39;t scale</text>
<text text-anchor="middle" x="432" y="-1300.3" font-family="Times,serif" font-size="14.00" fill="#000000">beyond 1 instance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4965 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#4965</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4965" xlink:title="ZcashFoundation/zebra#4965&#10;ci: delete old cached&#10;disk images from GCP" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="548,-1274.5 316,-1274.5 316,-1221.5 548,-1221.5 548,-1274.5"/>
<text text-anchor="middle" x="432" y="-1259.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4965</text>
<text text-anchor="middle" x="432" y="-1244.3" font-family="Times,serif" font-size="14.00" fill="#000000">ci: delete old cached</text>
<text text-anchor="middle" x="432" y="-1229.3" font-family="Times,serif" font-size="14.00" fill="#000000">disk images from GCP</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4350 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#4350</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4350" xlink:title="ZcashFoundation/zebra#4350&#10;Add GetMempoolTx and&#10;GetMempoolStream gRPC&#10;tests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-76 28,-76 28,-8 260,-8 260,-76"/>
<text text-anchor="middle" x="144" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4350</text>
<text text-anchor="middle" x="144" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add GetMempoolTx and</text>
<text text-anchor="middle" x="144" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">GetMempoolStream gRPC</text>
<text text-anchor="middle" x="144" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4350&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#4350&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M246.48,-76.09C262.29,-85.264 276.99,-96.73 288,-111 375.98,-225.02 418.57,-686.93 429.25,-821.22"/>
<polygon fill="#000000" stroke="#000000" points="425.7765,-821.6953 430.05,-831.39 432.7549,-821.1463 425.7765,-821.6953"/>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node30"><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="255.5,-2152.5 32.5,-2152.5 32.5,-2099.5 255.5,-2099.5 255.5,-2152.5"/>
<text text-anchor="middle" x="144" y="-2137.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="144" y="-2122.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="144" y="-2107.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node31"><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="543.5,-2200 320.5,-2200 320.5,-2132 543.5,-2132 543.5,-2200"/>
<text text-anchor="middle" x="432" y="-2184.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="432" y="-2169.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="432" y="-2154.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="432" y="-2139.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="edge14" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M255.76,-2141.5C273.64,-2144 292.21,-2146.6 310.31,-2149.1"/>
<polygon fill="#000000" stroke="#000000" points="309.911,-2152.5782 320.3,-2150.5 310.8825,-2145.6459 309.911,-2152.5782"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node32"><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="548,-2113.5 316,-2113.5 316,-2060.5 548,-2060.5 548,-2113.5"/>
<text text-anchor="middle" x="432" y="-2098.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="432" y="-2083.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="432" y="-2068.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="edge15" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M255.76,-2110.9C272,-2108.7 288.81,-2106.4 305.31,-2104.2"/>
<polygon fill="#000000" stroke="#000000" points="306.1069,-2107.6236 315.54,-2102.8 305.1578,-2100.6883 306.1069,-2107.6236"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node33"><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="255.5,-2209 32.5,-2209 32.5,-2171 255.5,-2171 255.5,-2209"/>
<text text-anchor="middle" x="144" y="-2193.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="144" y="-2178.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node34"><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="260,-2295 28,-2295 28,-2227 260,-2227 260,-2295"/>
<text text-anchor="middle" x="144" y="-2279.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="144" y="-2264.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="144" y="-2249.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="144" y="-2234.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node35"><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="260,-2366.5 28,-2366.5 28,-2313.5 260,-2313.5 260,-2366.5"/>
<text text-anchor="middle" x="144" y="-2351.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="144" y="-2336.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="144" y="-2321.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3263 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#3263</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3263" xlink:title="ZcashFoundation/zebra#3263&#10;Security: Remove the&#10;ErrorSlot from the&#10;heartbeat and connection&#10;tasks" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-2467.5 28,-2467.5 28,-2384.5 260,-2384.5 260,-2467.5"/>
<text text-anchor="middle" x="144" y="-2452.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3263</text>
<text text-anchor="middle" x="144" y="-2437.3" font-family="Times,serif" font-size="14.00" fill="#000000">Security: Remove the</text>
<text text-anchor="middle" x="144" y="-2422.3" font-family="Times,serif" font-size="14.00" fill="#000000">ErrorSlot from the</text>
<text text-anchor="middle" x="144" y="-2407.3" font-family="Times,serif" font-size="14.00" fill="#000000">heartbeat and connection</text>
<text text-anchor="middle" x="144" y="-2392.3" font-family="Times,serif" font-size="14.00" fill="#000000">tasks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node37"><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="260,-2538.5 28,-2538.5 28,-2485.5 260,-2485.5 260,-2538.5"/>
<text text-anchor="middle" x="144" y="-2523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="144" y="-2508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="144" y="-2493.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node38"><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="260,-2609.5 28,-2609.5 28,-2556.5 260,-2556.5 260,-2609.5"/>
<text text-anchor="middle" x="144" y="-2594.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="144" y="-2579.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="144" y="-2564.3" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node39" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node39"><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="548,-2746.5 316,-2746.5 316,-2693.5 548,-2693.5 548,-2746.5"/>
<text text-anchor="middle" x="432" y="-2731.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="432" y="-2716.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="432" y="-2701.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4870 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#4870</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4870" xlink:title="ZcashFoundation/zebra#4870&#10;feat(net): return peer&#10;metadata from&#10;`connect_isolated`&#10;functions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-2912.5 28,-2912.5 28,-2908.5 24,-2908.5 24,-2904.5 28,-2904.5 28,-2837.5 24,-2837.5 24,-2833.5 28,-2833.5 28,-2829.5 260,-2829.5 260,-2912.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="28,-2908.5 32,-2908.5 32,-2904.5 28,-2904.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="28,-2837.5 32,-2837.5 32,-2833.5 28,-2833.5 "/>
<text text-anchor="middle" x="144" y="-2897.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4870</text>
<text text-anchor="middle" x="144" y="-2882.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(net): return peer</text>
<text text-anchor="middle" x="144" y="-2867.3" font-family="Times,serif" font-size="14.00" fill="#000000">metadata from</text>
<text text-anchor="middle" x="144" y="-2852.3" font-family="Times,serif" font-size="14.00" fill="#000000">`connect_isolated`</text>
<text text-anchor="middle" x="144" y="-2837.3" font-family="Times,serif" font-size="14.00" fill="#000000">functions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4721</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4721" xlink:title="ZcashFoundation/zebra#4721&#10;feat(state): Send&#10;treestate from non&#45;&#10;finalized state to&#10;finalized state" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-3013.5 28,-3013.5 28,-3009.5 24,-3009.5 24,-3005.5 28,-3005.5 28,-2938.5 24,-2938.5 24,-2934.5 28,-2934.5 28,-2930.5 260,-2930.5 260,-3013.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="28,-3009.5 32,-3009.5 32,-3005.5 28,-3005.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="28,-2938.5 32,-2938.5 32,-2934.5 28,-2934.5 "/>
<text text-anchor="middle" x="144" y="-2998.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4721</text>
<text text-anchor="middle" x="144" y="-2983.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(state): Send</text>
<text text-anchor="middle" x="144" y="-2968.3" font-family="Times,serif" font-size="14.00" fill="#000000">treestate from non&#45;</text>
<text text-anchor="middle" x="144" y="-2953.3" font-family="Times,serif" font-size="14.00" fill="#000000">finalized state to</text>
<text text-anchor="middle" x="144" y="-2938.3" font-family="Times,serif" font-size="14.00" fill="#000000">finalized state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4784 -->
<g id="node42" class="node closed">
<title>ZcashFoundation/zebra#4784</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4784" xlink:title="ZcashFoundation/zebra#4784&#10;Store only the first tree&#10;state in each identical&#10;series of tree states" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="548,-3049 316,-3049 316,-2981 548,-2981 548,-3049"/>
<text text-anchor="middle" x="432" y="-3033.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4784</text>
<text text-anchor="middle" x="432" y="-3018.8" font-family="Times,serif" font-size="14.00" fill="#000000">Store only the first tree</text>
<text text-anchor="middle" x="432" y="-3003.8" font-family="Times,serif" font-size="14.00" fill="#000000">state in each identical</text>
<text text-anchor="middle" x="432" y="-2988.8" font-family="Times,serif" font-size="14.00" fill="#000000">series of tree states</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4784 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4784</title>
<path fill="none" stroke="#000000" d="M260.31,-2989.4C275.29,-2991.6 290.69,-2993.9 305.83,-2996.2"/>
<polygon fill="#000000" stroke="#000000" points="305.3281,-2999.6638 315.72,-2997.6 306.3093,-2992.7329 305.3281,-2999.6638"/>
</g>
<!-- ZcashFoundation/zebra#4823 -->
<g id="node43" class="node closed">
<title>ZcashFoundation/zebra#4823</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4823" xlink:title="ZcashFoundation/zebra#4823&#10;Find out which parts of C&#10;ommitBlock/CommitFinalize&#10;dBlock are slow" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="548,-2963 316,-2963 316,-2895 548,-2895 548,-2963"/>
<text text-anchor="middle" x="432" y="-2947.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4823</text>
<text text-anchor="middle" x="432" y="-2932.8" font-family="Times,serif" font-size="14.00" fill="#000000">Find out which parts of C</text>
<text text-anchor="middle" x="432" y="-2917.8" font-family="Times,serif" font-size="14.00" fill="#000000">ommitBlock/CommitFinalize</text>
<text text-anchor="middle" x="432" y="-2902.8" font-family="Times,serif" font-size="14.00" fill="#000000">dBlock are slow</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4823 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4823</title>
<path fill="none" stroke="#000000" d="M260.31,-2954.6C275.29,-2952.4 290.69,-2950.1 305.83,-2947.8"/>
<polygon fill="#000000" stroke="#000000" points="306.3093,-2951.2671 315.72,-2946.4 305.3281,-2944.3362 306.3093,-2951.2671"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node44"><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="260,-3114.5 28,-3114.5 28,-3031.5 260,-3031.5 260,-3114.5"/>
<text text-anchor="middle" x="144" y="-3099.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="144" y="-3084.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="144" y="-3069.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="144" y="-3054.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="144" y="-3039.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node45"><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="260,-3185.5 28,-3185.5 28,-3132.5 260,-3132.5 260,-3185.5"/>
<text text-anchor="middle" x="144" y="-3170.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="144" y="-3155.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="144" y="-3140.3" font-family="Times,serif" font-size="14.00" fill="#000000">Candidates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node46"><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="260,-2811.5 28,-2811.5 28,-2728.5 260,-2728.5 260,-2811.5"/>
<text text-anchor="middle" x="144" y="-2796.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="144" y="-2781.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="144" y="-2766.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="144" y="-2751.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="144" y="-2736.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="edge18" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M260.31,-2749.8C275.29,-2747.2 290.69,-2744.5 305.83,-2741.9"/>
<polygon fill="#000000" stroke="#000000" points="306.4575,-2745.3436 315.72,-2740.2 305.2716,-2738.4447 306.4575,-2745.3436"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node47"><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="260,-2710.5 28,-2710.5 28,-2627.5 260,-2627.5 260,-2710.5"/>
<text text-anchor="middle" x="144" y="-2695.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="144" y="-2680.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="144" y="-2665.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="144" y="-2650.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="144" y="-2635.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="edge19" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M260.31,-2689.6C275.29,-2692.2 290.69,-2695 305.83,-2697.7"/>
<polygon fill="#000000" stroke="#000000" points="305.2716,-2701.1553 315.72,-2699.4 306.4575,-2694.2564 305.2716,-2701.1553"/>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node48"><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="260,-3286.5 28,-3286.5 28,-3203.5 260,-3203.5 260,-3286.5"/>
<text text-anchor="middle" x="144" y="-3271.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="144" y="-3256.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="144" y="-3241.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="144" y="-3226.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="144" y="-3211.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node49" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node49"><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="548,-3279 316,-3279 316,-3211 548,-3211 548,-3279"/>
<text text-anchor="middle" x="432" y="-3263.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="432" y="-3248.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="432" y="-3233.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="432" y="-3218.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="edge20" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M260.31,-3245C275.15,-3245 290.4,-3245 305.39,-3245"/>
<polygon fill="#000000" stroke="#000000" points="305.72,-3248.5001 315.72,-3245 305.72,-3241.5001 305.72,-3248.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>