developers/zcash-zf-dag.html

767 lines
57 KiB
HTML

<!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="1052pt" height="2471pt"
viewBox="0.00 0.00 1052.00 2471.00" 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 2467)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2467 1048,-2467 1048,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="0,-468.5 0,-835.5 784,-835.5 784,-468.5 0,-468.5"/>
<text text-anchor="middle" x="392" y="-820.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="0,-132.5 0,-397.5 516,-397.5 516,-132.5 0,-132.5"/>
<text text-anchor="middle" x="258" y="-382.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidate</text>
</g>
<!-- ZcashFoundation/zebra#5335 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#5335</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5335" xlink:title="ZcashFoundation/zebra#5335&#10;Evict transactions from&#10;the mempool based on the&#10;ZIP&#45;317 fee rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-804.5 276,-804.5 276,-736.5 508,-736.5 508,-804.5"/>
<text text-anchor="middle" x="392" y="-789.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5335</text>
<text text-anchor="middle" x="392" y="-774.3" font-family="Times,serif" font-size="14.00" fill="#000000">Evict transactions from</text>
<text text-anchor="middle" x="392" y="-759.3" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool based on the</text>
<text text-anchor="middle" x="392" y="-744.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5336" xlink:title="ZcashFoundation/zebra#5336&#10;Relay mempool&#10;transactions based on the&#10;ZIP&#45;317 fee rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="776,-764.5 544,-764.5 544,-696.5 776,-696.5 776,-764.5"/>
<text text-anchor="middle" x="660" y="-749.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="660" y="-734.3" font-family="Times,serif" font-size="14.00" fill="#000000">Relay mempool</text>
<text text-anchor="middle" x="660" y="-719.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="660" y="-704.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5335&#45;&gt;ZcashFoundation/zebra#5336 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#5335&#45;&gt;ZcashFoundation/zebra#5336</title>
<path fill="none" stroke="#000000" d="M508.38,-753.13C516.81,-751.87 525.33,-750.6 533.81,-749.33"/>
<polygon fill="#000000" stroke="#000000" points="534.3652,-752.786 543.74,-747.85 533.3333,-745.8625 534.3652,-752.786"/>
</g>
<!-- ZcashFoundation/zebra#5235 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5235</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5235" xlink:title="ZcashFoundation/zebra#5235&#10;Tracking: Implement&#10;getblocktemplate RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-718 276,-718 276,-665 508,-665 508,-718"/>
<text text-anchor="middle" x="392" y="-702.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5235</text>
<text text-anchor="middle" x="392" y="-687.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Implement</text>
<text text-anchor="middle" x="392" y="-672.8" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5235&#45;&gt;ZcashFoundation/zebra#5336 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5235&#45;&gt;ZcashFoundation/zebra#5336</title>
<path fill="none" stroke="#000000" d="M508.38,-708.44C516.81,-709.66 525.33,-710.9 533.81,-712.14"/>
<polygon fill="#000000" stroke="#000000" points="533.3412,-715.6085 543.74,-713.58 534.3458,-708.681 533.3412,-715.6085"/>
</g>
<!-- ZcashFoundation/zebra#5376 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5376</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5376" xlink:title="ZcashFoundation/zebra#5376&#10;Do contextual validation&#10;on mempool transactions&#10;using the state best tip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-804.5 8,-804.5 8,-736.5 240,-736.5 240,-804.5"/>
<text text-anchor="middle" x="124" y="-789.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5376</text>
<text text-anchor="middle" x="124" y="-774.3" font-family="Times,serif" font-size="14.00" fill="#000000">Do contextual validation</text>
<text text-anchor="middle" x="124" y="-759.3" font-family="Times,serif" font-size="14.00" fill="#000000">on mempool transactions</text>
<text text-anchor="middle" x="124" y="-744.3" font-family="Times,serif" font-size="14.00" fill="#000000">using the state best tip</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5376&#45;&gt;ZcashFoundation/zebra#5235 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#5376&#45;&gt;ZcashFoundation/zebra#5235</title>
<path fill="none" stroke="#000000" d="M239.6,-736.42C257.01,-731.29 274.84,-726.04 291.89,-721.01"/>
<polygon fill="#000000" stroke="#000000" points="293.2277,-724.2647 301.83,-718.08 291.2484,-717.5503 293.2277,-724.2647"/>
</g>
<!-- ZcashFoundation/zebra#5236 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5236</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5236" xlink:title="ZcashFoundation/zebra#5236&#10;Add support for&#10;`submitblock` RPC call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-718 8,-718 8,-665 240,-665 240,-718"/>
<text text-anchor="middle" x="124" y="-702.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5236</text>
<text text-anchor="middle" x="124" y="-687.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="124" y="-672.8" font-family="Times,serif" font-size="14.00" fill="#000000">`submitblock` RPC call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5302 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5302</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5302" xlink:title="ZcashFoundation/zebra#5302&#10;Add support for&#10;`getblocksubsidy` RPC&#10;call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-646.5 8,-646.5 8,-578.5 240,-578.5 240,-646.5"/>
<text text-anchor="middle" x="124" y="-631.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5302</text>
<text text-anchor="middle" x="124" y="-616.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="124" y="-601.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocksubsidy` RPC</text>
<text text-anchor="middle" x="124" y="-586.3" font-family="Times,serif" font-size="14.00" fill="#000000">call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5386 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#5386</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5386" xlink:title="ZcashFoundation/zebra#5386&#10;Use BestChainUtxo rather&#10;than AwaitUtxo in the&#10;mempool transaction&#10;validator" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-560 8,-560 8,-477 240,-477 240,-560"/>
<text text-anchor="middle" x="124" y="-544.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5386</text>
<text text-anchor="middle" x="124" y="-529.8" font-family="Times,serif" font-size="14.00" fill="#000000">Use BestChainUtxo rather</text>
<text text-anchor="middle" x="124" y="-514.8" font-family="Times,serif" font-size="14.00" fill="#000000">than AwaitUtxo in the</text>
<text text-anchor="middle" x="124" y="-499.8" font-family="Times,serif" font-size="14.00" fill="#000000">mempool transaction</text>
<text text-anchor="middle" x="124" y="-484.8" font-family="Times,serif" font-size="14.00" fill="#000000">validator</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5214 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5214</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5214" xlink:title="ZcashFoundation/zebra#5214&#10;Task: Make a list of&#10;Zebra dependencies" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-366 8,-366 8,-313 240,-313 240,-366"/>
<text text-anchor="middle" x="124" y="-350.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5214</text>
<text text-anchor="middle" x="124" y="-335.8" font-family="Times,serif" font-size="14.00" fill="#000000">Task: Make a list of</text>
<text text-anchor="middle" x="124" y="-320.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra dependencies</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5423 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#5423</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5423" xlink:title="ZcashFoundation/zebra#5423&#10;Tag Zebra 1.0.0&#45;rc.1" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-272.5 276,-272.5 276,-234.5 508,-234.5 508,-272.5"/>
<text text-anchor="middle" x="392" y="-257.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5423</text>
<text text-anchor="middle" x="392" y="-242.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;rc.1</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5214&#45;&gt;ZcashFoundation/zebra#5423 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#5214&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M213.07,-312.93C222.18,-310.12 231.28,-307.28 240,-304.5 268.58,-295.4 300.03,-284.92 326.88,-275.84"/>
<polygon fill="#000000" stroke="#000000" points="328.1963,-279.0894 336.54,-272.56 325.9456,-272.4611 328.1963,-279.0894"/>
</g>
<!-- ZcashFoundation/zebra#5445 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5445</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5445" xlink:title="ZcashFoundation/zebra#5445&#10;Bump `zcash_proofs` to&#10;0.8.0" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-194 8,-194 8,-141 240,-141 240,-194"/>
<text text-anchor="middle" x="124" y="-178.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5445</text>
<text text-anchor="middle" x="124" y="-163.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bump `zcash_proofs` to</text>
<text text-anchor="middle" x="124" y="-148.8" font-family="Times,serif" font-size="14.00" fill="#000000">0.8.0</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5423 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M210.2,-194.07C220.26,-197.23 230.36,-200.42 240,-203.5 267.93,-212.43 298.66,-222.49 325.14,-231.24"/>
<polygon fill="#000000" stroke="#000000" points="324.0967,-234.5814 334.69,-234.4 326.2957,-227.9357 324.0967,-234.5814"/>
</g>
<!-- ZcashFoundation/zebra#3831 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#3831</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3831" xlink:title="ZcashFoundation/zebra#3831&#10;Remove duplicated&#10;zcash_proofs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-124 276,-124 276,-71 508,-71 508,-124"/>
<text text-anchor="middle" x="392" y="-108.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3831</text>
<text text-anchor="middle" x="392" y="-93.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove duplicated</text>
<text text-anchor="middle" x="392" y="-78.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_proofs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#3831 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#3831</title>
<path fill="none" stroke="#000000" d="M225.7,-140.94C243.65,-136.25 262.42,-131.35 280.62,-126.59"/>
<polygon fill="#000000" stroke="#000000" points="281.5754,-129.958 290.37,-124.05 279.8106,-123.1841 281.5754,-129.958"/>
</g>
<!-- ZcashFoundation/zebra#5091 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#5091</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5091" xlink:title="ZcashFoundation/zebra#5091&#10;Fix parameter download&#10;hangs with Rust 1.64" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-53 276,-53 276,0 508,0 508,-53"/>
<text text-anchor="middle" x="392" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5091</text>
<text text-anchor="middle" x="392" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix parameter download</text>
<text text-anchor="middle" x="392" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">hangs with Rust 1.64</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5091 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5091</title>
<path fill="none" stroke="#000000" d="M155.64,-140.94C185.16,-117.29 231.26,-83.165 276,-61.5 279.32,-59.893 282.73,-58.341 286.2,-56.846"/>
<polygon fill="#000000" stroke="#000000" points="287.5923,-60.0579 295.51,-53.018 284.9303,-53.5838 287.5923,-60.0579"/>
</g>
<!-- ZcashFoundation/zebra#5446 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#5446</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5446" xlink:title="ZcashFoundation/zebra#5446&#10;Audit: remove zebra&#45;chain&#10;cryptographic&#10;implementations that are&#10;unused" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-295 8,-295 8,-212 240,-212 240,-295"/>
<text text-anchor="middle" x="124" y="-279.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5446</text>
<text text-anchor="middle" x="124" y="-264.8" font-family="Times,serif" font-size="14.00" fill="#000000">Audit: remove zebra&#45;chain</text>
<text text-anchor="middle" x="124" y="-249.8" font-family="Times,serif" font-size="14.00" fill="#000000">cryptographic</text>
<text text-anchor="middle" x="124" y="-234.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementations that are</text>
<text text-anchor="middle" x="124" y="-219.8" font-family="Times,serif" font-size="14.00" fill="#000000">unused</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5446&#45;&gt;ZcashFoundation/zebra#5423 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#5446&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M240.38,-253.5C248.71,-253.5 257.14,-253.5 265.53,-253.5"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-257.0001 275.74,-253.5 265.74,-250.0001 265.74,-257.0001"/>
</g>
<!-- ZcashFoundation/zebra#3831&#45;&gt;ZcashFoundation/zebra#5423 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#3831&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M392,-124.01C392,-157.32 392,-190.63 392,-223.94"/>
<polygon fill="#000000" stroke="#000000" points="388.5001,-224.28 392,-234.28 395.5001,-224.28 388.5001,-224.28"/>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5297" xlink:title="ZcashFoundation/zebra#5297&#10;Add metrics for chain&#10;fork work and lengths" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-897 8,-897 8,-844 240,-844 240,-897"/>
<text text-anchor="middle" x="124" y="-881.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="124" y="-866.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="124" y="-851.8" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5015 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#5015</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5015" xlink:title="ZcashFoundation/zebra#5015&#10;Get transactions from the&#10;non&#45;finalized state in&#10;the send transactions&#10;test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-998 8,-998 8,-915 240,-915 240,-998"/>
<text text-anchor="middle" x="124" y="-982.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5015</text>
<text text-anchor="middle" x="124" y="-967.8" font-family="Times,serif" font-size="14.00" fill="#000000">Get transactions from the</text>
<text text-anchor="middle" x="124" y="-952.8" font-family="Times,serif" font-size="14.00" fill="#000000">non&#45;finalized state in</text>
<text text-anchor="middle" x="124" y="-937.8" font-family="Times,serif" font-size="14.00" fill="#000000">the send transactions</text>
<text text-anchor="middle" x="124" y="-922.8" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node16"><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="240,-1084.5 8,-1084.5 8,-1016.5 240,-1016.5 240,-1084.5"/>
<text text-anchor="middle" x="124" y="-1069.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="124" y="-1054.3" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="124" y="-1039.3" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="124" y="-1024.3" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node17" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node17"><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="503.5,-1077 280.5,-1077 280.5,-1024 503.5,-1024 503.5,-1077"/>
<text text-anchor="middle" x="392" y="-1061.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="392" y="-1046.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="392" y="-1031.8" 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="M240.38,-1050.5C250.23,-1050.5 260.22,-1050.5 270.11,-1050.5"/>
<polygon fill="#000000" stroke="#000000" points="270.39,-1054.0001 280.39,-1050.5 270.39,-1047.0001 270.39,-1054.0001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node18"><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="240,-1156 8,-1156 8,-1103 240,-1103 240,-1156"/>
<text text-anchor="middle" x="124" y="-1140.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="124" y="-1125.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="124" y="-1110.8" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node19"><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="240,-1227 8,-1227 8,-1174 240,-1174 240,-1227"/>
<text text-anchor="middle" x="124" y="-1211.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="124" y="-1196.8" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="124" y="-1181.8" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node20"><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" stroke-width="2" points="240,-1313.5 8,-1313.5 8,-1245.5 240,-1245.5 240,-1313.5"/>
<text text-anchor="middle" x="124" y="-1298.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="124" y="-1283.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="124" y="-1268.3" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="124" y="-1253.3" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node21"><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="240,-1399.5 8,-1399.5 8,-1331.5 240,-1331.5 240,-1399.5"/>
<text text-anchor="middle" x="124" y="-1384.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="124" y="-1369.3" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="124" y="-1354.3" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="124" y="-1339.3" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node22"><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="240,-1471 8,-1471 8,-1418 240,-1418 240,-1471"/>
<text text-anchor="middle" x="124" y="-1455.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="124" y="-1440.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="124" y="-1425.8" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5451 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#5451</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5451" xlink:title="ZcashFoundation/zebra#5451&#10;1&#45; Introduce&#10;`getblocktemplate` RPC&#10;method" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-1557.5 8,-1557.5 8,-1489.5 240,-1489.5 240,-1557.5"/>
<text text-anchor="middle" x="124" y="-1542.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5451</text>
<text text-anchor="middle" x="124" y="-1527.3" font-family="Times,serif" font-size="14.00" fill="#000000">1&#45; Introduce</text>
<text text-anchor="middle" x="124" y="-1512.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` RPC</text>
<text text-anchor="middle" x="124" y="-1497.3" font-family="Times,serif" font-size="14.00" fill="#000000">method</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5455 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#5455</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5455" xlink:title="ZcashFoundation/zebra#5455&#10;3&#45; Populate&#10;`BlockTemplate` fields&#10;using a new state request" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-1650.5 276,-1650.5 276,-1582.5 508,-1582.5 508,-1650.5"/>
<text text-anchor="middle" x="392" y="-1635.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5455</text>
<text text-anchor="middle" x="392" y="-1620.3" font-family="Times,serif" font-size="14.00" fill="#000000">3&#45; Populate</text>
<text text-anchor="middle" x="392" y="-1605.3" font-family="Times,serif" font-size="14.00" fill="#000000">`BlockTemplate` fields</text>
<text text-anchor="middle" x="392" y="-1590.3" font-family="Times,serif" font-size="14.00" fill="#000000">using a new state request</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5455 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5455</title>
<path fill="none" stroke="#000000" d="M222.27,-1557.6C242.39,-1564.6 263.67,-1572 284.1,-1579.1"/>
<polygon fill="#000000" stroke="#000000" points="283.1454,-1582.4726 293.74,-1582.4 285.4126,-1575.8499 283.1454,-1582.4726"/>
</g>
<!-- ZcashFoundation/zebra#5452 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5452</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5452" xlink:title="ZcashFoundation/zebra#5452&#10;2&#45; Populate&#10;`Blocktemplate` responses&#10;with fixed values data" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-1564.5 276,-1564.5 276,-1496.5 508,-1496.5 508,-1564.5"/>
<text text-anchor="middle" x="392" y="-1549.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5452</text>
<text text-anchor="middle" x="392" y="-1534.3" font-family="Times,serif" font-size="14.00" fill="#000000">2&#45; Populate</text>
<text text-anchor="middle" x="392" y="-1519.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Blocktemplate` responses</text>
<text text-anchor="middle" x="392" y="-1504.3" font-family="Times,serif" font-size="14.00" fill="#000000">with fixed values data</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5452 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5452</title>
<path fill="none" stroke="#000000" d="M240.38,-1526.5C248.71,-1526.8 257.14,-1527 265.53,-1527.2"/>
<polygon fill="#000000" stroke="#000000" points="265.6415,-1530.7047 275.74,-1527.5 265.8471,-1523.7077 265.6415,-1530.7047"/>
</g>
<!-- ZcashFoundation/zebra#5466 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5466</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5466" xlink:title="ZcashFoundation/zebra#5466&#10;7&#45; Return an error from&#10;getblocktemplate if Zebra&#10;isn&#39;t synced to the tip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-1478.5 276,-1478.5 276,-1410.5 508,-1410.5 508,-1478.5"/>
<text text-anchor="middle" x="392" y="-1463.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5466</text>
<text text-anchor="middle" x="392" y="-1448.3" font-family="Times,serif" font-size="14.00" fill="#000000">7&#45; Return an error from</text>
<text text-anchor="middle" x="392" y="-1433.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate if Zebra</text>
<text text-anchor="middle" x="392" y="-1418.3" font-family="Times,serif" font-size="14.00" fill="#000000">isn&#39;t synced to the tip</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5466 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5466</title>
<path fill="none" stroke="#000000" d="M239.6,-1489.4C248.55,-1486.8 257.61,-1484.1 266.61,-1481.5"/>
<polygon fill="#000000" stroke="#000000" points="267.7728,-1484.8057 276.36,-1478.6 265.7771,-1478.0962 267.7728,-1484.8057"/>
</g>
<!-- ZcashFoundation/zebra#5453 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#5453</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5453" xlink:title="ZcashFoundation/zebra#5453&#10;4&#45; Populate transparent&#10;coinbase transaction data&#10;for `BlockTemplate`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="776,-1388.5 544,-1388.5 544,-1320.5 776,-1320.5 776,-1388.5"/>
<text text-anchor="middle" x="660" y="-1373.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5453</text>
<text text-anchor="middle" x="660" y="-1358.3" font-family="Times,serif" font-size="14.00" fill="#000000">4&#45; Populate transparent</text>
<text text-anchor="middle" x="660" y="-1343.3" font-family="Times,serif" font-size="14.00" fill="#000000">coinbase transaction data</text>
<text text-anchor="middle" x="660" y="-1328.3" font-family="Times,serif" font-size="14.00" fill="#000000">for `BlockTemplate`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5453 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#5451&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M228.9,-1489.5C232.82,-1486.7 236.54,-1483.7 240,-1480.5 268.26,-1454.2 244.88,-1424.3 276,-1401.5 296.71,-1386.3 429.68,-1372.5 533.41,-1363.8"/>
<polygon fill="#000000" stroke="#000000" points="533.9724,-1367.2669 543.67,-1363 533.4282,-1360.288 533.9724,-1367.2669"/>
</g>
<!-- ZcashFoundation/zebra#5455&#45;&gt;ZcashFoundation/zebra#5453 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#5455&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M502.9,-1582.5C507.47,-1579.7 511.86,-1576.7 516,-1573.5 576.21,-1526.6 619.33,-1447.2 641.91,-1398"/>
<polygon fill="#000000" stroke="#000000" points="645.1367,-1399.358 646.02,-1388.8 638.7455,-1396.5027 645.1367,-1399.358"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5472" xlink:title="ZcashFoundation/zebra#5472&#10;Support shielded coinbase&#10;in `getblocktemplate`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1044,-1381 812,-1381 812,-1328 1044,-1328 1044,-1381"/>
<text text-anchor="middle" x="928" y="-1365.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="928" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="928" y="-1335.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5453&#45;&gt;ZcashFoundation/zebra#5472 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#5453&#45;&gt;ZcashFoundation/zebra#5472</title>
<path fill="none" stroke="#000000" d="M776.38,-1354.5C784.71,-1354.5 793.14,-1354.5 801.53,-1354.5"/>
<polygon fill="#000000" stroke="#000000" points="801.74,-1358.0001 811.74,-1354.5 801.74,-1351.0001 801.74,-1358.0001"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node29" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node29"><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="508,-1730 276,-1730 276,-1677 508,-1677 508,-1730"/>
<text text-anchor="middle" x="392" y="-1714.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="392" y="-1699.8" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="392" y="-1684.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node30" class="node closed">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4612" xlink:title="ZcashFoundation/zebra#4612&#10;ci: Wait for lightwalletd&#10;image rebuild if it has&#10;changed" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="508,-1846.5 276,-1846.5 276,-1778.5 508,-1778.5 508,-1846.5"/>
<text text-anchor="middle" x="392" y="-1831.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="392" y="-1816.3" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="392" y="-1801.3" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="392" y="-1786.3" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#5153</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5153" xlink:title="ZcashFoundation/zebra#5153&#10;Tag Google Cloud&#10;instances with the name&#10;of the test or workflow" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2016.5 8,-2016.5 8,-1948.5 240,-1948.5 240,-2016.5"/>
<text text-anchor="middle" x="124" y="-2001.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5153</text>
<text text-anchor="middle" x="124" y="-1986.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Google Cloud</text>
<text text-anchor="middle" x="124" y="-1971.3" font-family="Times,serif" font-size="14.00" fill="#000000">instances with the name</text>
<text text-anchor="middle" x="124" y="-1956.3" font-family="Times,serif" font-size="14.00" fill="#000000">of the test or workflow</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5189 -->
<g id="node32" class="node closed">
<title>ZcashFoundation/zebra#5189</title>
<g id="a_node32"><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="#fad8c7" stroke="#000000" points="508,-2093 276,-2093 276,-2040 508,-2040 508,-2093"/>
<text text-anchor="middle" x="392" y="-2077.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5189</text>
<text text-anchor="middle" x="392" y="-2062.8" font-family="Times,serif" font-size="14.00" fill="#000000">Run some docker tests on</text>
<text text-anchor="middle" x="392" y="-2047.8" font-family="Times,serif" font-size="14.00" fill="#000000">smaller instances</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5189 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M232.62,-2016.5C254.04,-2023.3 276.36,-2030.3 297.27,-2036.8"/>
<polygon fill="#000000" stroke="#000000" points="296.5103,-2040.2303 307.1,-2039.9 298.6157,-2033.5544 296.5103,-2040.2303"/>
</g>
<!-- ZcashFoundation/zebra#5155 -->
<g id="node33" class="node closed">
<title>ZcashFoundation/zebra#5155</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5155" xlink:title="ZcashFoundation/zebra#5155&#10;Decide if we want to&#10;create cached states more&#10;often" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="508,-2018.5 276,-2018.5 276,-1950.5 508,-1950.5 508,-2018.5"/>
<text text-anchor="middle" x="392" y="-2003.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5155</text>
<text text-anchor="middle" x="392" y="-1988.3" font-family="Times,serif" font-size="14.00" fill="#000000">Decide if we want to</text>
<text text-anchor="middle" x="392" y="-1973.3" font-family="Times,serif" font-size="14.00" fill="#000000">create cached states more</text>
<text text-anchor="middle" x="392" y="-1958.3" font-family="Times,serif" font-size="14.00" fill="#000000">often</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5155 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5155</title>
<path fill="none" stroke="#000000" d="M240.38,-1983.4C248.71,-1983.4 257.14,-1983.5 265.53,-1983.6"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-1987.1001 275.74,-1983.6 265.74,-1980.1001 265.74,-1987.1001"/>
</g>
<!-- ZcashFoundation/zebra#5188 -->
<g id="node34" class="node closed">
<title>ZcashFoundation/zebra#5188</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5188" xlink:title="ZcashFoundation/zebra#5188&#10;Reduce continuous&#10;deployment instance group&#10;size to 1" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="508,-1932.5 276,-1932.5 276,-1864.5 508,-1864.5 508,-1932.5"/>
<text text-anchor="middle" x="392" y="-1917.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5188</text>
<text text-anchor="middle" x="392" y="-1902.3" font-family="Times,serif" font-size="14.00" fill="#000000">Reduce continuous</text>
<text text-anchor="middle" x="392" y="-1887.3" font-family="Times,serif" font-size="14.00" fill="#000000">deployment instance group</text>
<text text-anchor="middle" x="392" y="-1872.3" font-family="Times,serif" font-size="14.00" fill="#000000">size to 1</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5188 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5188</title>
<path fill="none" stroke="#000000" d="M232.62,-1948.5C246.05,-1944.2 259.83,-1939.9 273.39,-1935.7"/>
<polygon fill="#000000" stroke="#000000" points="274.7438,-1938.9431 283.23,-1932.6 272.6404,-1932.2666 274.7438,-1938.9431"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2204 8,-2204 8,-2121 240,-2121 240,-2204"/>
<text text-anchor="middle" x="124" y="-2188.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="124" y="-2173.8" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="124" y="-2158.8" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="124" y="-2143.8" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="124" y="-2128.8" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5454 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#5454</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5454" xlink:title="ZcashFoundation/zebra#5454&#10;5&#45; Populate transactions&#10;of `BlockTemplate`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-1268 276,-1268 276,-1215 508,-1215 508,-1268"/>
<text text-anchor="middle" x="392" y="-1252.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5454</text>
<text text-anchor="middle" x="392" y="-1237.8" font-family="Times,serif" font-size="14.00" fill="#000000">5&#45; Populate transactions</text>
<text text-anchor="middle" x="392" y="-1222.8" font-family="Times,serif" font-size="14.00" fill="#000000">of `BlockTemplate`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5454&#45;&gt;ZcashFoundation/zebra#5453 -->
<g id="edge20" class="edge">
<title>ZcashFoundation/zebra#5454&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M490.46,-1268C499.18,-1271 507.8,-1274.2 516,-1277.5 542.19,-1288.2 569.84,-1302.2 593.82,-1315.4"/>
<polygon fill="#000000" stroke="#000000" points="592.3878,-1318.608 602.83,-1320.4 595.7845,-1312.4873 592.3878,-1318.608"/>
</g>
<!-- ZcashFoundation/zebra#5473 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#5473</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5473" xlink:title="ZcashFoundation/zebra#5473&#10;Select `getblocktemplate`&#10;transactions according to&#10;ZIP&#45;317" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="776,-1275.5 544,-1275.5 544,-1207.5 776,-1207.5 776,-1275.5"/>
<text text-anchor="middle" x="660" y="-1260.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5473</text>
<text text-anchor="middle" x="660" y="-1245.3" font-family="Times,serif" font-size="14.00" fill="#000000">Select `getblocktemplate`</text>
<text text-anchor="middle" x="660" y="-1230.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions according to</text>
<text text-anchor="middle" x="660" y="-1215.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5454&#45;&gt;ZcashFoundation/zebra#5473 -->
<g id="edge21" class="edge">
<title>ZcashFoundation/zebra#5454&#45;&gt;ZcashFoundation/zebra#5473</title>
<path fill="none" stroke="#000000" d="M508.38,-1241.5C516.71,-1241.5 525.14,-1241.5 533.53,-1241.5"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-1245.0001 543.74,-1241.5 533.74,-1238.0001 533.74,-1245.0001"/>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3096" xlink:title="ZcashFoundation/zebra#3096&#10;Epic: Zebra Release&#10;Candidate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2275 8,-2275 8,-2222 240,-2222 240,-2275"/>
<text text-anchor="middle" x="124" y="-2259.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="124" y="-2244.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="124" y="-2229.8" font-family="Times,serif" font-size="14.00" fill="#000000">Candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node39"><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="240,-1760 8,-1760 8,-1677 240,-1677 240,-1760"/>
<text text-anchor="middle" x="124" y="-1744.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="124" y="-1729.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="124" y="-1714.8" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="124" y="-1699.8" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="124" y="-1684.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge22" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M240.38,-1712C248.71,-1711.5 257.14,-1711 265.53,-1710.6"/>
<polygon fill="#000000" stroke="#000000" points="265.9626,-1714.0807 275.74,-1710 265.5519,-1707.0928 265.9626,-1714.0807"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node40"><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="240,-1659 8,-1659 8,-1576 240,-1576 240,-1659"/>
<text text-anchor="middle" x="124" y="-1643.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="124" y="-1628.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="124" y="-1613.8" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="124" y="-1598.8" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="124" y="-1583.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge23" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M240.38,-1654.8C260.2,-1661.2 280.54,-1667.7 299.63,-1673.9"/>
<polygon fill="#000000" stroke="#000000" points="298.6008,-1677.2453 309.19,-1676.9 300.6967,-1670.5664 298.6008,-1677.2453"/>
</g>
<!-- ZcashFoundation/zebra#5395 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#5395</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5395" xlink:title="ZcashFoundation/zebra#5395&#10;docs(audit): List of&#10;dependencies" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-459 8,-459 8,-455 4,-455 4,-451 8,-451 8,-414 4,-414 4,-410 8,-410 8,-406 240,-406 240,-459"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-455 12,-455 12,-451 8,-451 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-414 12,-414 12,-410 8,-410 "/>
<text text-anchor="middle" x="124" y="-443.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5395</text>
<text text-anchor="middle" x="124" y="-428.8" font-family="Times,serif" font-size="14.00" fill="#000000">docs(audit): List of</text>
<text text-anchor="middle" x="124" y="-413.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5395&#45;&gt;ZcashFoundation/zebra#5423 -->
<g id="edge24" class="edge">
<title>ZcashFoundation/zebra#5395&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M231.62,-405.91C234.48,-404.51 237.28,-403.04 240,-401.5 295.21,-370.14 344.99,-313.9 371.62,-280.51"/>
<polygon fill="#000000" stroke="#000000" points="374.4494,-282.5741 377.88,-272.55 368.9471,-278.2469 374.4494,-282.5741"/>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node42"><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="240,-1846.5 8,-1846.5 8,-1778.5 240,-1778.5 240,-1846.5"/>
<text text-anchor="middle" x="124" y="-1831.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="124" y="-1816.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="124" y="-1801.3" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="124" y="-1786.3" 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="edge25" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M240.38,-1812.5C248.71,-1812.5 257.14,-1812.5 265.53,-1812.5"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-1816.0001 275.74,-1812.5 265.74,-1809.0001 265.74,-1816.0001"/>
</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" stroke-width="2" points="240,-2102.5 8,-2102.5 8,-2034.5 240,-2034.5 240,-2102.5"/>
<text text-anchor="middle" x="124" y="-2087.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5199</text>
<text text-anchor="middle" x="124" y="-2072.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consider using `nextest`</text>
<text text-anchor="middle" x="124" y="-2057.3" font-family="Times,serif" font-size="14.00" fill="#000000">to run tests faster and</text>
<text text-anchor="middle" x="124" y="-2042.3" font-family="Times,serif" font-size="14.00" fill="#000000">reduce Google Cloud costs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5199&#45;&gt;ZcashFoundation/zebra#5189 -->
<g id="edge26" class="edge">
<title>ZcashFoundation/zebra#5199&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M240.38,-2067.6C248.71,-2067.6 257.14,-2067.5 265.53,-2067.4"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-2070.9001 275.74,-2067.4 265.74,-2063.9001 265.74,-2070.9001"/>
</g>
<!-- ZcashFoundation/zebra#5456 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#5456</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5456" xlink:title="ZcashFoundation/zebra#5456&#10;6&#45; Add a miner&#10;transparent address&#10;config option" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-1354.5 276,-1354.5 276,-1286.5 508,-1286.5 508,-1354.5"/>
<text text-anchor="middle" x="392" y="-1339.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5456</text>
<text text-anchor="middle" x="392" y="-1324.3" font-family="Times,serif" font-size="14.00" fill="#000000">6&#45; Add a miner</text>
<text text-anchor="middle" x="392" y="-1309.3" font-family="Times,serif" font-size="14.00" fill="#000000">transparent address</text>
<text text-anchor="middle" x="392" y="-1294.3" font-family="Times,serif" font-size="14.00" fill="#000000">config option</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5456&#45;&gt;ZcashFoundation/zebra#5453 -->
<g id="edge27" class="edge">
<title>ZcashFoundation/zebra#5456&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M508.38,-1335.3C516.81,-1336.3 525.33,-1337.4 533.81,-1338.5"/>
<polygon fill="#000000" stroke="#000000" points="533.3702,-1341.9722 543.74,-1339.8 534.279,-1335.0314 533.3702,-1341.9722"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4554" xlink:title="ZcashFoundation/zebra#4554&#10;benchmarks: surface&#10;zebrad mainnet sync time&#10;in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2361.5 8,-2361.5 8,-2293.5 240,-2293.5 240,-2361.5"/>
<text text-anchor="middle" x="124" y="-2346.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="124" y="-2331.3" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="124" y="-2316.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="124" y="-2301.3" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4545" xlink:title="ZcashFoundation/zebra#4545&#10;Start disconnecting from&#10;outdated peers before&#10;network upgrade&#10;activation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2463 8,-2463 8,-2380 240,-2380 240,-2463"/>
<text text-anchor="middle" x="124" y="-2447.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="124" y="-2432.8" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="124" y="-2417.8" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="124" y="-2402.8" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="124" y="-2387.8" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node47" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4226" xlink:title="ZcashFoundation/zebra#4226&#10;Prefer faster peers, but&#10;if all peers are slow,&#10;still connect to them" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="508,-2455.5 276,-2455.5 276,-2387.5 508,-2387.5 508,-2455.5"/>
<text text-anchor="middle" x="392" y="-2440.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="392" y="-2425.3" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="392" y="-2410.3" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="392" y="-2395.3" 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="edge28" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M240.38,-2421.5C248.71,-2421.5 257.14,-2421.5 265.53,-2421.5"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-2425.0001 275.74,-2421.5 265.74,-2418.0001 265.74,-2425.0001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>