developers/zcash-zf-dag.html

743 lines
56 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="792pt" height="2795pt"
viewBox="0.00 0.00 792.00 2795.02" 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 2791.02)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2791.02 788,-2791.02 788,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="0,-186.53 0,-451.53 516,-451.53 516,-186.53 0,-186.53"/>
<text text-anchor="middle" x="258" y="-436.33" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidate</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="0,-459.53 0,-826.53 784,-826.53 784,-459.53 0,-459.53"/>
<text text-anchor="middle" x="392" y="-811.33" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<!-- ZcashFoundation/zebra#5214 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#5214</title>
<g id="a_node1"><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,-420.03 8,-420.03 8,-367.03 240,-367.03 240,-420.03"/>
<text text-anchor="middle" x="124" y="-404.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5214</text>
<text text-anchor="middle" x="124" y="-389.83" font-family="Times,serif" font-size="14.00" fill="#000000">Task: Make a list of</text>
<text text-anchor="middle" x="124" y="-374.83" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra dependencies</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5423 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5423</title>
<g id="a_node2"><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,-240.53 276,-240.53 276,-202.53 508,-202.53 508,-240.53"/>
<text text-anchor="middle" x="392" y="-225.33" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5423</text>
<text text-anchor="middle" x="392" y="-210.33" 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="edge1" class="edge">
<title>ZcashFoundation/zebra#5214&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M223.04,-366.97C228.89,-364.38 234.59,-361.57 240,-358.53 291.99,-329.22 341.2,-279.38 368.89,-248.58"/>
<polygon fill="#000000" stroke="#000000" points="371.767,-250.6113 375.79,-240.81 366.5329,-245.9633 371.767,-250.6113"/>
</g>
<!-- ZcashFoundation/zebra#5395 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#5395</title>
<g id="a_node12"><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" points="776,-178.03 544,-178.03 544,-174.03 540,-174.03 540,-170.03 544,-170.03 544,-133.03 540,-133.03 540,-129.03 544,-129.03 544,-125.03 776,-125.03 776,-178.03"/>
<polyline fill="none" stroke="#000000" points="544,-174.03 548,-174.03 548,-170.03 544,-170.03 "/>
<polyline fill="none" stroke="#000000" points="544,-133.03 548,-133.03 548,-129.03 544,-129.03 "/>
<text text-anchor="middle" x="660" y="-162.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5395</text>
<text text-anchor="middle" x="660" y="-147.83" font-family="Times,serif" font-size="14.00" fill="#000000">docs(audit): List of</text>
<text text-anchor="middle" x="660" y="-132.83" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5423&#45;&gt;ZcashFoundation/zebra#5395 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#5423&#45;&gt;ZcashFoundation/zebra#5395</title>
<path fill="none" stroke="#000000" d="M464.88,-202.49C490.67,-195.75 520.3,-188.01 548.56,-180.63"/>
<polygon fill="#000000" stroke="#000000" points="549.6971,-183.9506 558.49,-178.04 547.9304,-177.1772 549.6971,-183.9506"/>
</g>
<!-- ZcashFoundation/zebra#5445 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5445</title>
<g id="a_node3"><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,-248.03 8,-248.03 8,-195.03 240,-195.03 240,-248.03"/>
<text text-anchor="middle" x="124" y="-232.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5445</text>
<text text-anchor="middle" x="124" y="-217.83" font-family="Times,serif" font-size="14.00" fill="#000000">Bump `zcash_proofs` to</text>
<text text-anchor="middle" x="124" y="-202.83" 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="edge2" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M240.38,-221.53C248.71,-221.53 257.14,-221.53 265.53,-221.53"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-225.0301 275.74,-221.53 265.74,-218.0301 265.74,-225.0301"/>
</g>
<!-- ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5395 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5395</title>
<path fill="none" stroke="#000000" d="M137.24,-194.78C159.38,-153.46 208.27,-75.637 276,-44.526 372.93,0 414.73,-11.021 516,-44.526 559.52,-58.924 600.59,-92.128 627.64,-117.76"/>
<polygon fill="#000000" stroke="#000000" points="625.2649,-120.3319 634.89,-124.76 630.127,-115.2961 625.2649,-120.3319"/>
</g>
<!-- ZcashFoundation/zebra#3831 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#3831</title>
<g id="a_node13"><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,-178.03 276,-178.03 276,-125.03 508,-125.03 508,-178.03"/>
<text text-anchor="middle" x="392" y="-162.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3831</text>
<text text-anchor="middle" x="392" y="-147.83" font-family="Times,serif" font-size="14.00" fill="#000000">Remove duplicated</text>
<text text-anchor="middle" x="392" y="-132.83" 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="edge9" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#3831</title>
<path fill="none" stroke="#000000" d="M225.7,-194.96C243.65,-190.27 262.42,-185.37 280.62,-180.62"/>
<polygon fill="#000000" stroke="#000000" points="281.581,-183.9865 290.37,-178.07 279.8098,-177.2142 281.581,-183.9865"/>
</g>
<!-- ZcashFoundation/zebra#5091 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5091</title>
<g id="a_node14"><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,-107.026 276,-107.026 276,-54.026 508,-54.026 508,-107.026"/>
<text text-anchor="middle" x="392" y="-91.826" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5091</text>
<text text-anchor="middle" x="392" y="-76.826" font-family="Times,serif" font-size="14.00" fill="#000000">Fix parameter download</text>
<text text-anchor="middle" x="392" y="-61.826" 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="edge10" class="edge">
<title>ZcashFoundation/zebra#5445&#45;&gt;ZcashFoundation/zebra#5091</title>
<path fill="none" stroke="#000000" d="M155.64,-194.97C185.16,-171.31 231.26,-137.19 276,-115.53 279.32,-113.919 282.73,-112.368 286.2,-110.872"/>
<polygon fill="#000000" stroke="#000000" points="287.5923,-114.0839 295.51,-107.044 284.9303,-107.6098 287.5923,-114.0839"/>
</g>
<!-- ZcashFoundation/zebra#5446 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5446</title>
<g id="a_node4"><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,-349.03 8,-349.03 8,-266.03 240,-266.03 240,-349.03"/>
<text text-anchor="middle" x="124" y="-333.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5446</text>
<text text-anchor="middle" x="124" y="-318.83" font-family="Times,serif" font-size="14.00" fill="#000000">Audit: remove zebra&#45;chain</text>
<text text-anchor="middle" x="124" y="-303.83" font-family="Times,serif" font-size="14.00" fill="#000000">cryptographic</text>
<text text-anchor="middle" x="124" y="-288.83" font-family="Times,serif" font-size="14.00" fill="#000000">implementations that are</text>
<text text-anchor="middle" x="124" y="-273.83" 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="edge3" class="edge">
<title>ZcashFoundation/zebra#5446&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M240.38,-270.18C268.44,-261.18 297.55,-251.84 322.67,-243.78"/>
<polygon fill="#000000" stroke="#000000" points="323.9987,-247.0295 332.45,-240.64 321.8587,-240.3646 323.9987,-247.0295"/>
</g>
<!-- ZcashFoundation/zebra#5335 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5335</title>
<g id="a_node5"><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,-795.53 276,-795.53 276,-727.53 508,-727.53 508,-795.53"/>
<text text-anchor="middle" x="392" y="-780.33" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5335</text>
<text text-anchor="middle" x="392" y="-765.33" font-family="Times,serif" font-size="14.00" fill="#000000">Evict transactions from</text>
<text text-anchor="middle" x="392" y="-750.33" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool based on the</text>
<text text-anchor="middle" x="392" y="-735.33" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node6"><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,-755.53 544,-755.53 544,-687.53 776,-687.53 776,-755.53"/>
<text text-anchor="middle" x="660" y="-740.33" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="660" y="-725.33" font-family="Times,serif" font-size="14.00" fill="#000000">Relay mempool</text>
<text text-anchor="middle" x="660" y="-710.33" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="660" y="-695.33" 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="edge4" class="edge">
<title>ZcashFoundation/zebra#5335&#45;&gt;ZcashFoundation/zebra#5336</title>
<path fill="none" stroke="#000000" d="M508.38,-744.16C516.81,-742.9 525.33,-741.63 533.81,-740.36"/>
<polygon fill="#000000" stroke="#000000" points="534.3652,-743.816 543.74,-738.88 533.3333,-736.8925 534.3652,-743.816"/>
</g>
<!-- ZcashFoundation/zebra#5235 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#5235</title>
<g id="a_node7"><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,-709.03 276,-709.03 276,-656.03 508,-656.03 508,-709.03"/>
<text text-anchor="middle" x="392" y="-693.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5235</text>
<text text-anchor="middle" x="392" y="-678.83" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Implement</text>
<text text-anchor="middle" x="392" y="-663.83" 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="edge5" class="edge">
<title>ZcashFoundation/zebra#5235&#45;&gt;ZcashFoundation/zebra#5336</title>
<path fill="none" stroke="#000000" d="M508.38,-699.46C516.81,-700.69 525.33,-701.93 533.81,-703.16"/>
<polygon fill="#000000" stroke="#000000" points="533.3392,-706.6283 543.74,-704.61 534.3507,-699.7017 533.3392,-706.6283"/>
</g>
<!-- ZcashFoundation/zebra#5376 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5376</title>
<g id="a_node8"><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,-795.53 8,-795.53 8,-727.53 240,-727.53 240,-795.53"/>
<text text-anchor="middle" x="124" y="-780.33" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5376</text>
<text text-anchor="middle" x="124" y="-765.33" font-family="Times,serif" font-size="14.00" fill="#000000">Do contextual validation</text>
<text text-anchor="middle" x="124" y="-750.33" font-family="Times,serif" font-size="14.00" fill="#000000">on mempool transactions</text>
<text text-anchor="middle" x="124" y="-735.33" 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="edge6" class="edge">
<title>ZcashFoundation/zebra#5376&#45;&gt;ZcashFoundation/zebra#5235</title>
<path fill="none" stroke="#000000" d="M239.6,-727.45C257.01,-722.32 274.84,-717.06 291.89,-712.04"/>
<polygon fill="#000000" stroke="#000000" points="293.2277,-715.2947 301.83,-709.11 291.2484,-708.5803 293.2277,-715.2947"/>
</g>
<!-- ZcashFoundation/zebra#5236 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#5236</title>
<g id="a_node9"><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,-709.03 8,-709.03 8,-656.03 240,-656.03 240,-709.03"/>
<text text-anchor="middle" x="124" y="-693.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5236</text>
<text text-anchor="middle" x="124" y="-678.83" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="124" y="-663.83" font-family="Times,serif" font-size="14.00" fill="#000000">`submitblock` RPC call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5302 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5302</title>
<g id="a_node10"><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,-637.53 8,-637.53 8,-569.53 240,-569.53 240,-637.53"/>
<text text-anchor="middle" x="124" y="-622.33" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5302</text>
<text text-anchor="middle" x="124" y="-607.33" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="124" y="-592.33" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocksubsidy` RPC</text>
<text text-anchor="middle" x="124" y="-577.33" font-family="Times,serif" font-size="14.00" fill="#000000">call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5386 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#5386</title>
<g id="a_node11"><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,-551.03 8,-551.03 8,-468.03 240,-468.03 240,-551.03"/>
<text text-anchor="middle" x="124" y="-535.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5386</text>
<text text-anchor="middle" x="124" y="-520.83" font-family="Times,serif" font-size="14.00" fill="#000000">Use BestChainUtxo rather</text>
<text text-anchor="middle" x="124" y="-505.83" font-family="Times,serif" font-size="14.00" fill="#000000">than AwaitUtxo in the</text>
<text text-anchor="middle" x="124" y="-490.83" font-family="Times,serif" font-size="14.00" fill="#000000">mempool transaction</text>
<text text-anchor="middle" x="124" y="-475.83" font-family="Times,serif" font-size="14.00" fill="#000000">validator</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3831&#45;&gt;ZcashFoundation/zebra#5423 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#3831&#45;&gt;ZcashFoundation/zebra#5423</title>
<path fill="none" stroke="#000000" d="M392,-178.05C392,-182.76 392,-187.48 392,-192.19"/>
<polygon fill="#000000" stroke="#000000" points="388.5001,-192.51 392,-202.51 395.5001,-192.51 388.5001,-192.51"/>
</g>
<!-- ZcashFoundation/zebra#3831&#45;&gt;ZcashFoundation/zebra#5395 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#3831&#45;&gt;ZcashFoundation/zebra#5395</title>
<path fill="none" stroke="#000000" d="M508.38,-151.53C516.71,-151.53 525.14,-151.53 533.53,-151.53"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-155.0301 543.74,-151.53 533.74,-148.0301 533.74,-155.0301"/>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node15"><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,-888.03 8,-888.03 8,-835.03 240,-835.03 240,-888.03"/>
<text text-anchor="middle" x="124" y="-872.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="124" y="-857.83" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="124" y="-842.83" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5015 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#5015</title>
<g id="a_node16"><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,-989.03 8,-989.03 8,-906.03 240,-906.03 240,-989.03"/>
<text text-anchor="middle" x="124" y="-973.83" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5015</text>
<text text-anchor="middle" x="124" y="-958.83" font-family="Times,serif" font-size="14.00" fill="#000000">Get transactions from the</text>
<text text-anchor="middle" x="124" y="-943.83" font-family="Times,serif" font-size="14.00" fill="#000000">non&#45;finalized state in</text>
<text text-anchor="middle" x="124" y="-928.83" font-family="Times,serif" font-size="14.00" fill="#000000">the send transactions</text>
<text text-anchor="middle" x="124" y="-913.83" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node17"><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,-1075.52 8,-1075.52 8,-1007.52 240,-1007.52 240,-1075.52"/>
<text text-anchor="middle" x="124" y="-1060.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="124" y="-1045.32" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="124" y="-1030.32" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="124" y="-1015.32" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node18" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node18"><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,-1068.02 280.5,-1068.02 280.5,-1015.02 503.5,-1015.02 503.5,-1068.02"/>
<text text-anchor="middle" x="392" y="-1052.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="392" y="-1037.82" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="392" y="-1022.82" font-family="Times,serif" font-size="14.00" fill="#000000">agents conform to BIP&#45;14</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M240.38,-1041.52C250.23,-1041.52 260.22,-1041.52 270.11,-1041.52"/>
<polygon fill="#000000" stroke="#000000" points="270.39,-1045.0201 280.39,-1041.52 270.39,-1038.0201 270.39,-1045.0201"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node19"><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,-1147.02 8,-1147.02 8,-1094.02 240,-1094.02 240,-1147.02"/>
<text text-anchor="middle" x="124" y="-1131.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="124" y="-1116.82" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="124" y="-1101.82" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node20"><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,-1218.02 8,-1218.02 8,-1165.02 240,-1165.02 240,-1218.02"/>
<text text-anchor="middle" x="124" y="-1202.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="124" y="-1187.82" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="124" y="-1172.82" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node21"><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,-1304.52 8,-1304.52 8,-1236.52 240,-1236.52 240,-1304.52"/>
<text text-anchor="middle" x="124" y="-1289.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="124" y="-1274.32" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="124" y="-1259.32" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="124" y="-1244.32" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node22"><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,-1390.52 8,-1390.52 8,-1322.52 240,-1322.52 240,-1390.52"/>
<text text-anchor="middle" x="124" y="-1375.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="124" y="-1360.32" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="124" y="-1345.32" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="124" y="-1330.32" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node23"><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,-1462.02 8,-1462.02 8,-1409.02 240,-1409.02 240,-1462.02"/>
<text text-anchor="middle" x="124" y="-1446.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="124" y="-1431.82" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="124" y="-1416.82" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</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" stroke-width="2" points="240,-1708.52 8,-1708.52 8,-1640.52 240,-1640.52 240,-1708.52"/>
<text text-anchor="middle" x="124" y="-1693.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5455</text>
<text text-anchor="middle" x="124" y="-1678.32" font-family="Times,serif" font-size="14.00" fill="#000000">3&#45; Populate</text>
<text text-anchor="middle" x="124" y="-1663.32" font-family="Times,serif" font-size="14.00" fill="#000000">`BlockTemplate` fields</text>
<text text-anchor="middle" x="124" y="-1648.32" font-family="Times,serif" font-size="14.00" fill="#000000">using a new state request</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5453 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5453</title>
<g id="a_node25"><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="508,-1624.52 276,-1624.52 276,-1556.52 508,-1556.52 508,-1624.52"/>
<text text-anchor="middle" x="392" y="-1609.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5453</text>
<text text-anchor="middle" x="392" y="-1594.32" font-family="Times,serif" font-size="14.00" fill="#000000">4&#45; Populate transparent</text>
<text text-anchor="middle" x="392" y="-1579.32" font-family="Times,serif" font-size="14.00" fill="#000000">coinbase transaction data</text>
<text text-anchor="middle" x="392" y="-1564.32" font-family="Times,serif" font-size="14.00" fill="#000000">for `BlockTemplate`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5455&#45;&gt;ZcashFoundation/zebra#5453 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#5455&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M232.62,-1640.52C246.05,-1636.32 259.83,-1631.92 273.39,-1627.72"/>
<polygon fill="#000000" stroke="#000000" points="274.7438,-1630.9631 283.23,-1624.62 272.6404,-1624.2866 274.7438,-1630.9631"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node26"><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="776,-1617.02 544,-1617.02 544,-1564.02 776,-1564.02 776,-1617.02"/>
<text text-anchor="middle" x="660" y="-1601.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="660" y="-1586.82" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="660" y="-1571.82" 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="edge15" class="edge">
<title>ZcashFoundation/zebra#5453&#45;&gt;ZcashFoundation/zebra#5472</title>
<path fill="none" stroke="#000000" d="M508.38,-1590.52C516.71,-1590.52 525.14,-1590.52 533.53,-1590.52"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-1594.0201 543.74,-1590.52 533.74,-1587.0201 533.74,-1594.0201"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node27" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node27"><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,-1845.02 276,-1845.02 276,-1792.02 508,-1792.02 508,-1845.02"/>
<text text-anchor="middle" x="392" y="-1829.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="392" y="-1814.82" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="392" y="-1799.82" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node28" class="node closed">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node28"><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,-1997.52 276,-1997.52 276,-1929.52 508,-1929.52 508,-1997.52"/>
<text text-anchor="middle" x="392" y="-1982.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="392" y="-1967.32" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="392" y="-1952.32" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="392" y="-1937.32" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5153 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#5153</title>
<g id="a_node29"><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,-2167.52 8,-2167.52 8,-2099.52 240,-2099.52 240,-2167.52"/>
<text text-anchor="middle" x="124" y="-2152.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5153</text>
<text text-anchor="middle" x="124" y="-2137.32" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Google Cloud</text>
<text text-anchor="middle" x="124" y="-2122.32" font-family="Times,serif" font-size="14.00" fill="#000000">instances with the name</text>
<text text-anchor="middle" x="124" y="-2107.32" font-family="Times,serif" font-size="14.00" fill="#000000">of the test or workflow</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5189 -->
<g id="node30" class="node closed">
<title>ZcashFoundation/zebra#5189</title>
<g id="a_node30"><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,-2244.02 276,-2244.02 276,-2191.02 508,-2191.02 508,-2244.02"/>
<text text-anchor="middle" x="392" y="-2228.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5189</text>
<text text-anchor="middle" x="392" y="-2213.82" font-family="Times,serif" font-size="14.00" fill="#000000">Run some docker tests on</text>
<text text-anchor="middle" x="392" y="-2198.82" 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="edge16" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M232.62,-2167.62C254.04,-2174.32 276.36,-2181.32 297.27,-2187.82"/>
<polygon fill="#000000" stroke="#000000" points="296.5103,-2191.2503 307.1,-2190.92 298.6157,-2184.5744 296.5103,-2191.2503"/>
</g>
<!-- ZcashFoundation/zebra#5155 -->
<g id="node31" class="node closed">
<title>ZcashFoundation/zebra#5155</title>
<g id="a_node31"><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,-2169.52 276,-2169.52 276,-2101.52 508,-2101.52 508,-2169.52"/>
<text text-anchor="middle" x="392" y="-2154.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5155</text>
<text text-anchor="middle" x="392" y="-2139.32" font-family="Times,serif" font-size="14.00" fill="#000000">Decide if we want to</text>
<text text-anchor="middle" x="392" y="-2124.32" font-family="Times,serif" font-size="14.00" fill="#000000">create cached states more</text>
<text text-anchor="middle" x="392" y="-2109.32" 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="edge17" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5155</title>
<path fill="none" stroke="#000000" d="M240.38,-2134.42C248.71,-2134.42 257.14,-2134.52 265.53,-2134.62"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-2138.1201 275.74,-2134.62 265.74,-2131.1201 265.74,-2138.1201"/>
</g>
<!-- ZcashFoundation/zebra#5188 -->
<g id="node32" class="node closed">
<title>ZcashFoundation/zebra#5188</title>
<g id="a_node32"><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,-2083.52 276,-2083.52 276,-2015.52 508,-2015.52 508,-2083.52"/>
<text text-anchor="middle" x="392" y="-2068.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5188</text>
<text text-anchor="middle" x="392" y="-2053.32" font-family="Times,serif" font-size="14.00" fill="#000000">Reduce continuous</text>
<text text-anchor="middle" x="392" y="-2038.32" font-family="Times,serif" font-size="14.00" fill="#000000">deployment instance group</text>
<text text-anchor="middle" x="392" y="-2023.32" 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="edge18" class="edge">
<title>ZcashFoundation/zebra#5153&#45;&gt;ZcashFoundation/zebra#5188</title>
<path fill="none" stroke="#000000" d="M232.62,-2099.52C246.05,-2095.32 259.83,-2090.92 273.39,-2086.72"/>
<polygon fill="#000000" stroke="#000000" points="274.7438,-2089.9631 283.23,-2083.62 272.6404,-2083.2866 274.7438,-2089.9631"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node33"><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,-2355.02 8,-2355.02 8,-2272.02 240,-2272.02 240,-2355.02"/>
<text text-anchor="middle" x="124" y="-2339.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="124" y="-2324.82" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="124" y="-2309.82" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="124" y="-2294.82" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="124" y="-2279.82" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5452 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#5452</title>
<g id="a_node34"><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" stroke-width="2" points="240,-2441.52 8,-2441.52 8,-2373.52 240,-2373.52 240,-2441.52"/>
<text text-anchor="middle" x="124" y="-2426.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5452</text>
<text text-anchor="middle" x="124" y="-2411.32" font-family="Times,serif" font-size="14.00" fill="#000000">2&#45; Populate</text>
<text text-anchor="middle" x="124" y="-2396.32" font-family="Times,serif" font-size="14.00" fill="#000000">`Blocktemplate` responses</text>
<text text-anchor="middle" x="124" y="-2381.32" font-family="Times,serif" font-size="14.00" fill="#000000">with fixed values data</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5466 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#5466</title>
<g id="a_node35"><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" stroke-width="2" points="240,-2527.52 8,-2527.52 8,-2459.52 240,-2459.52 240,-2527.52"/>
<text text-anchor="middle" x="124" y="-2512.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5466</text>
<text text-anchor="middle" x="124" y="-2497.32" font-family="Times,serif" font-size="14.00" fill="#000000">7&#45; Return an error from</text>
<text text-anchor="middle" x="124" y="-2482.32" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate if Zebra</text>
<text text-anchor="middle" x="124" y="-2467.32" font-family="Times,serif" font-size="14.00" fill="#000000">isn&#39;t synced to the tip</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="240,-1533.02 8,-1533.02 8,-1480.02 240,-1480.02 240,-1533.02"/>
<text text-anchor="middle" x="124" y="-1517.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5454</text>
<text text-anchor="middle" x="124" y="-1502.82" font-family="Times,serif" font-size="14.00" fill="#000000">5&#45; Populate transactions</text>
<text text-anchor="middle" x="124" y="-1487.82" 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="edge19" class="edge">
<title>ZcashFoundation/zebra#5454&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M208.8,-1533.12C229.37,-1539.52 251.74,-1546.52 273.55,-1553.42"/>
<polygon fill="#000000" stroke="#000000" points="272.6016,-1556.7904 283.19,-1556.42 274.6817,-1550.1065 272.6016,-1556.7904"/>
</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="508,-1538.52 276,-1538.52 276,-1470.52 508,-1470.52 508,-1538.52"/>
<text text-anchor="middle" x="392" y="-1523.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5473</text>
<text text-anchor="middle" x="392" y="-1508.32" font-family="Times,serif" font-size="14.00" fill="#000000">Select `getblocktemplate`</text>
<text text-anchor="middle" x="392" y="-1493.32" font-family="Times,serif" font-size="14.00" fill="#000000">transactions according to</text>
<text text-anchor="middle" x="392" y="-1478.32" 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="edge20" class="edge">
<title>ZcashFoundation/zebra#5454&#45;&gt;ZcashFoundation/zebra#5473</title>
<path fill="none" stroke="#000000" d="M240.38,-1505.62C248.71,-1505.62 257.14,-1505.52 265.53,-1505.52"/>
<polygon fill="#000000" stroke="#000000" points="265.7748,-1509.0179 275.74,-1505.42 265.7062,-1502.0182 265.7748,-1509.0179"/>
</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,-2599.02 8,-2599.02 8,-2546.02 240,-2546.02 240,-2599.02"/>
<text text-anchor="middle" x="124" y="-2583.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="124" y="-2568.82" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="124" y="-2553.82" 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,-1911.02 8,-1911.02 8,-1828.02 240,-1828.02 240,-1911.02"/>
<text text-anchor="middle" x="124" y="-1895.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="124" y="-1880.82" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="124" y="-1865.82" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="124" y="-1850.82" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="124" y="-1835.82" 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="edge21" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M240.38,-1847.42C248.81,-1845.82 257.33,-1844.12 265.81,-1842.52"/>
<polygon fill="#000000" stroke="#000000" points="266.576,-1845.937 275.74,-1840.62 265.2604,-1839.0617 266.576,-1845.937"/>
</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,-1810.02 8,-1810.02 8,-1727.02 240,-1727.02 240,-1810.02"/>
<text text-anchor="middle" x="124" y="-1794.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="124" y="-1779.82" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="124" y="-1764.82" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="124" y="-1749.82" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="124" y="-1734.82" 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="edge22" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M240.38,-1790.22C248.81,-1791.82 257.33,-1793.42 265.81,-1795.02"/>
<polygon fill="#000000" stroke="#000000" points="265.2761,-1798.4802 275.74,-1796.82 266.5246,-1791.5924 265.2761,-1798.4802"/>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node41"><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,-1997.52 8,-1997.52 8,-1929.52 240,-1929.52 240,-1997.52"/>
<text text-anchor="middle" x="124" y="-1982.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="124" y="-1967.32" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="124" y="-1952.32" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="124" y="-1937.32" 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="edge23" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M240.38,-1963.52C248.71,-1963.52 257.14,-1963.52 265.53,-1963.52"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-1967.0201 275.74,-1963.52 265.74,-1960.0201 265.74,-1967.0201"/>
</g>
<!-- ZcashFoundation/zebra#5199 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#5199</title>
<g id="a_node42"><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,-2253.52 8,-2253.52 8,-2185.52 240,-2185.52 240,-2253.52"/>
<text text-anchor="middle" x="124" y="-2238.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5199</text>
<text text-anchor="middle" x="124" y="-2223.32" font-family="Times,serif" font-size="14.00" fill="#000000">Consider using `nextest`</text>
<text text-anchor="middle" x="124" y="-2208.32" font-family="Times,serif" font-size="14.00" fill="#000000">to run tests faster and</text>
<text text-anchor="middle" x="124" y="-2193.32" 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="edge24" class="edge">
<title>ZcashFoundation/zebra#5199&#45;&gt;ZcashFoundation/zebra#5189</title>
<path fill="none" stroke="#000000" d="M240.38,-2218.62C248.71,-2218.62 257.14,-2218.52 265.53,-2218.52"/>
<polygon fill="#000000" stroke="#000000" points="265.7748,-2222.0179 275.74,-2218.42 265.7062,-2215.0182 265.7748,-2222.0179"/>
</g>
<!-- ZcashFoundation/zebra#5456 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#5456</title>
<g id="a_node43"><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="240,-1622.52 8,-1622.52 8,-1554.52 240,-1554.52 240,-1622.52"/>
<text text-anchor="middle" x="124" y="-1607.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5456</text>
<text text-anchor="middle" x="124" y="-1592.32" font-family="Times,serif" font-size="14.00" fill="#000000">6&#45; Add a miner</text>
<text text-anchor="middle" x="124" y="-1577.32" font-family="Times,serif" font-size="14.00" fill="#000000">transparent address</text>
<text text-anchor="middle" x="124" y="-1562.32" 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="edge25" class="edge">
<title>ZcashFoundation/zebra#5456&#45;&gt;ZcashFoundation/zebra#5453</title>
<path fill="none" stroke="#000000" d="M240.38,-1589.42C248.71,-1589.42 257.14,-1589.52 265.53,-1589.62"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-1593.1201 275.74,-1589.62 265.74,-1586.1201 265.74,-1593.1201"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node44"><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,-2685.52 8,-2685.52 8,-2617.52 240,-2617.52 240,-2685.52"/>
<text text-anchor="middle" x="124" y="-2670.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="124" y="-2655.32" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="124" y="-2640.32" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="124" y="-2625.32" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node45"><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,-2787.02 8,-2787.02 8,-2704.02 240,-2704.02 240,-2787.02"/>
<text text-anchor="middle" x="124" y="-2771.82" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="124" y="-2756.82" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="124" y="-2741.82" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="124" y="-2726.82" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="124" y="-2711.82" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node46" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node46"><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,-2779.52 276,-2779.52 276,-2711.52 508,-2711.52 508,-2779.52"/>
<text text-anchor="middle" x="392" y="-2764.32" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="392" y="-2749.32" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="392" y="-2734.32" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="392" y="-2719.32" 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="edge26" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M240.38,-2745.52C248.71,-2745.52 257.14,-2745.52 265.53,-2745.52"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-2749.0201 275.74,-2745.52 265.74,-2742.0201 265.74,-2749.0201"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>