developers/zcash-zf-dag.html

676 lines
52 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="1187pt" height="3125pt"
viewBox="0.00 0.00 1187.00 3124.91" 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 3120.907)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-3120.907 1183,-3120.907 1183,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="0,-22.007 0,-3116.907 1179,-3116.907 1179,-22.007 0,-22.007"/>
<text text-anchor="middle" x="589.5" y="-3101.707" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="403,-134.397 403,-989.397 919,-989.397 919,-134.397 403,-134.397"/>
<text text-anchor="middle" x="661" y="-974.197" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidates</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="67,-997.397 67,-1851.407 651,-1851.407 651,-997.397 67,-997.397"/>
<text text-anchor="middle" x="359" y="-1836.207" font-family="Times,serif" font-size="14.00" fill="#000000">DevOps Ticket Tracker</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,-1859.407 0,-2052.407 383,-2052.407 383,-1859.407 0,-1859.407"/>
<text text-anchor="middle" x="191.5" y="-2037.207" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to state using a separate task</text>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1615" xlink:title="ZcashFoundation/zebra#1615&#10;Zebra release candidate&#10;binaries should be linked&#10;from ZFND website" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-958.397 411,-958.397 411,-890.397 643,-890.397 643,-958.397"/>
<text text-anchor="middle" x="527" y="-943.197" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="527" y="-928.197" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="527" y="-913.197" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="527" y="-898.197" 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="911,-805.897 679,-805.897 679,-752.897 911,-752.897 911,-805.897"/>
<text text-anchor="middle" x="795" y="-790.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="795" y="-775.697" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;rc.0</text>
<text text-anchor="middle" x="795" y="-760.697" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</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,-1590.907 75,-1590.907 75,-1537.907 307,-1537.907 307,-1590.907"/>
<text text-anchor="middle" x="191" y="-1575.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="191" y="-1560.707" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="191" y="-1545.707" 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="edge9" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992</title>
<path fill="none" stroke="#000000" d="M793.84,-752.577C788.11,-634.787 758.74,-165.277 651,-77.4 565.59,-7.73 481.47,0 403,-77.4 374.3,-105.706 408.96,-1497.607 383,-1528.407 366.32,-1548.207 342.51,-1559.407 317.31,-1565.407"/>
<polygon fill="#000000" stroke="#000000" points="316.2881,-1562.0445 307.21,-1567.507 317.7131,-1568.898 316.2881,-1562.0445"/>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4967" xlink:title="ZcashFoundation/zebra#4967&#10;feat(rpc): add&#10;getblockhash rpc method" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1179,-805.897 947,-805.897 947,-801.897 943,-801.897 943,-797.897 947,-797.897 947,-760.897 943,-760.897 943,-756.897 947,-756.897 947,-752.897 1179,-752.897 1179,-805.897"/>
<polyline fill="none" stroke="#000000" points="947,-801.897 951,-801.897 951,-797.897 947,-797.897 "/>
<polyline fill="none" stroke="#000000" points="947,-760.897 951,-760.897 951,-756.897 947,-756.897 "/>
<text text-anchor="middle" x="1063" y="-790.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="1063" y="-775.697" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="1063" y="-760.697" 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="edge10" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M911.38,-779.397C919.71,-779.397 928.14,-779.397 936.53,-779.397"/>
<polygon fill="#000000" stroke="#000000" points="936.74,-782.8971 946.74,-779.397 936.74,-775.8971 936.74,-782.8971"/>
</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="643,-871.897 411,-871.897 411,-788.897 643,-788.897 643,-871.897"/>
<text text-anchor="middle" x="527" y="-856.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="527" y="-841.697" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="527" y="-826.697" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="527" y="-811.697" font-family="Times,serif" font-size="14.00" fill="#000000">goes all the way to the</text>
<text text-anchor="middle" x="527" y="-796.697" 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="M643.38,-808.257C651.81,-806.647 660.33,-805.027 668.81,-803.417"/>
<polygon fill="#000000" stroke="#000000" points="669.5708,-806.8351 678.74,-801.527 668.2619,-799.9586 669.5708,-806.8351"/>
</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="643,-770.897 411,-770.897 411,-687.897 643,-687.897 643,-770.897"/>
<text text-anchor="middle" x="527" y="-755.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4778</text>
<text text-anchor="middle" x="527" y="-740.697" font-family="Times,serif" font-size="14.00" fill="#000000">Replace old release</text>
<text text-anchor="middle" x="527" y="-725.697" font-family="Times,serif" font-size="14.00" fill="#000000">criteria with stable</text>
<text text-anchor="middle" x="527" y="-710.697" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate</text>
<text text-anchor="middle" x="527" y="-695.697" 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="M643.38,-751.117C651.81,-752.687 660.33,-754.277 668.81,-755.857"/>
<polygon fill="#000000" stroke="#000000" points="668.2681,-759.3162 678.74,-757.707 669.5502,-752.4346 668.2681,-759.3162"/>
</g>
<!-- ZcashFoundation/zebra#5121 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5121</title>
<g id="a_node5"><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,-669.897 411,-669.897 411,-616.897 643,-616.897 643,-669.897"/>
<text text-anchor="middle" x="527" y="-654.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5121</text>
<text text-anchor="middle" x="527" y="-639.697" font-family="Times,serif" font-size="14.00" fill="#000000">Document where users can</text>
<text text-anchor="middle" x="527" y="-624.697" font-family="Times,serif" font-size="14.00" fill="#000000">get support</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,-598.397 411,-598.397 411,-530.397 643,-530.397 643,-598.397"/>
<text text-anchor="middle" x="527" y="-583.197" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5120</text>
<text text-anchor="middle" x="527" y="-568.197" font-family="Times,serif" font-size="14.00" fill="#000000">Prepare issue and</text>
<text text-anchor="middle" x="527" y="-553.197" font-family="Times,serif" font-size="14.00" fill="#000000">response templates for</text>
<text text-anchor="middle" x="527" y="-538.197" 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,-511.897 411,-511.897 411,-458.897 643,-458.897 643,-511.897"/>
<text text-anchor="middle" x="527" y="-496.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4821</text>
<text text-anchor="middle" x="527" y="-481.697" font-family="Times,serif" font-size="14.00" fill="#000000">Open the database in a</text>
<text text-anchor="middle" x="527" y="-466.697" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tokio thread</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#4937</title>
<g id="a_node8"><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,-440.397 411,-440.397 411,-372.397 643,-372.397 643,-440.397"/>
<text text-anchor="middle" x="527" y="-425.197" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="527" y="-410.197" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Commit blocks to</text>
<text text-anchor="middle" x="527" y="-395.197" font-family="Times,serif" font-size="14.00" fill="#000000">state using a separate</text>
<text text-anchor="middle" x="527" y="-380.197" font-family="Times,serif" font-size="14.00" fill="#000000">task</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,-353.897 411,-353.897 411,-300.897 643,-300.897 643,-353.897"/>
<text text-anchor="middle" x="527" y="-338.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="527" y="-323.697" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="527" y="-308.697" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4678 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#4678</title>
<g id="a_node10"><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="643,-282.397 411,-282.397 411,-214.397 643,-214.397 643,-282.397"/>
<text text-anchor="middle" x="527" y="-267.197" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4678</text>
<text text-anchor="middle" x="527" y="-252.197" font-family="Times,serif" font-size="14.00" fill="#000000">Return peer metadata from</text>
<text text-anchor="middle" x="527" y="-237.197" font-family="Times,serif" font-size="14.00" fill="#000000">`connect_isolated`</text>
<text text-anchor="middle" x="527" y="-222.197" font-family="Times,serif" font-size="14.00" fill="#000000">functions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node11"><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,-195.897 411,-195.897 411,-142.897 643,-142.897 643,-195.897"/>
<text text-anchor="middle" x="527" y="-180.697" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="527" y="-165.697" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="527" y="-150.697" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</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,-1661.907 75,-1661.907 75,-1608.907 307,-1608.907 307,-1661.907"/>
<text text-anchor="middle" x="191" y="-1646.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="191" y="-1631.707" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="191" y="-1616.707" 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="edge6" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M307.13,-1638.807C335.89,-1633.707 363.91,-1622.507 383,-1600.407 427.07,-1549.307 367.85,-1051.007 403,-993.397 409.9,-982.087 419.38,-972.487 430.04,-964.367"/>
<polygon fill="#000000" stroke="#000000" points="432.2668,-967.079 438.41,-958.447 428.2246,-961.364 432.2668,-967.079"/>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node13"><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="307,-1819.907 75,-1819.907 75,-1766.907 307,-1766.907 307,-1819.907"/>
<text text-anchor="middle" x="191" y="-1804.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="191" y="-1789.707" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
<text text-anchor="middle" x="191" y="-1774.707" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node14"><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="643,-1820.407 411,-1820.407 411,-1752.407 643,-1752.407 643,-1820.407"/>
<text text-anchor="middle" x="527" y="-1805.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="527" y="-1790.207" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="527" y="-1775.207" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="527" y="-1760.207" 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="edge3" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4954</title>
<path fill="none" stroke="#000000" d="M307.1,-1791.007C337.27,-1790.307 369.91,-1789.707 400.57,-1789.007"/>
<polygon fill="#000000" stroke="#000000" points="400.9597,-1792.5002 410.89,-1788.807 400.824,-1785.5015 400.9597,-1792.5002"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node15"><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="643,-1734.407 411,-1734.407 411,-1666.407 643,-1666.407 643,-1734.407"/>
<text text-anchor="middle" x="527" y="-1719.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="527" y="-1704.207" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="527" y="-1689.207" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="527" y="-1674.207" 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="edge4" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412</title>
<path fill="none" stroke="#000000" d="M307.04,-1779.807C332.67,-1774.607 359.24,-1767.407 383,-1757.407 393,-1753.207 393.34,-1748.307 403,-1743.407 406.14,-1741.807 409.35,-1740.207 412.62,-1738.707"/>
<polygon fill="#000000" stroke="#000000" points="414.261,-1741.8065 421.94,-1734.507 411.385,-1735.4246 414.261,-1741.8065"/>
</g>
<!-- ZcashFoundation/zebra#755 -->
<g id="node27" class="node closed">
<title>ZcashFoundation/zebra#755</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/755" xlink:title="ZcashFoundation/zebra#755&#10;Automate zebrad releases" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="638.5,-124.4 415.5,-124.4 415.5,-86.4 638.5,-86.4 638.5,-124.4"/>
<text text-anchor="middle" x="527" y="-109.2" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#755</text>
<text text-anchor="middle" x="527" y="-94.2" font-family="Times,serif" font-size="14.00" fill="#000000">Automate zebrad releases</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M307.23,-1796.507C336.09,-1791.207 364.13,-1779.907 383,-1757.407 441.16,-1688.207 345.32,-199.997 403,-130.397 404.37,-128.747 405.81,-127.187 407.32,-125.717"/>
<polygon fill="#000000" stroke="#000000" points="409.9256,-128.1039 415.4,-119.033 405.4638,-122.7102 409.9256,-128.1039"/>
</g>
<!-- ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M642.46,-1752.207C645.52,-1749.507 648.38,-1746.507 651,-1743.407 771.42,-1598.307 791.31,-975.157 794.44,-816.347"/>
<polygon fill="#000000" stroke="#000000" points="797.9431,-816.2105 794.63,-806.147 790.9443,-816.08 797.9431,-816.2105"/>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node16"><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,-1648.407 411,-1648.407 411,-1580.407 643,-1580.407 643,-1648.407"/>
<text text-anchor="middle" x="527" y="-1633.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="527" y="-1618.207" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="527" y="-1603.207" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="527" y="-1588.207" 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,-1748.407 75,-1748.407 75,-1680.407 307,-1680.407 307,-1748.407"/>
<text text-anchor="middle" x="191" y="-1733.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="191" y="-1718.207" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="191" y="-1703.207" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="191" y="-1688.207" 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="edge5" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M307.05,-1696.107C332.68,-1689.907 359.25,-1681.907 383,-1671.407 392.93,-1667.007 393.34,-1662.307 403,-1657.407 406.14,-1655.807 409.35,-1654.207 412.62,-1652.707"/>
<polygon fill="#000000" stroke="#000000" points="414.261,-1655.8065 421.94,-1648.507 411.385,-1649.4246 414.261,-1655.8065"/>
</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,-1519.407 75,-1519.407 75,-1451.407 307,-1451.407 307,-1519.407"/>
<text text-anchor="middle" x="191" y="-1504.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="191" y="-1489.207" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="191" y="-1474.207" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="191" y="-1459.207" 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,-1433.407 75,-1433.407 75,-1365.407 307,-1365.407 307,-1433.407"/>
<text text-anchor="middle" x="191" y="-1418.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4529</text>
<text text-anchor="middle" x="191" y="-1403.207" font-family="Times,serif" font-size="14.00" fill="#000000">Make PRs from external</text>
<text text-anchor="middle" x="191" y="-1388.207" font-family="Times,serif" font-size="14.00" fill="#000000">repositories pass or skip</text>
<text text-anchor="middle" x="191" y="-1373.207" font-family="Times,serif" font-size="14.00" fill="#000000">CI jobs</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="307,-1347.407 75,-1347.407 75,-1279.407 307,-1279.407 307,-1347.407"/>
<text text-anchor="middle" x="191" y="-1332.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4955</text>
<text text-anchor="middle" x="191" y="-1317.207" font-family="Times,serif" font-size="14.00" fill="#000000">Make long&#45;running test</text>
<text text-anchor="middle" x="191" y="-1302.207" font-family="Times,serif" font-size="14.00" fill="#000000">names match workflow</text>
<text text-anchor="middle" x="191" y="-1287.207" 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="307,-1261.407 75,-1261.407 75,-1193.407 307,-1193.407 307,-1261.407"/>
<text text-anchor="middle" x="191" y="-1246.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4956</text>
<text text-anchor="middle" x="191" y="-1231.207" font-family="Times,serif" font-size="14.00" fill="#000000">Make file locations</text>
<text text-anchor="middle" x="191" y="-1216.207" font-family="Times,serif" font-size="14.00" fill="#000000">appear in zebrad Docker</text>
<text text-anchor="middle" x="191" y="-1201.207" 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="307,-1175.407 75,-1175.407 75,-1107.407 307,-1107.407 307,-1175.407"/>
<text text-anchor="middle" x="191" y="-1160.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4976</text>
<text text-anchor="middle" x="191" y="-1145.207" font-family="Times,serif" font-size="14.00" fill="#000000">Move continuous</text>
<text text-anchor="middle" x="191" y="-1130.207" font-family="Times,serif" font-size="14.00" fill="#000000">deployment to another</text>
<text text-anchor="middle" x="191" y="-1115.207" 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="307,-1088.907 75,-1088.907 75,-1005.907 307,-1005.907 307,-1088.907"/>
<text text-anchor="middle" x="191" y="-1073.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4946</text>
<text text-anchor="middle" x="191" y="-1058.707" font-family="Times,serif" font-size="14.00" fill="#000000">Managed instance groups</text>
<text text-anchor="middle" x="191" y="-1043.707" font-family="Times,serif" font-size="14.00" fill="#000000">deployed with continuous</text>
<text text-anchor="middle" x="191" y="-1028.707" font-family="Times,serif" font-size="14.00" fill="#000000">deployment can&#39;t scale</text>
<text text-anchor="middle" x="191" y="-1013.707" font-family="Times,serif" font-size="14.00" fill="#000000">beyond 1 instance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5102 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5102</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5102" xlink:title="ZcashFoundation/zebra#5102&#10;Make StateService&#10;requests into concurrent&#10;ReadStateService requests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2021.407 75,-2021.407 75,-1953.407 307,-1953.407 307,-2021.407"/>
<text text-anchor="middle" x="191" y="-2006.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5102</text>
<text text-anchor="middle" x="191" y="-1991.207" font-family="Times,serif" font-size="14.00" fill="#000000">Make StateService</text>
<text text-anchor="middle" x="191" y="-1976.207" font-family="Times,serif" font-size="14.00" fill="#000000">requests into concurrent</text>
<text text-anchor="middle" x="191" y="-1961.207" font-family="Times,serif" font-size="14.00" fill="#000000">ReadStateService requests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5125 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5125</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5125" xlink:title="ZcashFoundation/zebra#5125&#10;Avoid temporary failures&#10;verifying the first non&#45;&#10;finalized block" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-1935.407 75,-1935.407 75,-1867.407 307,-1867.407 307,-1935.407"/>
<text text-anchor="middle" x="191" y="-1920.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5125</text>
<text text-anchor="middle" x="191" y="-1905.207" font-family="Times,serif" font-size="14.00" fill="#000000">Avoid temporary failures</text>
<text text-anchor="middle" x="191" y="-1890.207" font-family="Times,serif" font-size="14.00" fill="#000000">verifying the first non&#45;</text>
<text text-anchor="middle" x="191" y="-1875.207" font-family="Times,serif" font-size="14.00" fill="#000000">finalized block</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="302.5,-2113.907 79.5,-2113.907 79.5,-2060.907 302.5,-2060.907 302.5,-2113.907"/>
<text text-anchor="middle" x="191" y="-2098.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="191" y="-2083.707" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="191" y="-2068.707" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="638.5,-2160.407 415.5,-2160.407 415.5,-2092.407 638.5,-2092.407 638.5,-2160.407"/>
<text text-anchor="middle" x="527" y="-2145.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="527" y="-2130.207" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="527" y="-2115.207" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="527" y="-2100.207" 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="edge11" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M302.88,-2100.407C335.67,-2104.207 371.67,-2108.407 405.05,-2112.207"/>
<polygon fill="#000000" stroke="#000000" points="404.9813,-2115.7227 415.32,-2113.407 405.7938,-2108.77 404.9813,-2115.7227"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="643,-2073.907 411,-2073.907 411,-2020.907 643,-2020.907 643,-2073.907"/>
<text text-anchor="middle" x="527" y="-2058.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="527" y="-2043.707" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="527" y="-2028.707" 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="edge12" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M302.88,-2074.107C334.15,-2070.407 368.34,-2066.307 400.39,-2062.507"/>
<polygon fill="#000000" stroke="#000000" points="401.2353,-2065.9283 410.72,-2061.207 400.3612,-2058.9831 401.2353,-2065.9283"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="302.5,-2170.407 79.5,-2170.407 79.5,-2132.407 302.5,-2132.407 302.5,-2170.407"/>
<text text-anchor="middle" x="191" y="-2155.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="191" y="-2140.207" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2631" xlink:title="ZcashFoundation/zebra#2631&#10;Send committed spent&#10;OutPoints &amp; nullifiers to&#10;the mempool for rejection" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2256.407 75,-2256.407 75,-2188.407 307,-2188.407 307,-2256.407"/>
<text text-anchor="middle" x="191" y="-2241.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="191" y="-2226.207" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="191" y="-2211.207" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="191" y="-2196.207" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2327.907 75,-2327.907 75,-2274.907 307,-2274.907 307,-2327.907"/>
<text text-anchor="middle" x="191" y="-2312.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="191" y="-2297.707" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="191" y="-2282.707" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2398.907 75,-2398.907 75,-2345.907 307,-2345.907 307,-2398.907"/>
<text text-anchor="middle" x="191" y="-2383.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="191" y="-2368.707" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="191" y="-2353.707" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4672" xlink:title="ZcashFoundation/zebra#4672&#10;Add support for Orchard&#10;proof batch verification" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-2469.907 75,-2469.907 75,-2416.907 307,-2416.907 307,-2469.907"/>
<text text-anchor="middle" x="191" y="-2454.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="191" y="-2439.707" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="191" y="-2424.707" 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,-2605.907 411,-2605.907 411,-2552.907 643,-2552.907 643,-2605.907"/>
<text text-anchor="middle" x="527" y="-2590.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="527" y="-2575.707" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="527" y="-2560.707" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4870 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#4870</title>
<g id="a_node38"><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="307,-2772.907 75,-2772.907 75,-2768.907 71,-2768.907 71,-2764.907 75,-2764.907 75,-2697.907 71,-2697.907 71,-2693.907 75,-2693.907 75,-2689.907 307,-2689.907 307,-2772.907"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-2768.907 79,-2768.907 79,-2764.907 75,-2764.907 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="75,-2697.907 79,-2697.907 79,-2693.907 75,-2693.907 "/>
<text text-anchor="middle" x="191" y="-2757.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4870</text>
<text text-anchor="middle" x="191" y="-2742.707" font-family="Times,serif" font-size="14.00" fill="#000000">feat(net): return peer</text>
<text text-anchor="middle" x="191" y="-2727.707" font-family="Times,serif" font-size="14.00" fill="#000000">metadata from</text>
<text text-anchor="middle" x="191" y="-2712.707" font-family="Times,serif" font-size="14.00" fill="#000000">`connect_isolated`</text>
<text text-anchor="middle" x="191" y="-2697.707" font-family="Times,serif" font-size="14.00" fill="#000000">functions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node39"><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,-2873.907 75,-2873.907 75,-2790.907 307,-2790.907 307,-2873.907"/>
<text text-anchor="middle" x="191" y="-2858.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="191" y="-2843.707" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="191" y="-2828.707" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="191" y="-2813.707" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="191" y="-2798.707" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node40"><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,-2944.907 75,-2944.907 75,-2891.907 307,-2891.907 307,-2944.907"/>
<text text-anchor="middle" x="191" y="-2929.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="191" y="-2914.707" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="191" y="-2899.707" font-family="Times,serif" font-size="14.00" fill="#000000">Candidates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node41"><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,-2671.907 75,-2671.907 75,-2588.907 307,-2588.907 307,-2671.907"/>
<text text-anchor="middle" x="191" y="-2656.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="191" y="-2641.707" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-2626.707" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-2611.707" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="191" y="-2596.707" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-2612.807C337.4,-2608.207 370.19,-2603.207 400.97,-2598.507"/>
<polygon fill="#000000" stroke="#000000" points="401.5257,-2601.9628 410.89,-2597.007 400.4791,-2595.0415 401.5257,-2601.9628"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node42"><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,-2570.907 75,-2570.907 75,-2487.907 307,-2487.907 307,-2570.907"/>
<text text-anchor="middle" x="191" y="-2555.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="191" y="-2540.707" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="191" y="-2525.707" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="191" y="-2510.707" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="191" y="-2495.707" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M307.1,-2546.707C337.4,-2551.207 370.19,-2556.107 400.97,-2560.607"/>
<polygon fill="#000000" stroke="#000000" points="400.4791,-2564.0725 410.89,-2562.107 401.5257,-2557.1512 400.4791,-2564.0725"/>
</g>
<!-- ZcashFoundation/zebra#5011 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#5011</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5011" xlink:title="ZcashFoundation/zebra#5011&#10;Tag Zebra 1.0.0&#45;beta.15&#10;release" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="307,-3015.907 75,-3015.907 75,-2962.907 307,-2962.907 307,-3015.907"/>
<text text-anchor="middle" x="191" y="-3000.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5011</text>
<text text-anchor="middle" x="191" y="-2985.707" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;beta.15</text>
<text text-anchor="middle" x="191" y="-2970.707" font-family="Times,serif" font-size="14.00" fill="#000000">release</text>
</a>
</g>
</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,-3116.907 75,-3116.907 75,-3033.907 307,-3033.907 307,-3116.907"/>
<text text-anchor="middle" x="191" y="-3101.707" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="191" y="-3086.707" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="191" y="-3071.707" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="191" y="-3056.707" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="191" y="-3041.707" 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,-3109.407 411,-3109.407 411,-3041.407 643,-3041.407 643,-3109.407"/>
<text text-anchor="middle" x="527" y="-3094.207" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="527" y="-3079.207" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="527" y="-3064.207" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="527" y="-3049.207" font-family="Times,serif" font-size="14.00" fill="#000000">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M307.1,-3075.407C337.27,-3075.407 369.91,-3075.407 400.57,-3075.407"/>
<polygon fill="#000000" stroke="#000000" points="400.89,-3078.9071 410.89,-3075.407 400.89,-3071.9071 400.89,-3078.9071"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>