developers/zcash-zf-dag.html

527 lines
39 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="826pt" height="1973pt"
viewBox="0.00 0.00 826.00 1973.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 1969)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1969 822,-1969 822,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-281 290,-281 290,0 0,0"/>
<text text-anchor="middle" x="145" y="-265.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Improvements from Zebra Audit</text>
</g>
<!-- ZcashFoundation/zebra#6279 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#6279</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6279" xlink:title="ZcashFoundation/zebra#6279&#10;`zebra&#45;chain`:&#10;Inconsistent error&#10;management in `Add` and&#10;`Sub` for `Height`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-249.5 29,-249.5 29,-166.5 261,-166.5 261,-249.5"/>
<text text-anchor="middle" x="145" y="-234.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6279</text>
<text text-anchor="middle" x="145" y="-219.3" font-family="Times,serif" font-size="14.00" fill="#000000">`zebra&#45;chain`:</text>
<text text-anchor="middle" x="145" y="-204.3" font-family="Times,serif" font-size="14.00" fill="#000000">Inconsistent error</text>
<text text-anchor="middle" x="145" y="-189.3" font-family="Times,serif" font-size="14.00" fill="#000000">management in `Add` and</text>
<text text-anchor="middle" x="145" y="-174.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Sub` for `Height`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6278 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#6278</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6278" xlink:title="ZcashFoundation/zebra#6278&#10;Write script to find&#10;TODOs mentioning closed&#10;github issues" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-148 29,-148 29,-80 261,-80 261,-148"/>
<text text-anchor="middle" x="145" y="-132.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6278</text>
<text text-anchor="middle" x="145" y="-117.8" font-family="Times,serif" font-size="14.00" fill="#000000">Write script to find</text>
<text text-anchor="middle" x="145" y="-102.8" font-family="Times,serif" font-size="14.00" fill="#000000">TODOs mentioning closed</text>
<text text-anchor="middle" x="145" y="-87.8" font-family="Times,serif" font-size="14.00" fill="#000000">github issues</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6281 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#6281</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6281" xlink:title="ZcashFoundation/zebra#6281&#10;Tracking: TODOs with&#10;closed tasks" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-61.5 29,-61.5 29,-8.5 261,-8.5 261,-61.5"/>
<text text-anchor="middle" x="145" y="-46.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6281</text>
<text text-anchor="middle" x="145" y="-31.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: TODOs with</text>
<text text-anchor="middle" x="145" y="-16.3" font-family="Times,serif" font-size="14.00" fill="#000000">closed tasks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node4"><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="261,-342.5 29,-342.5 29,-289.5 261,-289.5 261,-342.5"/>
<text text-anchor="middle" x="145" y="-327.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="145" y="-312.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="145" y="-297.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node5"><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="261,-429 29,-429 29,-361 261,-361 261,-429"/>
<text text-anchor="middle" x="145" y="-413.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="145" y="-398.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="145" y="-383.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="145" y="-368.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node6" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node6"><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="545.5,-421.5 322.5,-421.5 322.5,-368.5 545.5,-368.5 545.5,-421.5"/>
<text text-anchor="middle" x="434" y="-406.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="434" y="-391.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="434" y="-376.3" font-family="Times,serif" font-size="14.00" fill="#000000">agents conform to BIP&#45;14</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M261.3,-395C277.92,-395 295.07,-395 311.8,-395"/>
<polygon fill="#000000" stroke="#000000" points="312.16,-398.5001 322.16,-395 312.16,-391.5001 312.16,-398.5001"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5472" xlink:title="ZcashFoundation/zebra#5472&#10;Support shielded coinbase&#10;in `getblocktemplate` for&#10;Sapling addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-515 29,-515 29,-447 261,-447 261,-515"/>
<text text-anchor="middle" x="145" y="-499.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="145" y="-484.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="145" y="-469.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="145" y="-454.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5929 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5929</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5929" xlink:title="ZcashFoundation/zebra#5929&#10;Support shielded coinbase&#10;in `getblocktemplate` for&#10;Orchard Unified addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-515 318,-515 318,-447 550,-447 550,-515"/>
<text text-anchor="middle" x="434" y="-499.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5929</text>
<text text-anchor="middle" x="434" y="-484.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="434" y="-469.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="434" y="-454.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Unified addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M261.3,-481C276.61,-481 292.36,-481 307.83,-481"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-484.5001 317.94,-481 307.94,-477.5001 307.94,-484.5001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node9"><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="261,-586.5 29,-586.5 29,-533.5 261,-533.5 261,-586.5"/>
<text text-anchor="middle" x="145" y="-571.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="145" y="-556.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="145" y="-541.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5336" xlink:title="ZcashFoundation/zebra#5336&#10;Relay and accept mempool&#10;transactions based on the&#10;ZIP&#45;317 fee rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-673 29,-673 29,-605 261,-605 261,-673"/>
<text text-anchor="middle" x="145" y="-657.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="145" y="-642.8" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="145" y="-627.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="145" y="-612.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node11"><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="261,-759 29,-759 29,-691 261,-691 261,-759"/>
<text text-anchor="middle" x="145" y="-743.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="145" y="-728.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="145" y="-713.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="145" y="-698.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6037" xlink:title="ZcashFoundation/zebra#6037&#10;Don&#39;t return from long&#10;polling if the block&#10;template is an invalid&#10;block proposal" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-860.5 29,-860.5 29,-777.5 261,-777.5 261,-860.5"/>
<text text-anchor="middle" x="145" y="-845.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="145" y="-830.3" font-family="Times,serif" font-size="14.00" fill="#000000">Don&#39;t return from long</text>
<text text-anchor="middle" x="145" y="-815.3" font-family="Times,serif" font-size="14.00" fill="#000000">polling if the block</text>
<text text-anchor="middle" x="145" y="-800.3" font-family="Times,serif" font-size="14.00" fill="#000000">template is an invalid</text>
<text text-anchor="middle" x="145" y="-785.3" font-family="Times,serif" font-size="14.00" fill="#000000">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6047" xlink:title="ZcashFoundation/zebra#6047&#10;Verify proposals are&#10;valid after sending them&#10;to miners" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-900 318,-900 318,-832 550,-832 550,-900"/>
<text text-anchor="middle" x="434" y="-884.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="434" y="-869.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify proposals are</text>
<text text-anchor="middle" x="434" y="-854.8" font-family="Times,serif" font-size="14.00" fill="#000000">valid after sending them</text>
<text text-anchor="middle" x="434" y="-839.8" font-family="Times,serif" font-size="14.00" fill="#000000">to miners</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="#000000" d="M261.3,-837.91C276.61,-840.4 292.36,-842.97 307.83,-845.48"/>
<polygon fill="#000000" stroke="#000000" points="307.5068,-848.9735 317.94,-847.13 308.6344,-842.0649 307.5068,-848.9735"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5604" xlink:title="ZcashFoundation/zebra#5604&#10;Send the same&#10;getblocktemplate RPC&#10;response until the&#10;template would change" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-813.5 318,-813.5 318,-730.5 550,-730.5 550,-813.5"/>
<text text-anchor="middle" x="434" y="-798.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="434" y="-783.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="434" y="-768.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="434" y="-753.3" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="434" y="-738.3" font-family="Times,serif" font-size="14.00" fill="#000000">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="#000000" d="M261.3,-800.09C276.61,-797.6 292.36,-795.03 307.83,-792.52"/>
<polygon fill="#000000" stroke="#000000" points="308.6344,-795.9351 317.94,-790.87 307.5068,-789.0265 308.6344,-795.9351"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6025" xlink:title="ZcashFoundation/zebra#6025&#10;Add a manually&#45;triggered&#10;workflow for mining a&#10;block on testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="818,-994 586,-994 586,-926 818,-926 818,-994"/>
<text text-anchor="middle" x="702" y="-978.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="702" y="-963.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="702" y="-948.8" font-family="Times,serif" font-size="14.00" fill="#000000">workflow for mining a</text>
<text text-anchor="middle" x="702" y="-933.8" font-family="Times,serif" font-size="14.00" fill="#000000">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6081 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#6081</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6081" xlink:title="ZcashFoundation/zebra#6081&#10;Implement missing mining&#10;status RPCs or fields" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1057.5 29,-1057.5 29,-1004.5 261,-1004.5 261,-1057.5"/>
<text text-anchor="middle" x="145" y="-1042.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6081</text>
<text text-anchor="middle" x="145" y="-1027.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement missing mining</text>
<text text-anchor="middle" x="145" y="-1012.3" font-family="Times,serif" font-size="14.00" fill="#000000">status RPCs or fields</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5700 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#5700</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5700" xlink:title="ZcashFoundation/zebra#5700&#10;Re&#45;use blocks from the&#10;old state when the state&#10;version changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1144 29,-1144 29,-1076 261,-1076 261,-1144"/>
<text text-anchor="middle" x="145" y="-1128.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5700</text>
<text text-anchor="middle" x="145" y="-1113.8" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;use blocks from the</text>
<text text-anchor="middle" x="145" y="-1098.8" font-family="Times,serif" font-size="14.00" fill="#000000">old state when the state</text>
<text text-anchor="middle" x="145" y="-1083.8" font-family="Times,serif" font-size="14.00" fill="#000000">version changes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5911 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#5911</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5911" xlink:title="ZcashFoundation/zebra#5911&#10;Store the serialized&#10;block size in the&#10;database" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-1144 318,-1144 318,-1076 550,-1076 550,-1144"/>
<text text-anchor="middle" x="434" y="-1128.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5911</text>
<text text-anchor="middle" x="434" y="-1113.8" font-family="Times,serif" font-size="14.00" fill="#000000">Store the serialized</text>
<text text-anchor="middle" x="434" y="-1098.8" font-family="Times,serif" font-size="14.00" fill="#000000">block size in the</text>
<text text-anchor="middle" x="434" y="-1083.8" font-family="Times,serif" font-size="14.00" fill="#000000">database</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5700&#45;&gt;ZcashFoundation/zebra#5911 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#5700&#45;&gt;ZcashFoundation/zebra#5911</title>
<path fill="none" stroke="#000000" d="M261.3,-1110C276.61,-1110 292.36,-1110 307.83,-1110"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-1113.5001 317.94,-1110 307.94,-1106.5001 307.94,-1113.5001"/>
</g>
<!-- ZcashFoundation/zebra#6118 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#6118</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6118" xlink:title="ZcashFoundation/zebra#6118&#10;Create a Docker images&#10;and docker&#45;compose for&#10;mining with Zebra on&#10;Testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-1001.5 318,-1001.5 318,-918.5 550,-918.5 550,-1001.5"/>
<text text-anchor="middle" x="434" y="-986.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6118</text>
<text text-anchor="middle" x="434" y="-971.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Docker images</text>
<text text-anchor="middle" x="434" y="-956.3" font-family="Times,serif" font-size="14.00" fill="#000000">and docker&#45;compose for</text>
<text text-anchor="middle" x="434" y="-941.3" font-family="Times,serif" font-size="14.00" fill="#000000">mining with Zebra on</text>
<text text-anchor="middle" x="434" y="-926.3" font-family="Times,serif" font-size="14.00" fill="#000000">Testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M550.38,-960C558.71,-960 567.14,-960 575.53,-960"/>
<polygon fill="#000000" stroke="#000000" points="575.74,-963.5001 585.74,-960 575.74,-956.5001 575.74,-963.5001"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node20" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node20"><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="550,-1280.5 318,-1280.5 318,-1227.5 550,-1227.5 550,-1280.5"/>
<text text-anchor="middle" x="434" y="-1265.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="434" y="-1250.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="434" y="-1235.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5487" xlink:title="ZcashFoundation/zebra#5487&#10;Return detailed errors&#10;from the `submitblock`&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1433 29,-1433 29,-1365 261,-1365 261,-1433"/>
<text text-anchor="middle" x="145" y="-1417.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="145" y="-1402.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="145" y="-1387.8" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="145" y="-1372.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node22"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5709" xlink:title="ZcashFoundation/zebra#5709&#10;Fix repeated block&#10;timeouts during initial&#10;sync" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1519 29,-1519 29,-1451 261,-1451 261,-1519"/>
<text text-anchor="middle" x="145" y="-1503.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="145" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="145" y="-1473.8" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="145" y="-1458.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node23" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5425" xlink:title="ZcashFoundation/zebra#5425&#10;Parallelise note&#10;commitment tree point&#10;conversions" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="550,-1519 318,-1519 318,-1451 550,-1451 550,-1519"/>
<text text-anchor="middle" x="434" y="-1503.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="434" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="434" y="-1473.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="434" y="-1458.8" font-family="Times,serif" font-size="14.00" fill="#000000">conversions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M261.3,-1485C276.61,-1485 292.36,-1485 307.83,-1485"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-1488.5001 317.94,-1485 307.94,-1481.5001 307.94,-1488.5001"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node24"><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="261,-1346.5 29,-1346.5 29,-1263.5 261,-1263.5 261,-1346.5"/>
<text text-anchor="middle" x="145" y="-1331.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="145" y="-1316.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="145" y="-1301.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="145" y="-1286.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="145" y="-1271.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M261.3,-1284.5C276.61,-1281.8 292.36,-1279 307.83,-1276.3"/>
<polygon fill="#000000" stroke="#000000" points="308.7083,-1279.6987 317.94,-1274.5 307.4813,-1272.8071 308.7083,-1279.6987"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node25"><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="261,-1245.5 29,-1245.5 29,-1162.5 261,-1162.5 261,-1245.5"/>
<text text-anchor="middle" x="145" y="-1230.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="145" y="-1215.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="145" y="-1200.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="145" y="-1185.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="145" y="-1170.3" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M261.3,-1224.1C276.61,-1226.8 292.36,-1229.5 307.83,-1232.2"/>
<polygon fill="#000000" stroke="#000000" points="307.498,-1235.6932 317.94,-1233.9 308.6588,-1228.7901 307.498,-1235.6932"/>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5502" xlink:title="ZcashFoundation/zebra#5502&#10;Migrate to the latest&#10;version of Abscissa (0.7&#10;or later)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1605 29,-1605 29,-1537 261,-1537 261,-1605"/>
<text text-anchor="middle" x="145" y="-1589.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="145" y="-1574.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the latest</text>
<text text-anchor="middle" x="145" y="-1559.8" font-family="Times,serif" font-size="14.00" fill="#000000">version of Abscissa (0.7</text>
<text text-anchor="middle" x="145" y="-1544.8" font-family="Times,serif" font-size="14.00" fill="#000000">or later)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5624" xlink:title="ZcashFoundation/zebra#5624&#10;zebrad: obsolete help&#10;text with the wrong info" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-1597.5 318,-1597.5 318,-1544.5 550,-1544.5 550,-1597.5"/>
<text text-anchor="middle" x="434" y="-1582.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="434" y="-1567.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="434" y="-1552.3" font-family="Times,serif" font-size="14.00" fill="#000000">text with the wrong info</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M261.3,-1571C276.61,-1571 292.36,-1571 307.83,-1571"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-1574.5001 317.94,-1571 307.94,-1567.5001 307.94,-1574.5001"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node28"><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="261,-1691 29,-1691 29,-1623 261,-1623 261,-1691"/>
<text text-anchor="middle" x="145" y="-1675.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="145" y="-1660.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="145" y="-1645.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="145" y="-1630.8" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node29"><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="261,-1792.5 29,-1792.5 29,-1709.5 261,-1709.5 261,-1792.5"/>
<text text-anchor="middle" x="145" y="-1777.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="145" y="-1762.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="145" y="-1747.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="145" y="-1732.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="145" y="-1717.3" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node30" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node30"><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="550,-1785 318,-1785 318,-1717 550,-1717 550,-1785"/>
<text text-anchor="middle" x="434" y="-1769.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="434" y="-1754.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="434" y="-1739.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="434" y="-1724.8" font-family="Times,serif" font-size="14.00" fill="#000000">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M261.3,-1751C276.61,-1751 292.36,-1751 307.83,-1751"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-1754.5001 317.94,-1751 307.94,-1747.5001 307.94,-1754.5001"/>
</g>
<!-- ZcashFoundation/zebra#6232 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#6232</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6232" xlink:title="ZcashFoundation/zebra#6232&#10;Upgrade to an Orchard&#10;version with the nightly&#10;Rust (1.69) fix" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1879 29,-1879 29,-1811 261,-1811 261,-1879"/>
<text text-anchor="middle" x="145" y="-1863.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6232</text>
<text text-anchor="middle" x="145" y="-1848.8" font-family="Times,serif" font-size="14.00" fill="#000000">Upgrade to an Orchard</text>
<text text-anchor="middle" x="145" y="-1833.8" font-family="Times,serif" font-size="14.00" fill="#000000">version with the nightly</text>
<text text-anchor="middle" x="145" y="-1818.8" font-family="Times,serif" font-size="14.00" fill="#000000">Rust (1.69) fix</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6288 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#6288</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6288" xlink:title="ZcashFoundation/zebra#6288&#10;Enable disabled `verify_g&#10;enerated_halo2_proofs`&#10;test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="550,-1879 318,-1879 318,-1811 550,-1811 550,-1879"/>
<text text-anchor="middle" x="434" y="-1863.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6288</text>
<text text-anchor="middle" x="434" y="-1848.8" font-family="Times,serif" font-size="14.00" fill="#000000">Enable disabled `verify_g</text>
<text text-anchor="middle" x="434" y="-1833.8" font-family="Times,serif" font-size="14.00" fill="#000000">enerated_halo2_proofs`</text>
<text text-anchor="middle" x="434" y="-1818.8" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6232&#45;&gt;ZcashFoundation/zebra#6288 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#6232&#45;&gt;ZcashFoundation/zebra#6288</title>
<path fill="none" stroke="#000000" d="M261.3,-1845C276.61,-1845 292.36,-1845 307.83,-1845"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-1848.5001 317.94,-1845 307.94,-1841.5001 307.94,-1848.5001"/>
</g>
<!-- ZcashFoundation/zebra#6200 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#6200</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6200" xlink:title="ZcashFoundation/zebra#6200&#10;Publish Docker image with&#10;mining enabled" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-986.5 29,-986.5 29,-933.5 261,-933.5 261,-986.5"/>
<text text-anchor="middle" x="145" y="-971.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6200</text>
<text text-anchor="middle" x="145" y="-956.3" font-family="Times,serif" font-size="14.00" fill="#000000">Publish Docker image with</text>
<text text-anchor="middle" x="145" y="-941.3" font-family="Times,serif" font-size="14.00" fill="#000000">mining enabled</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6200&#45;&gt;ZcashFoundation/zebra#6118 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#6200&#45;&gt;ZcashFoundation/zebra#6118</title>
<path fill="none" stroke="#000000" d="M261.3,-960C276.61,-960 292.36,-960 307.83,-960"/>
<polygon fill="#000000" stroke="#000000" points="307.94,-963.5001 317.94,-960 307.94,-956.5001 307.94,-963.5001"/>
</g>
<!-- ZcashFoundation/zebra#6217 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#6217</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/6217" xlink:title="ZcashFoundation/zebra#6217&#10;change(deps): Update&#10;dependencies that only&#10;appear in the lock file" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="261,-1965 29,-1965 29,-1961 25,-1961 25,-1957 29,-1957 29,-1905 25,-1905 25,-1901 29,-1901 29,-1897 261,-1897 261,-1965"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="29,-1961 33,-1961 33,-1957 29,-1957 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="29,-1905 33,-1905 33,-1901 29,-1901 "/>
<text text-anchor="middle" x="145" y="-1949.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6217</text>
<text text-anchor="middle" x="145" y="-1934.8" font-family="Times,serif" font-size="14.00" fill="#000000">change(deps): Update</text>
<text text-anchor="middle" x="145" y="-1919.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies that only</text>
<text text-anchor="middle" x="145" y="-1904.8" font-family="Times,serif" font-size="14.00" fill="#000000">appear in the lock file</text>
</a>
</g>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>