developers/zcash-zf-dag.html

684 lines
51 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html>
<head>
<title>Zcash zf DAG</title>
<!-- Pan/zoom SVGs -->
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
<link rel="stylesheet" href="zcash-dag.css">
<style>
@media (prefers-color-scheme: dark) {
body {
/* Material dark theme surface colour */
background-color: #121212;
}
}
</style>
</head>
<body>
<div id="dag"><svg width="919pt" height="2997pt"
viewBox="0.00 0.00 919.00 2996.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 2992.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2992.5 915,-2992.5 915,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="403,-78 403,-888 651,-888 651,-78 403,-78"/>
<text text-anchor="middle" x="527" y="-872.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidates</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,-1873 0,-2010 383,-2010 383,-1873 0,-1873"/>
<text text-anchor="middle" x="191.5" y="-1994.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to state using a separate task</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="67,-896 67,-1865 651,-1865 651,-896 67,-896"/>
<text text-anchor="middle" x="359" y="-1849.8" font-family="Times,serif" font-size="14.00" fill="#000000">DevOps Ticket Tracker</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-2988.5 911,-2988.5 911,0 0,0"/>
<text text-anchor="middle" x="455.5" y="-2973.3" 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="643,-785 411,-785 411,-717 643,-717 643,-785"/>
<text text-anchor="middle" x="527" y="-769.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="527" y="-754.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="527" y="-739.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="527" y="-724.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="643,-856.5 411,-856.5 411,-803.5 643,-803.5 643,-856.5"/>
<text text-anchor="middle" x="527" y="-841.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="527" y="-826.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="-811.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4955 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4955</title>
<g id="a_node16"><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="307,-1590 75,-1590 75,-1522 307,-1522 307,-1590"/>
<text text-anchor="middle" x="191" y="-1574.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4955</text>
<text text-anchor="middle" x="191" y="-1559.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make long&#45;running test</text>
<text text-anchor="middle" x="191" y="-1544.8" font-family="Times,serif" font-size="14.00" fill="#000000">names match workflow</text>
<text text-anchor="middle" x="191" y="-1529.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="M442.98,-856.53C427.22,-865.34 412.67,-876.9 403,-892 365.77,-950.13 427.01,-1459.8 383,-1513 366.25,-1533.2 342.23,-1545.2 316.82,-1552"/>
<polygon fill="#000000" stroke="#000000" points="315.909,-1548.6196 307.03,-1554.4 317.5758,-1555.4183 315.909,-1548.6196"/>
</g>
<!-- ZcashFoundation/zebra#4992 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#4992</title>
<g id="a_node18"><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="307,-1747.5 75,-1747.5 75,-1694.5 307,-1694.5 307,-1747.5"/>
<text text-anchor="middle" x="191" y="-1732.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="191" y="-1717.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="191" y="-1702.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="M442.58,-856.66C426.95,-865.45 412.55,-876.97 403,-892 379.36,-929.19 411.57,-1651.4 383,-1685 366.21,-1704.7 342.35,-1715.9 317.14,-1721.8"/>
<polygon fill="#000000" stroke="#000000" points="316.1181,-1718.4375 307.04,-1723.9 317.5431,-1725.291 316.1181,-1718.4375"/>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node24"><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,-856.5 679,-856.5 679,-852.5 675,-852.5 675,-848.5 679,-848.5 679,-811.5 675,-811.5 675,-807.5 679,-807.5 679,-803.5 911,-803.5 911,-856.5"/>
<polyline fill="none" stroke="#000000" points="679,-852.5 683,-852.5 683,-848.5 679,-848.5 "/>
<polyline fill="none" stroke="#000000" points="679,-811.5 683,-811.5 683,-807.5 679,-807.5 "/>
<text text-anchor="middle" x="795" y="-841.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="795" y="-826.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="795" y="-811.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="edge6" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M643.38,-830C651.71,-830 660.14,-830 668.53,-830"/>
<polygon fill="#000000" stroke="#000000" points="668.74,-833.5001 678.74,-830 668.74,-826.5001 668.74,-833.5001"/>
</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="643,-699 411,-699 411,-631 643,-631 643,-699"/>
<text text-anchor="middle" x="527" y="-683.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="527" y="-668.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to</text>
<text text-anchor="middle" x="527" y="-653.8" font-family="Times,serif" font-size="14.00" fill="#000000">state using a separate</text>
<text text-anchor="middle" x="527" y="-638.8" font-family="Times,serif" font-size="14.00" fill="#000000">task</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5189 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5189</title>
<g id="a_node25"><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="911,-376.5 679,-376.5 679,-323.5 911,-323.5 911,-376.5"/>
<text text-anchor="middle" x="795" y="-361.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5189</text>
<text text-anchor="middle" x="795" y="-346.3" font-family="Times,serif" font-size="14.00" fill="#000000">Run some docker tests on</text>
<text text-anchor="middle" x="795" y="-331.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="edge7" class="edge">
<title>ZcashFoundation/zebra#4937&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M639.16,-630.89C643.31,-628.15 647.28,-625.19 651,-622 726,-557.69 767.78,-444.39 785.2,-386.41"/>
<polygon fill="#000000" stroke="#000000" points="788.6242,-387.1708 788.08,-376.59 781.9071,-385.2008 788.6242,-387.1708"/>
</g>
<!-- ZcashFoundation/zebra#5121 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5121</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5121" xlink:title="ZcashFoundation/zebra#5121&#10;Document where users can&#10;get support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="643,-612.5 411,-612.5 411,-559.5 643,-559.5 643,-612.5"/>
<text text-anchor="middle" x="527" y="-597.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5121</text>
<text text-anchor="middle" x="527" y="-582.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document where users can</text>
<text text-anchor="middle" x="527" y="-567.3" font-family="Times,serif" font-size="14.00" fill="#000000">get support</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5125 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5125</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5125" xlink:title="ZcashFoundation/zebra#5125&#10;Avoid temporary failures&#10;verifying the first non&#45;&#10;finalized block" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="643,-541 411,-541 411,-473 643,-473 643,-541"/>
<text text-anchor="middle" x="527" y="-525.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5125</text>
<text text-anchor="middle" x="527" y="-510.8" font-family="Times,serif" font-size="14.00" fill="#000000">Avoid temporary failures</text>
<text text-anchor="middle" x="527" y="-495.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifying the first non&#45;</text>
<text text-anchor="middle" x="527" y="-480.8" font-family="Times,serif" font-size="14.00" fill="#000000">finalized block</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5120 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5120</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5120" xlink:title="ZcashFoundation/zebra#5120&#10;Prepare issue and&#10;response templates for&#10;user issues" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="643,-455 411,-455 411,-387 643,-387 643,-455"/>
<text text-anchor="middle" x="527" y="-439.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5120</text>
<text text-anchor="middle" x="527" y="-424.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prepare issue and</text>
<text text-anchor="middle" x="527" y="-409.8" font-family="Times,serif" font-size="14.00" fill="#000000">response templates for</text>
<text text-anchor="middle" x="527" y="-394.8" font-family="Times,serif" font-size="14.00" fill="#000000">user issues</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4821 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#4821</title>
<g id="a_node7"><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="643,-368.5 411,-368.5 411,-315.5 643,-315.5 643,-368.5"/>
<text text-anchor="middle" x="527" y="-353.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4821</text>
<text text-anchor="middle" x="527" y="-338.3" font-family="Times,serif" font-size="14.00" fill="#000000">Open the database in a</text>
<text text-anchor="middle" x="527" y="-323.3" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tokio thread</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5168 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5168</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5168" xlink:title="ZcashFoundation/zebra#5168&#10;Add Docker tests for&#10;default config and&#10;$ZEBRA_CONF_PATH" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="643,-297 411,-297 411,-229 643,-229 643,-297"/>
<text text-anchor="middle" x="527" y="-281.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5168</text>
<text text-anchor="middle" x="527" y="-266.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Docker tests for</text>
<text text-anchor="middle" x="527" y="-251.8" font-family="Times,serif" font-size="14.00" fill="#000000">default config and</text>
<text text-anchor="middle" x="527" y="-236.8" font-family="Times,serif" font-size="14.00" fill="#000000">$ZEBRA_CONF_PATH</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node9"><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="643,-210.5 411,-210.5 411,-157.5 643,-157.5 643,-210.5"/>
<text text-anchor="middle" x="527" y="-195.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="527" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="527" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node10"><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="643,-139.5 411,-139.5 411,-86.5 643,-86.5 643,-139.5"/>
<text text-anchor="middle" x="527" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="527" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="527" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2654 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#2654</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2654" xlink:title="ZcashFoundation/zebra#2654&#10;Test if checkpoint&#10;verifier and state&#10;service are correctly&#10;reset on block commit&#10;errors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1979 75,-1979 75,-1881 307,-1881 307,-1979"/>
<text text-anchor="middle" x="191" y="-1963.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2654</text>
<text text-anchor="middle" x="191" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test if checkpoint</text>
<text text-anchor="middle" x="191" y="-1933.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier and state</text>
<text text-anchor="middle" x="191" y="-1918.8" font-family="Times,serif" font-size="14.00" fill="#000000">service are correctly</text>
<text text-anchor="middle" x="191" y="-1903.8" font-family="Times,serif" font-size="14.00" fill="#000000">reset on block commit</text>
<text text-anchor="middle" x="191" y="-1888.8" font-family="Times,serif" font-size="14.00" fill="#000000">errors</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4953</title>
<g id="a_node12"><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,-1417.5 75,-1417.5 75,-1364.5 307,-1364.5 307,-1417.5"/>
<text text-anchor="middle" x="191" y="-1402.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="191" y="-1387.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="191" y="-1372.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="edge2" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M307.14,-1393.8C335.9,-1388.5 363.92,-1377.2 383,-1355 423.61,-1307.8 366.18,-845.21 403,-795 403.56,-794.23 404.14,-793.48 404.73,-792.74"/>
<polygon fill="#000000" stroke="#000000" points="407.3662,-795.0438 411.55,-785.31 402.2093,-790.3103 407.3662,-795.0438"/>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node13"><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,-1504 75,-1504 75,-1436 307,-1436 307,-1504"/>
<text text-anchor="middle" x="191" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="191" y="-1473.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="191" y="-1458.8" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="191" y="-1443.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="edge3" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.2,-1468.3C336.06,-1462 364.1,-1449.7 383,-1427 421.04,-1381.3 370.79,-942.01 403,-892 410.89,-879.75 421.98,-869.83 434.32,-861.82"/>
<polygon fill="#000000" stroke="#000000" points="436.2782,-864.7265 443.04,-856.57 432.6676,-858.7295 436.2782,-864.7265"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node14"><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,-1676 75,-1676 75,-1608 307,-1608 307,-1676"/>
<text text-anchor="middle" x="191" y="-1660.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="191" y="-1645.8" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="191" y="-1630.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="191" y="-1615.8" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node15"><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="643,-1834 411,-1834 411,-1766 643,-1766 643,-1834"/>
<text text-anchor="middle" x="527" y="-1818.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="527" y="-1803.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="527" y="-1788.8" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="527" y="-1773.8" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node17"><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,-1834 75,-1834 75,-1766 307,-1766 307,-1834"/>
<text text-anchor="middle" x="191" y="-1818.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="191" y="-1803.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="191" y="-1788.8" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="191" y="-1773.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="edge1" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M307.1,-1800C337.27,-1800 369.91,-1800 400.57,-1800"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-1803.5001 410.89,-1800 400.89,-1796.5001 400.89,-1803.5001"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node19"><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,-1346 75,-1346 75,-1278 307,-1278 307,-1346"/>
<text text-anchor="middle" x="191" y="-1330.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="191" y="-1315.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="191" y="-1300.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="191" y="-1285.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4529 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#4529</title>
<g id="a_node20"><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="307,-1260 75,-1260 75,-1192 307,-1192 307,-1260"/>
<text text-anchor="middle" x="191" y="-1244.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4529</text>
<text text-anchor="middle" x="191" y="-1229.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make PRs from external</text>
<text text-anchor="middle" x="191" y="-1214.8" font-family="Times,serif" font-size="14.00" fill="#000000">repositories pass or skip</text>
<text text-anchor="middle" x="191" y="-1199.8" font-family="Times,serif" font-size="14.00" fill="#000000">CI jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4956 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4956</title>
<g id="a_node21"><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="307,-1174 75,-1174 75,-1106 307,-1106 307,-1174"/>
<text text-anchor="middle" x="191" y="-1158.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4956</text>
<text text-anchor="middle" x="191" y="-1143.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make file locations</text>
<text text-anchor="middle" x="191" y="-1128.8" font-family="Times,serif" font-size="14.00" fill="#000000">appear in zebrad Docker</text>
<text text-anchor="middle" x="191" y="-1113.8" font-family="Times,serif" font-size="14.00" fill="#000000">error messages</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4976 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4976</title>
<g id="a_node22"><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="307,-1088 75,-1088 75,-1020 307,-1020 307,-1088"/>
<text text-anchor="middle" x="191" y="-1072.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4976</text>
<text text-anchor="middle" x="191" y="-1057.8" font-family="Times,serif" font-size="14.00" fill="#000000">Move continuous</text>
<text text-anchor="middle" x="191" y="-1042.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployment to another</text>
<text text-anchor="middle" x="191" y="-1027.8" font-family="Times,serif" font-size="14.00" fill="#000000">Google Cloud region</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4946 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#4946</title>
<g id="a_node23"><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 per&#10;Zone" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1002 75,-1002 75,-904 307,-904 307,-1002"/>
<text text-anchor="middle" x="191" y="-986.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4946</text>
<text text-anchor="middle" x="191" y="-971.8" font-family="Times,serif" font-size="14.00" fill="#000000">Managed instance groups</text>
<text text-anchor="middle" x="191" y="-956.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployed with continuous</text>
<text text-anchor="middle" x="191" y="-941.8" font-family="Times,serif" font-size="14.00" fill="#000000">deployment can&#39;t scale</text>
<text text-anchor="middle" x="191" y="-926.8" font-family="Times,serif" font-size="14.00" fill="#000000">beyond 1 instance per</text>
<text text-anchor="middle" x="191" y="-911.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zone</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="302.5,-2071.5 79.5,-2071.5 79.5,-2018.5 302.5,-2018.5 302.5,-2071.5"/>
<text text-anchor="middle" x="191" y="-2056.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="191" y="-2041.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="191" y="-2026.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="638.5,-2032 415.5,-2032 415.5,-1964 638.5,-1964 638.5,-2032"/>
<text text-anchor="middle" x="527" y="-2016.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="527" y="-2001.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="527" y="-1986.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="527" y="-1971.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="edge8" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M302.88,-2029.3C335.67,-2024.8 371.67,-2019.7 405.05,-2015.1"/>
<polygon fill="#000000" stroke="#000000" points="405.9308,-2018.5086 415.32,-2013.6 404.9191,-2011.5821 405.9308,-2018.5086"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-2103.5 411,-2103.5 411,-2050.5 643,-2050.5 643,-2103.5"/>
<text text-anchor="middle" x="527" y="-2088.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="527" y="-2073.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="527" y="-2058.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="edge9" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M302.88,-2055.7C334.15,-2058.6 368.34,-2061.9 400.39,-2064.9"/>
<polygon fill="#000000" stroke="#000000" points="400.4293,-2068.4201 410.72,-2065.9 401.1038,-2061.4526 400.4293,-2068.4201"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="302.5,-2128 79.5,-2128 79.5,-2090 302.5,-2090 302.5,-2128"/>
<text text-anchor="middle" x="191" y="-2112.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="191" y="-2097.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node30"><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,-2214 75,-2214 75,-2146 307,-2146 307,-2214"/>
<text text-anchor="middle" x="191" y="-2198.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="191" y="-2183.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="191" y="-2168.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="191" y="-2153.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node31" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node31"><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,-2206.5 415.5,-2206.5 415.5,-2153.5 638.5,-2153.5 638.5,-2206.5"/>
<text text-anchor="middle" x="527" y="-2191.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="527" y="-2176.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="527" y="-2161.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="edge10" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M307.1,-2180C338.77,-2180 373.16,-2180 405.14,-2180"/>
<polygon fill="#000000" stroke="#000000" points="405.43,-2183.5001 415.43,-2180 405.43,-2176.5001 405.43,-2183.5001"/>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2631" xlink:title="ZcashFoundation/zebra#2631&#10;Send committed spent&#10;OutPoints &amp; nullifiers to&#10;the mempool for rejection" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2300 75,-2300 75,-2232 307,-2232 307,-2300"/>
<text text-anchor="middle" x="191" y="-2284.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="191" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="191" y="-2254.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="191" y="-2239.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2371.5 75,-2371.5 75,-2318.5 307,-2318.5 307,-2371.5"/>
<text text-anchor="middle" x="191" y="-2356.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="191" y="-2341.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="191" y="-2326.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2442.5 75,-2442.5 75,-2389.5 307,-2389.5 307,-2442.5"/>
<text text-anchor="middle" x="191" y="-2427.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="191" y="-2412.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="191" y="-2397.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4894 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#4894</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4894" xlink:title="ZcashFoundation/zebra#4894&#10;Make tests wait until&#10;lightwalletd full sync&#10;goes all the way to the&#10;tip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-871.5 75,-871.5 75,-788.5 307,-788.5 307,-871.5"/>
<text text-anchor="middle" x="191" y="-856.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="191" y="-841.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="191" y="-826.3" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="191" y="-811.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="-796.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="edge11" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M307.1,-830C337.27,-830 369.91,-830 400.57,-830"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-833.5001 410.89,-830 400.89,-826.5001 400.89,-833.5001"/>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4672" xlink:title="ZcashFoundation/zebra#4672&#10;Add support for Orchard&#10;proof batch verification" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2513.5 75,-2513.5 75,-2460.5 307,-2460.5 307,-2513.5"/>
<text text-anchor="middle" x="191" y="-2498.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="191" y="-2483.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="191" y="-2468.3" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node37" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4841" xlink:title="ZcashFoundation/zebra#4841&#10;Improve note commitment&#10;tree append performance" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="643,-2649.5 411,-2649.5 411,-2596.5 643,-2596.5 643,-2649.5"/>
<text text-anchor="middle" x="527" y="-2634.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="527" y="-2619.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="527" y="-2604.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2816.5 75,-2816.5 75,-2733.5 307,-2733.5 307,-2816.5"/>
<text text-anchor="middle" x="191" y="-2801.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="191" y="-2786.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="191" y="-2771.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="191" y="-2756.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="191" y="-2741.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3096" xlink:title="ZcashFoundation/zebra#3096&#10;Epic: Zebra Release&#10;Candidates" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2887.5 75,-2887.5 75,-2834.5 307,-2834.5 307,-2887.5"/>
<text text-anchor="middle" x="191" y="-2872.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="191" y="-2857.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="191" y="-2842.3" font-family="Times,serif" font-size="14.00" fill="#000000">Candidates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4774" xlink:title="ZcashFoundation/zebra#4774&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Orchard&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2715.5 75,-2715.5 75,-2632.5 307,-2632.5 307,-2715.5"/>
<text text-anchor="middle" x="191" y="-2700.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="191" y="-2685.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-2670.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-2655.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="191" y="-2640.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="edge12" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-2656.4C337.4,-2651.8 370.19,-2646.8 400.97,-2642.1"/>
<polygon fill="#000000" stroke="#000000" points="401.5257,-2645.5558 410.89,-2640.6 400.4791,-2638.6345 401.5257,-2645.5558"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4775" xlink:title="ZcashFoundation/zebra#4775&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Sapling&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2614.5 75,-2614.5 75,-2531.5 307,-2531.5 307,-2614.5"/>
<text text-anchor="middle" x="191" y="-2599.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="191" y="-2584.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-2569.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-2554.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="191" y="-2539.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="edge13" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-2590.3C337.4,-2594.8 370.19,-2599.7 400.97,-2604.2"/>
<polygon fill="#000000" stroke="#000000" points="400.4791,-2607.6655 410.89,-2605.7 401.5257,-2600.7442 400.4791,-2607.6655"/>
</g>
<!-- ZcashFoundation/zebra#5198 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#5198</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5198" xlink:title="ZcashFoundation/zebra#5198&#10;build(deps): bump insta&#10;from 1.19.1 to 1.20.0" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-60.5 75,-60.5 75,-56.5 71,-56.5 71,-52.5 75,-52.5 75,-15.5 71,-15.5 71,-11.5 75,-11.5 75,-7.5 307,-7.5 307,-60.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-56.5 79,-56.5 79,-52.5 75,-52.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-15.5 79,-15.5 79,-11.5 75,-11.5 "/>
<text text-anchor="middle" x="191" y="-45.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5198</text>
<text text-anchor="middle" x="191" y="-30.3" font-family="Times,serif" font-size="14.00" fill="#000000">build(deps): bump insta</text>
<text text-anchor="middle" x="191" y="-15.3" font-family="Times,serif" font-size="14.00" fill="#000000">from 1.19.1 to 1.20.0</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5199 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#5199</title>
<g id="a_node43"><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" 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#5199</text>
<text text-anchor="middle" x="527" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider using `nextest`</text>
<text text-anchor="middle" x="527" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">to run tests faster and</text>
<text text-anchor="middle" x="527" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">reduce Google Cloud costs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5198&#45;&gt;ZcashFoundation/zebra#5199 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#5198&#45;&gt;ZcashFoundation/zebra#5199</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#5199&#45;&gt;ZcashFoundation/zebra#5189 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#5199&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M643.16,-67.982C645.87,-69.88 648.49,-71.885 651,-74 727.56,-138.62 768.75,-254.37 785.65,-313.32"/>
<polygon fill="#000000" stroke="#000000" points="782.3749,-314.606 788.43,-323.3 789.1182,-312.7275 782.3749,-314.606"/>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node44"><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,-2988.5 75,-2988.5 75,-2905.5 307,-2905.5 307,-2988.5"/>
<text text-anchor="middle" x="191" y="-2973.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="191" y="-2958.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="191" y="-2943.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="191" y="-2928.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="191" y="-2913.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node45" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node45"><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,-2981 411,-2981 411,-2913 643,-2913 643,-2981"/>
<text text-anchor="middle" x="527" y="-2965.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="527" y="-2950.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="527" y="-2935.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="527" y="-2920.8" font-family="Times,serif" font-size="14.00" fill="#000000">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M307.1,-2947C337.27,-2947 369.91,-2947 400.57,-2947"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-2950.5001 410.89,-2947 400.89,-2943.5001 400.89,-2950.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>