This commit is contained in:
dconnolly 2022-07-24 12:55:53 +00:00
parent 48e155cb36
commit 0534980890
4 changed files with 590 additions and 590 deletions

View File

@ -42,15 +42,15 @@
<text text-anchor="middle" x="242" y="-3652.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_5</title>
<polygon fill="none" stroke="#0000ff" points="0,-2668 0,-3050 485,-3050 485,-2668 0,-2668"/>
<text text-anchor="middle" x="242.5" y="-3034.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop tokio tasks running for a long time and blocking other tasks</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="118,0 118,-1570 753,-1570 753,0 118,0"/>
<text text-anchor="middle" x="435.5" y="-1554.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Zebra as a Full&#45;Node Wallet</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_5</title>
<polygon fill="none" stroke="#0000ff" points="0,-2668 0,-3050 485,-3050 485,-2668 0,-2668"/>
<text text-anchor="middle" x="242.5" y="-3034.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop tokio tasks running for a long time and blocking other tasks</text>
</g>
<!-- ZcashFoundation/zebra#2971 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#2971</title>
@ -584,10 +584,267 @@
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721 -->
<!-- ZcashFoundation/zebra#271 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1538.5 130.5,-1538.5 130.5,-1485.5 353.5,-1485.5 353.5,-1538.5"/>
<text text-anchor="middle" x="242" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="242" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="242" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="740.5,-1467 517.5,-1467 517.5,-1399 740.5,-1399 740.5,-1467"/>
<text text-anchor="middle" x="629" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="629" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="629" y="-1421.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="629" y="-1406.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M353.6,-1498.9C395.1,-1493.1 442.43,-1485.5 485,-1476 493.51,-1474.1 502.26,-1472 511.03,-1469.7"/>
<polygon fill="#000000" stroke="#000000" points="512.1471,-1473.0254 520.93,-1467.1 510.3689,-1466.255 512.1471,-1473.0254"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="745,-1538.5 513,-1538.5 513,-1485.5 745,-1485.5 745,-1538.5"/>
<text text-anchor="middle" x="629" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="629" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="629" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M353.68,-1512C400.26,-1512 454.61,-1512 502.64,-1512"/>
<polygon fill="#000000" stroke="#000000" points="502.79,-1515.5001 512.79,-1512 502.79,-1508.5001 502.79,-1515.5001"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1467 130.5,-1467 130.5,-1429 353.5,-1429 353.5,-1467"/>
<text text-anchor="middle" x="242" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="242" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4691 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4691</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4691" xlink:title="ZcashFoundation/zebra#4691&#10;Stop assuming testnet&#10;when parsing keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1411 126,-1411 126,-1343 358,-1343 358,-1411"/>
<text text-anchor="middle" x="242" y="-1395.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4691</text>
<text text-anchor="middle" x="242" y="-1380.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop assuming testnet</text>
<text text-anchor="middle" x="242" y="-1365.8" font-family="Times,serif" font-size="14.00" fill="#000000">when parsing keys and</text>
<text text-anchor="middle" x="242" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#267 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#267</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/267" xlink:title="ZcashFoundation/zebra#267&#10;Implement ZIP&#45;32 Sapling&#10;and Orchard key&#10;derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1325 130.5,-1325 130.5,-1257 353.5,-1257 353.5,-1325"/>
<text text-anchor="middle" x="242" y="-1309.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#267</text>
<text text-anchor="middle" x="242" y="-1294.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;32 Sapling</text>
<text text-anchor="middle" x="242" y="-1279.8" font-family="Times,serif" font-size="14.00" fill="#000000">and Orchard key</text>
<text text-anchor="middle" x="242" y="-1264.8" font-family="Times,serif" font-size="14.00" fill="#000000">derivation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2064 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#2064</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2064" xlink:title="ZcashFoundation/zebra#2064&#10;Import Poseidon hash into&#10;Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1238.5 126,-1238.5 126,-1185.5 358,-1185.5 358,-1238.5"/>
<text text-anchor="middle" x="242" y="-1223.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2064</text>
<text text-anchor="middle" x="242" y="-1208.3" font-family="Times,serif" font-size="14.00" fill="#000000">Import Poseidon hash into</text>
<text text-anchor="middle" x="242" y="-1193.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2192 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#2192</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2192" xlink:title="ZcashFoundation/zebra#2192&#10;Implement&#10;`EphemeralPrivateKey`&#39;s&#10;for Orchard, Sapling,&#10;Sprout" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1167.5 126,-1167.5 126,-1084.5 358,-1084.5 358,-1167.5"/>
<text text-anchor="middle" x="242" y="-1152.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2192</text>
<text text-anchor="middle" x="242" y="-1137.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="242" y="-1122.3" font-family="Times,serif" font-size="14.00" fill="#000000">`EphemeralPrivateKey`&#39;s</text>
<text text-anchor="middle" x="242" y="-1107.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard, Sapling,</text>
<text text-anchor="middle" x="242" y="-1092.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#483 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#483</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/483" xlink:title="ZcashFoundation/zebra#483&#10;Limit generated block and&#10;transaction size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1066.5 130.5,-1066.5 130.5,-1013.5 353.5,-1013.5 353.5,-1066.5"/>
<text text-anchor="middle" x="242" y="-1051.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#483</text>
<text text-anchor="middle" x="242" y="-1036.3" font-family="Times,serif" font-size="14.00" fill="#000000">Limit generated block and</text>
<text text-anchor="middle" x="242" y="-1021.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction size</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#181 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#181</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/181" xlink:title="ZcashFoundation/zebra#181&#10;Sprout note&#10;encryption/decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-995 130.5,-995 130.5,-927 353.5,-927 353.5,-995"/>
<text text-anchor="middle" x="242" y="-979.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#181</text>
<text text-anchor="middle" x="242" y="-964.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout note</text>
<text text-anchor="middle" x="242" y="-949.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption/decryption</text>
<text text-anchor="middle" x="242" y="-934.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#321 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#321</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/321" xlink:title="ZcashFoundation/zebra#321&#10;Create Output Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-909 130.5,-909 130.5,-871 353.5,-871 353.5,-909"/>
<text text-anchor="middle" x="242" y="-893.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#321</text>
<text text-anchor="middle" x="242" y="-878.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create Output Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#272 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#272</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/272" xlink:title="ZcashFoundation/zebra#272&#10;Sprout Key Agreement and&#10;KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-852.5 130.5,-852.5 130.5,-799.5 353.5,-799.5 353.5,-852.5"/>
<text text-anchor="middle" x="242" y="-837.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#272</text>
<text text-anchor="middle" x="242" y="-822.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout Key Agreement and</text>
<text text-anchor="middle" x="242" y="-807.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2496 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#2496</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2496" xlink:title="ZcashFoundation/zebra#2496&#10;Handle a ivk == ⊥&#10;(KA^Orchard private key)&#10;when generating an&#10;Orchard Spending Key" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-781.5 126,-781.5 126,-698.5 358,-698.5 358,-781.5"/>
<text text-anchor="middle" x="242" y="-766.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2496</text>
<text text-anchor="middle" x="242" y="-751.3" font-family="Times,serif" font-size="14.00" fill="#000000">Handle a ivk == ⊥</text>
<text text-anchor="middle" x="242" y="-736.3" font-family="Times,serif" font-size="14.00" fill="#000000">(KA^Orchard private key)</text>
<text text-anchor="middle" x="242" y="-721.3" font-family="Times,serif" font-size="14.00" fill="#000000">when generating an</text>
<text text-anchor="middle" x="242" y="-706.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Spending Key</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3869 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#3869</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3869" xlink:title="ZcashFoundation/zebra#3869&#10;Orchard: ensure that ivk&#10;= 0 is rejected if that&#10;negligible case occurs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-680 126,-680 126,-612 358,-612 358,-680"/>
<text text-anchor="middle" x="242" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3869</text>
<text text-anchor="middle" x="242" y="-649.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: ensure that ivk</text>
<text text-anchor="middle" x="242" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">= 0 is rejected if that</text>
<text text-anchor="middle" x="242" y="-619.8" font-family="Times,serif" font-size="14.00" fill="#000000">negligible case occurs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#278 -->
<g id="node51" class="node open">
<title>ZcashFoundation/zebra#278</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/278" xlink:title="ZcashFoundation/zebra#278&#10;Sapling Note Builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-594 130.5,-594 130.5,-556 353.5,-556 353.5,-594"/>
<text text-anchor="middle" x="242" y="-578.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#278</text>
<text text-anchor="middle" x="242" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Note Builder</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2447 -->
<g id="node52" class="node open">
<title>ZcashFoundation/zebra#2447</title>
<g id="a_node52"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2447" xlink:title="ZcashFoundation/zebra#2447&#10;Define a new `Amount`&#10;`Constraint` for Note&#10;values w/ [0..2^64) as&#10;`valid_range()`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-537.5 126,-537.5 126,-454.5 358,-454.5 358,-537.5"/>
<text text-anchor="middle" x="242" y="-522.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2447</text>
<text text-anchor="middle" x="242" y="-507.3" font-family="Times,serif" font-size="14.00" fill="#000000">Define a new `Amount`</text>
<text text-anchor="middle" x="242" y="-492.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Constraint` for Note</text>
<text text-anchor="middle" x="242" y="-477.3" font-family="Times,serif" font-size="14.00" fill="#000000">values w/ [0..2^64) as</text>
<text text-anchor="middle" x="242" y="-462.3" font-family="Times,serif" font-size="14.00" fill="#000000">`valid_range()`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2041 -->
<g id="node53" class="node open">
<title>ZcashFoundation/zebra#2041</title>
<g id="a_node53"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2041" xlink:title="ZcashFoundation/zebra#2041&#10;Orchard: derive&#10;OutgoingCipherKey (&#10;Sapling and Orchard)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-436 126,-436 126,-368 358,-368 358,-436"/>
<text text-anchor="middle" x="242" y="-420.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2041</text>
<text text-anchor="middle" x="242" y="-405.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: derive</text>
<text text-anchor="middle" x="242" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutgoingCipherKey (</text>
<text text-anchor="middle" x="242" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling and Orchard)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4692 -->
<g id="node54" class="node open">
<title>ZcashFoundation/zebra#4692</title>
<g id="a_node54"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4692" xlink:title="ZcashFoundation/zebra#4692&#10;Check address and key&#10;lengths when parsing&#10;strings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-350 126,-350 126,-282 358,-282 358,-350"/>
<text text-anchor="middle" x="242" y="-334.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4692</text>
<text text-anchor="middle" x="242" y="-319.8" font-family="Times,serif" font-size="14.00" fill="#000000">Check address and key</text>
<text text-anchor="middle" x="242" y="-304.8" font-family="Times,serif" font-size="14.00" fill="#000000">lengths when parsing</text>
<text text-anchor="middle" x="242" y="-289.8" font-family="Times,serif" font-size="14.00" fill="#000000">strings</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#320 -->
<g id="node55" class="node open">
<title>ZcashFoundation/zebra#320</title>
<g id="a_node55"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/320" xlink:title="ZcashFoundation/zebra#320&#10;Create a Spend Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-264 130.5,-264 130.5,-226 353.5,-226 353.5,-264"/>
<text text-anchor="middle" x="242" y="-248.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#320</text>
<text text-anchor="middle" x="242" y="-233.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Spend Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2080 -->
<g id="node56" class="node open">
<title>ZcashFoundation/zebra#2080</title>
<g id="a_node56"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2080" xlink:title="ZcashFoundation/zebra#2080&#10;[blocked on frost]&#10;replace`redpallas` module&#10;with `reddsa`/`redpallas`&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-207.5 126,-207.5 126,-124.5 358,-124.5 358,-207.5"/>
<text text-anchor="middle" x="242" y="-192.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2080</text>
<text text-anchor="middle" x="242" y="-177.3" font-family="Times,serif" font-size="14.00" fill="#000000">[blocked on frost]</text>
<text text-anchor="middle" x="242" y="-162.3" font-family="Times,serif" font-size="14.00" fill="#000000">replace`redpallas` module</text>
<text text-anchor="middle" x="242" y="-147.3" font-family="Times,serif" font-size="14.00" fill="#000000">with `reddsa`/`redpallas`</text>
<text text-anchor="middle" x="242" y="-132.3" font-family="Times,serif" font-size="14.00" fill="#000000">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2095 -->
<g id="node57" class="node open">
<title>ZcashFoundation/zebra#2095</title>
<g id="a_node57"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2095" xlink:title="ZcashFoundation/zebra#2095&#10;Orchard: update&#10;note/action generation to&#10;include input note&#10;nullifier in the&#10;PRF^expand invocations" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-106 126,-106 126,-8 358,-8 358,-106"/>
<text text-anchor="middle" x="242" y="-90.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2095</text>
<text text-anchor="middle" x="242" y="-75.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: update</text>
<text text-anchor="middle" x="242" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">note/action generation to</text>
<text text-anchor="middle" x="242" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">include input note</text>
<text text-anchor="middle" x="242" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier in the</text>
<text text-anchor="middle" x="242" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">PRF^expand invocations</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721 -->
<g id="node58" class="node open">
<title>ZcashFoundation/zebra#4721</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4721" xlink:title="ZcashFoundation/zebra#4721&#10;Send note commitment and&#10;history trees from the&#10;non&#45;finalized state to&#10;the finalized state" target="_blank">
<g id="a_node58"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4721" xlink:title="ZcashFoundation/zebra#4721&#10;Send note commitment and&#10;history trees from the&#10;non&#45;finalized state to&#10;the finalized state" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-3018.5 126,-3018.5 126,-2935.5 358,-2935.5 358,-3018.5"/>
<text text-anchor="middle" x="242" y="-3003.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4721</text>
<text text-anchor="middle" x="242" y="-2988.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send note commitment and</text>
@ -604,9 +861,9 @@
<polygon fill="#000000" stroke="#000000" points="503.4501,-2948.75 512.97,-2944.1 502.6282,-2941.7984 503.4501,-2948.75"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node38" class="node open">
<g id="node59" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<g id="a_node59"><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="358,-2917.5 126,-2917.5 126,-2834.5 358,-2834.5 358,-2917.5"/>
<text text-anchor="middle" x="242" y="-2902.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="242" y="-2887.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
@ -617,9 +874,9 @@
</g>
</g>
<!-- ZcashFoundation/zebra#4789 -->
<g id="node39" class="node open">
<g id="node60" class="node open">
<title>ZcashFoundation/zebra#4789</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4789" xlink:title="ZcashFoundation/zebra#4789&#10;Move CPU&#45;heavy proof&#10;preparation into the&#10;batch cryptography thread" target="_blank">
<g id="a_node60"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4789" xlink:title="ZcashFoundation/zebra#4789&#10;Move CPU&#45;heavy proof&#10;preparation into the&#10;batch cryptography thread" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-2816 126,-2816 126,-2748 358,-2748 358,-2816"/>
<text text-anchor="middle" x="242" y="-2800.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4789</text>
<text text-anchor="middle" x="242" y="-2785.8" font-family="Times,serif" font-size="14.00" fill="#000000">Move CPU&#45;heavy proof</text>
@ -629,9 +886,9 @@
</g>
</g>
<!-- ZcashFoundation/zebra#4583 -->
<g id="node40" class="node open">
<g id="node61" class="node open">
<title>ZcashFoundation/zebra#4583</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4583" xlink:title="ZcashFoundation/zebra#4583&#10;Investigate busiest tasks&#10;per tokio&#45;console" target="_blank">
<g id="a_node61"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4583" xlink:title="ZcashFoundation/zebra#4583&#10;Investigate busiest tasks&#10;per tokio&#45;console" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-2729.5 126,-2729.5 126,-2676.5 358,-2676.5 358,-2729.5"/>
<text text-anchor="middle" x="242" y="-2714.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4583</text>
<text text-anchor="middle" x="242" y="-2699.3" font-family="Times,serif" font-size="14.00" fill="#000000">Investigate busiest tasks</text>
@ -639,263 +896,6 @@
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1538.5 130.5,-1538.5 130.5,-1485.5 353.5,-1485.5 353.5,-1538.5"/>
<text text-anchor="middle" x="242" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="242" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="242" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="740.5,-1467 517.5,-1467 517.5,-1399 740.5,-1399 740.5,-1467"/>
<text text-anchor="middle" x="629" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="629" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="629" y="-1421.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="629" y="-1406.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M353.6,-1498.9C395.1,-1493.1 442.43,-1485.5 485,-1476 493.51,-1474.1 502.26,-1472 511.03,-1469.7"/>
<polygon fill="#000000" stroke="#000000" points="512.1471,-1473.0254 520.93,-1467.1 510.3689,-1466.255 512.1471,-1473.0254"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="745,-1538.5 513,-1538.5 513,-1485.5 745,-1485.5 745,-1538.5"/>
<text text-anchor="middle" x="629" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="629" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="629" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M353.68,-1512C400.26,-1512 454.61,-1512 502.64,-1512"/>
<polygon fill="#000000" stroke="#000000" points="502.79,-1515.5001 512.79,-1512 502.79,-1508.5001 502.79,-1515.5001"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1467 130.5,-1467 130.5,-1429 353.5,-1429 353.5,-1467"/>
<text text-anchor="middle" x="242" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="242" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4691 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#4691</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4691" xlink:title="ZcashFoundation/zebra#4691&#10;Stop assuming testnet&#10;when parsing keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1411 126,-1411 126,-1343 358,-1343 358,-1411"/>
<text text-anchor="middle" x="242" y="-1395.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4691</text>
<text text-anchor="middle" x="242" y="-1380.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop assuming testnet</text>
<text text-anchor="middle" x="242" y="-1365.8" font-family="Times,serif" font-size="14.00" fill="#000000">when parsing keys and</text>
<text text-anchor="middle" x="242" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#267 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#267</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/267" xlink:title="ZcashFoundation/zebra#267&#10;Implement ZIP&#45;32 Sapling&#10;and Orchard key&#10;derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1325 130.5,-1325 130.5,-1257 353.5,-1257 353.5,-1325"/>
<text text-anchor="middle" x="242" y="-1309.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#267</text>
<text text-anchor="middle" x="242" y="-1294.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;32 Sapling</text>
<text text-anchor="middle" x="242" y="-1279.8" font-family="Times,serif" font-size="14.00" fill="#000000">and Orchard key</text>
<text text-anchor="middle" x="242" y="-1264.8" font-family="Times,serif" font-size="14.00" fill="#000000">derivation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2064 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#2064</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2064" xlink:title="ZcashFoundation/zebra#2064&#10;Import Poseidon hash into&#10;Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1238.5 126,-1238.5 126,-1185.5 358,-1185.5 358,-1238.5"/>
<text text-anchor="middle" x="242" y="-1223.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2064</text>
<text text-anchor="middle" x="242" y="-1208.3" font-family="Times,serif" font-size="14.00" fill="#000000">Import Poseidon hash into</text>
<text text-anchor="middle" x="242" y="-1193.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2192 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#2192</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2192" xlink:title="ZcashFoundation/zebra#2192&#10;Implement&#10;`EphemeralPrivateKey`&#39;s&#10;for Orchard, Sapling,&#10;Sprout" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1167.5 126,-1167.5 126,-1084.5 358,-1084.5 358,-1167.5"/>
<text text-anchor="middle" x="242" y="-1152.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2192</text>
<text text-anchor="middle" x="242" y="-1137.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="242" y="-1122.3" font-family="Times,serif" font-size="14.00" fill="#000000">`EphemeralPrivateKey`&#39;s</text>
<text text-anchor="middle" x="242" y="-1107.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard, Sapling,</text>
<text text-anchor="middle" x="242" y="-1092.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#483 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#483</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/483" xlink:title="ZcashFoundation/zebra#483&#10;Limit generated block and&#10;transaction size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1066.5 130.5,-1066.5 130.5,-1013.5 353.5,-1013.5 353.5,-1066.5"/>
<text text-anchor="middle" x="242" y="-1051.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#483</text>
<text text-anchor="middle" x="242" y="-1036.3" font-family="Times,serif" font-size="14.00" fill="#000000">Limit generated block and</text>
<text text-anchor="middle" x="242" y="-1021.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction size</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#181 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#181</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/181" xlink:title="ZcashFoundation/zebra#181&#10;Sprout note&#10;encryption/decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-995 130.5,-995 130.5,-927 353.5,-927 353.5,-995"/>
<text text-anchor="middle" x="242" y="-979.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#181</text>
<text text-anchor="middle" x="242" y="-964.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout note</text>
<text text-anchor="middle" x="242" y="-949.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption/decryption</text>
<text text-anchor="middle" x="242" y="-934.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#321 -->
<g id="node51" class="node open">
<title>ZcashFoundation/zebra#321</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/321" xlink:title="ZcashFoundation/zebra#321&#10;Create Output Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-909 130.5,-909 130.5,-871 353.5,-871 353.5,-909"/>
<text text-anchor="middle" x="242" y="-893.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#321</text>
<text text-anchor="middle" x="242" y="-878.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create Output Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#272 -->
<g id="node52" class="node open">
<title>ZcashFoundation/zebra#272</title>
<g id="a_node52"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/272" xlink:title="ZcashFoundation/zebra#272&#10;Sprout Key Agreement and&#10;KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-852.5 130.5,-852.5 130.5,-799.5 353.5,-799.5 353.5,-852.5"/>
<text text-anchor="middle" x="242" y="-837.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#272</text>
<text text-anchor="middle" x="242" y="-822.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout Key Agreement and</text>
<text text-anchor="middle" x="242" y="-807.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2496 -->
<g id="node53" class="node open">
<title>ZcashFoundation/zebra#2496</title>
<g id="a_node53"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2496" xlink:title="ZcashFoundation/zebra#2496&#10;Handle a ivk == ⊥&#10;(KA^Orchard private key)&#10;when generating an&#10;Orchard Spending Key" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-781.5 126,-781.5 126,-698.5 358,-698.5 358,-781.5"/>
<text text-anchor="middle" x="242" y="-766.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2496</text>
<text text-anchor="middle" x="242" y="-751.3" font-family="Times,serif" font-size="14.00" fill="#000000">Handle a ivk == ⊥</text>
<text text-anchor="middle" x="242" y="-736.3" font-family="Times,serif" font-size="14.00" fill="#000000">(KA^Orchard private key)</text>
<text text-anchor="middle" x="242" y="-721.3" font-family="Times,serif" font-size="14.00" fill="#000000">when generating an</text>
<text text-anchor="middle" x="242" y="-706.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Spending Key</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3869 -->
<g id="node54" class="node open">
<title>ZcashFoundation/zebra#3869</title>
<g id="a_node54"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3869" xlink:title="ZcashFoundation/zebra#3869&#10;Orchard: ensure that ivk&#10;= 0 is rejected if that&#10;negligible case occurs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-680 126,-680 126,-612 358,-612 358,-680"/>
<text text-anchor="middle" x="242" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3869</text>
<text text-anchor="middle" x="242" y="-649.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: ensure that ivk</text>
<text text-anchor="middle" x="242" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">= 0 is rejected if that</text>
<text text-anchor="middle" x="242" y="-619.8" font-family="Times,serif" font-size="14.00" fill="#000000">negligible case occurs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#278 -->
<g id="node55" class="node open">
<title>ZcashFoundation/zebra#278</title>
<g id="a_node55"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/278" xlink:title="ZcashFoundation/zebra#278&#10;Sapling Note Builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-594 130.5,-594 130.5,-556 353.5,-556 353.5,-594"/>
<text text-anchor="middle" x="242" y="-578.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#278</text>
<text text-anchor="middle" x="242" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Note Builder</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2447 -->
<g id="node56" class="node open">
<title>ZcashFoundation/zebra#2447</title>
<g id="a_node56"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2447" xlink:title="ZcashFoundation/zebra#2447&#10;Define a new `Amount`&#10;`Constraint` for Note&#10;values w/ [0..2^64) as&#10;`valid_range()`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-537.5 126,-537.5 126,-454.5 358,-454.5 358,-537.5"/>
<text text-anchor="middle" x="242" y="-522.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2447</text>
<text text-anchor="middle" x="242" y="-507.3" font-family="Times,serif" font-size="14.00" fill="#000000">Define a new `Amount`</text>
<text text-anchor="middle" x="242" y="-492.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Constraint` for Note</text>
<text text-anchor="middle" x="242" y="-477.3" font-family="Times,serif" font-size="14.00" fill="#000000">values w/ [0..2^64) as</text>
<text text-anchor="middle" x="242" y="-462.3" font-family="Times,serif" font-size="14.00" fill="#000000">`valid_range()`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2041 -->
<g id="node57" class="node open">
<title>ZcashFoundation/zebra#2041</title>
<g id="a_node57"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2041" xlink:title="ZcashFoundation/zebra#2041&#10;Orchard: derive&#10;OutgoingCipherKey (&#10;Sapling and Orchard)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-436 126,-436 126,-368 358,-368 358,-436"/>
<text text-anchor="middle" x="242" y="-420.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2041</text>
<text text-anchor="middle" x="242" y="-405.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: derive</text>
<text text-anchor="middle" x="242" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutgoingCipherKey (</text>
<text text-anchor="middle" x="242" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling and Orchard)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4692 -->
<g id="node58" class="node open">
<title>ZcashFoundation/zebra#4692</title>
<g id="a_node58"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4692" xlink:title="ZcashFoundation/zebra#4692&#10;Check address and key&#10;lengths when parsing&#10;strings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-350 126,-350 126,-282 358,-282 358,-350"/>
<text text-anchor="middle" x="242" y="-334.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4692</text>
<text text-anchor="middle" x="242" y="-319.8" font-family="Times,serif" font-size="14.00" fill="#000000">Check address and key</text>
<text text-anchor="middle" x="242" y="-304.8" font-family="Times,serif" font-size="14.00" fill="#000000">lengths when parsing</text>
<text text-anchor="middle" x="242" y="-289.8" font-family="Times,serif" font-size="14.00" fill="#000000">strings</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#320 -->
<g id="node59" class="node open">
<title>ZcashFoundation/zebra#320</title>
<g id="a_node59"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/320" xlink:title="ZcashFoundation/zebra#320&#10;Create a Spend Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-264 130.5,-264 130.5,-226 353.5,-226 353.5,-264"/>
<text text-anchor="middle" x="242" y="-248.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#320</text>
<text text-anchor="middle" x="242" y="-233.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Spend Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2080 -->
<g id="node60" class="node open">
<title>ZcashFoundation/zebra#2080</title>
<g id="a_node60"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2080" xlink:title="ZcashFoundation/zebra#2080&#10;[blocked on frost]&#10;replace`redpallas` module&#10;with `reddsa`/`redpallas`&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-207.5 126,-207.5 126,-124.5 358,-124.5 358,-207.5"/>
<text text-anchor="middle" x="242" y="-192.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2080</text>
<text text-anchor="middle" x="242" y="-177.3" font-family="Times,serif" font-size="14.00" fill="#000000">[blocked on frost]</text>
<text text-anchor="middle" x="242" y="-162.3" font-family="Times,serif" font-size="14.00" fill="#000000">replace`redpallas` module</text>
<text text-anchor="middle" x="242" y="-147.3" font-family="Times,serif" font-size="14.00" fill="#000000">with `reddsa`/`redpallas`</text>
<text text-anchor="middle" x="242" y="-132.3" font-family="Times,serif" font-size="14.00" fill="#000000">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2095 -->
<g id="node61" class="node open">
<title>ZcashFoundation/zebra#2095</title>
<g id="a_node61"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2095" xlink:title="ZcashFoundation/zebra#2095&#10;Orchard: update&#10;note/action generation to&#10;include input note&#10;nullifier in the&#10;PRF^expand invocations" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-106 126,-106 126,-8 358,-8 358,-106"/>
<text text-anchor="middle" x="242" y="-90.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2095</text>
<text text-anchor="middle" x="242" y="-75.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: update</text>
<text text-anchor="middle" x="242" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">note/action generation to</text>
<text text-anchor="middle" x="242" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">include input note</text>
<text text-anchor="middle" x="242" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier in the</text>
<text text-anchor="middle" x="242" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">PRF^expand invocations</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node67" class="node open">
<title>ZcashFoundation/zebra#3247</title>

View File

@ -30,15 +30,15 @@
<text text-anchor="middle" x="242" y="-3652.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_5</title>
<polygon fill="none" stroke="#0000ff" points="0,-2668 0,-3050 485,-3050 485,-2668 0,-2668"/>
<text text-anchor="middle" x="242.5" y="-3034.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop tokio tasks running for a long time and blocking other tasks</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="118,0 118,-1570 753,-1570 753,0 118,0"/>
<text text-anchor="middle" x="435.5" y="-1554.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Zebra as a Full&#45;Node Wallet</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_5</title>
<polygon fill="none" stroke="#0000ff" points="0,-2668 0,-3050 485,-3050 485,-2668 0,-2668"/>
<text text-anchor="middle" x="242.5" y="-3034.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop tokio tasks running for a long time and blocking other tasks</text>
</g>
<!-- ZcashFoundation/zebra#2971 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#2971</title>
@ -572,10 +572,267 @@
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721 -->
<!-- ZcashFoundation/zebra#271 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1538.5 130.5,-1538.5 130.5,-1485.5 353.5,-1485.5 353.5,-1538.5"/>
<text text-anchor="middle" x="242" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="242" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="242" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="740.5,-1467 517.5,-1467 517.5,-1399 740.5,-1399 740.5,-1467"/>
<text text-anchor="middle" x="629" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="629" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="629" y="-1421.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="629" y="-1406.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M353.6,-1498.9C395.1,-1493.1 442.43,-1485.5 485,-1476 493.51,-1474.1 502.26,-1472 511.03,-1469.7"/>
<polygon fill="#000000" stroke="#000000" points="512.1471,-1473.0254 520.93,-1467.1 510.3689,-1466.255 512.1471,-1473.0254"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="745,-1538.5 513,-1538.5 513,-1485.5 745,-1485.5 745,-1538.5"/>
<text text-anchor="middle" x="629" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="629" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="629" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M353.68,-1512C400.26,-1512 454.61,-1512 502.64,-1512"/>
<polygon fill="#000000" stroke="#000000" points="502.79,-1515.5001 512.79,-1512 502.79,-1508.5001 502.79,-1515.5001"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1467 130.5,-1467 130.5,-1429 353.5,-1429 353.5,-1467"/>
<text text-anchor="middle" x="242" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="242" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4691 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#4691</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4691" xlink:title="ZcashFoundation/zebra#4691&#10;Stop assuming testnet&#10;when parsing keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1411 126,-1411 126,-1343 358,-1343 358,-1411"/>
<text text-anchor="middle" x="242" y="-1395.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4691</text>
<text text-anchor="middle" x="242" y="-1380.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop assuming testnet</text>
<text text-anchor="middle" x="242" y="-1365.8" font-family="Times,serif" font-size="14.00" fill="#000000">when parsing keys and</text>
<text text-anchor="middle" x="242" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#267 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#267</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/267" xlink:title="ZcashFoundation/zebra#267&#10;Implement ZIP&#45;32 Sapling&#10;and Orchard key&#10;derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1325 130.5,-1325 130.5,-1257 353.5,-1257 353.5,-1325"/>
<text text-anchor="middle" x="242" y="-1309.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#267</text>
<text text-anchor="middle" x="242" y="-1294.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;32 Sapling</text>
<text text-anchor="middle" x="242" y="-1279.8" font-family="Times,serif" font-size="14.00" fill="#000000">and Orchard key</text>
<text text-anchor="middle" x="242" y="-1264.8" font-family="Times,serif" font-size="14.00" fill="#000000">derivation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2064 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#2064</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2064" xlink:title="ZcashFoundation/zebra#2064&#10;Import Poseidon hash into&#10;Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1238.5 126,-1238.5 126,-1185.5 358,-1185.5 358,-1238.5"/>
<text text-anchor="middle" x="242" y="-1223.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2064</text>
<text text-anchor="middle" x="242" y="-1208.3" font-family="Times,serif" font-size="14.00" fill="#000000">Import Poseidon hash into</text>
<text text-anchor="middle" x="242" y="-1193.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2192 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#2192</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2192" xlink:title="ZcashFoundation/zebra#2192&#10;Implement&#10;`EphemeralPrivateKey`&#39;s&#10;for Orchard, Sapling,&#10;Sprout" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1167.5 126,-1167.5 126,-1084.5 358,-1084.5 358,-1167.5"/>
<text text-anchor="middle" x="242" y="-1152.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2192</text>
<text text-anchor="middle" x="242" y="-1137.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="242" y="-1122.3" font-family="Times,serif" font-size="14.00" fill="#000000">`EphemeralPrivateKey`&#39;s</text>
<text text-anchor="middle" x="242" y="-1107.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard, Sapling,</text>
<text text-anchor="middle" x="242" y="-1092.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#483 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#483</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/483" xlink:title="ZcashFoundation/zebra#483&#10;Limit generated block and&#10;transaction size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1066.5 130.5,-1066.5 130.5,-1013.5 353.5,-1013.5 353.5,-1066.5"/>
<text text-anchor="middle" x="242" y="-1051.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#483</text>
<text text-anchor="middle" x="242" y="-1036.3" font-family="Times,serif" font-size="14.00" fill="#000000">Limit generated block and</text>
<text text-anchor="middle" x="242" y="-1021.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction size</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#181 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#181</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/181" xlink:title="ZcashFoundation/zebra#181&#10;Sprout note&#10;encryption/decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-995 130.5,-995 130.5,-927 353.5,-927 353.5,-995"/>
<text text-anchor="middle" x="242" y="-979.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#181</text>
<text text-anchor="middle" x="242" y="-964.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout note</text>
<text text-anchor="middle" x="242" y="-949.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption/decryption</text>
<text text-anchor="middle" x="242" y="-934.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#321 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#321</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/321" xlink:title="ZcashFoundation/zebra#321&#10;Create Output Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-909 130.5,-909 130.5,-871 353.5,-871 353.5,-909"/>
<text text-anchor="middle" x="242" y="-893.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#321</text>
<text text-anchor="middle" x="242" y="-878.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create Output Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#272 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#272</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/272" xlink:title="ZcashFoundation/zebra#272&#10;Sprout Key Agreement and&#10;KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-852.5 130.5,-852.5 130.5,-799.5 353.5,-799.5 353.5,-852.5"/>
<text text-anchor="middle" x="242" y="-837.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#272</text>
<text text-anchor="middle" x="242" y="-822.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout Key Agreement and</text>
<text text-anchor="middle" x="242" y="-807.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2496 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#2496</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2496" xlink:title="ZcashFoundation/zebra#2496&#10;Handle a ivk == ⊥&#10;(KA^Orchard private key)&#10;when generating an&#10;Orchard Spending Key" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-781.5 126,-781.5 126,-698.5 358,-698.5 358,-781.5"/>
<text text-anchor="middle" x="242" y="-766.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2496</text>
<text text-anchor="middle" x="242" y="-751.3" font-family="Times,serif" font-size="14.00" fill="#000000">Handle a ivk == ⊥</text>
<text text-anchor="middle" x="242" y="-736.3" font-family="Times,serif" font-size="14.00" fill="#000000">(KA^Orchard private key)</text>
<text text-anchor="middle" x="242" y="-721.3" font-family="Times,serif" font-size="14.00" fill="#000000">when generating an</text>
<text text-anchor="middle" x="242" y="-706.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Spending Key</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3869 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#3869</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3869" xlink:title="ZcashFoundation/zebra#3869&#10;Orchard: ensure that ivk&#10;= 0 is rejected if that&#10;negligible case occurs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-680 126,-680 126,-612 358,-612 358,-680"/>
<text text-anchor="middle" x="242" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3869</text>
<text text-anchor="middle" x="242" y="-649.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: ensure that ivk</text>
<text text-anchor="middle" x="242" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">= 0 is rejected if that</text>
<text text-anchor="middle" x="242" y="-619.8" font-family="Times,serif" font-size="14.00" fill="#000000">negligible case occurs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#278 -->
<g id="node51" class="node open">
<title>ZcashFoundation/zebra#278</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/278" xlink:title="ZcashFoundation/zebra#278&#10;Sapling Note Builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-594 130.5,-594 130.5,-556 353.5,-556 353.5,-594"/>
<text text-anchor="middle" x="242" y="-578.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#278</text>
<text text-anchor="middle" x="242" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Note Builder</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2447 -->
<g id="node52" class="node open">
<title>ZcashFoundation/zebra#2447</title>
<g id="a_node52"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2447" xlink:title="ZcashFoundation/zebra#2447&#10;Define a new `Amount`&#10;`Constraint` for Note&#10;values w/ [0..2^64) as&#10;`valid_range()`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-537.5 126,-537.5 126,-454.5 358,-454.5 358,-537.5"/>
<text text-anchor="middle" x="242" y="-522.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2447</text>
<text text-anchor="middle" x="242" y="-507.3" font-family="Times,serif" font-size="14.00" fill="#000000">Define a new `Amount`</text>
<text text-anchor="middle" x="242" y="-492.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Constraint` for Note</text>
<text text-anchor="middle" x="242" y="-477.3" font-family="Times,serif" font-size="14.00" fill="#000000">values w/ [0..2^64) as</text>
<text text-anchor="middle" x="242" y="-462.3" font-family="Times,serif" font-size="14.00" fill="#000000">`valid_range()`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2041 -->
<g id="node53" class="node open">
<title>ZcashFoundation/zebra#2041</title>
<g id="a_node53"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2041" xlink:title="ZcashFoundation/zebra#2041&#10;Orchard: derive&#10;OutgoingCipherKey (&#10;Sapling and Orchard)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-436 126,-436 126,-368 358,-368 358,-436"/>
<text text-anchor="middle" x="242" y="-420.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2041</text>
<text text-anchor="middle" x="242" y="-405.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: derive</text>
<text text-anchor="middle" x="242" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutgoingCipherKey (</text>
<text text-anchor="middle" x="242" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling and Orchard)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4692 -->
<g id="node54" class="node open">
<title>ZcashFoundation/zebra#4692</title>
<g id="a_node54"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4692" xlink:title="ZcashFoundation/zebra#4692&#10;Check address and key&#10;lengths when parsing&#10;strings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-350 126,-350 126,-282 358,-282 358,-350"/>
<text text-anchor="middle" x="242" y="-334.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4692</text>
<text text-anchor="middle" x="242" y="-319.8" font-family="Times,serif" font-size="14.00" fill="#000000">Check address and key</text>
<text text-anchor="middle" x="242" y="-304.8" font-family="Times,serif" font-size="14.00" fill="#000000">lengths when parsing</text>
<text text-anchor="middle" x="242" y="-289.8" font-family="Times,serif" font-size="14.00" fill="#000000">strings</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#320 -->
<g id="node55" class="node open">
<title>ZcashFoundation/zebra#320</title>
<g id="a_node55"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/320" xlink:title="ZcashFoundation/zebra#320&#10;Create a Spend Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-264 130.5,-264 130.5,-226 353.5,-226 353.5,-264"/>
<text text-anchor="middle" x="242" y="-248.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#320</text>
<text text-anchor="middle" x="242" y="-233.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Spend Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2080 -->
<g id="node56" class="node open">
<title>ZcashFoundation/zebra#2080</title>
<g id="a_node56"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2080" xlink:title="ZcashFoundation/zebra#2080&#10;[blocked on frost]&#10;replace`redpallas` module&#10;with `reddsa`/`redpallas`&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-207.5 126,-207.5 126,-124.5 358,-124.5 358,-207.5"/>
<text text-anchor="middle" x="242" y="-192.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2080</text>
<text text-anchor="middle" x="242" y="-177.3" font-family="Times,serif" font-size="14.00" fill="#000000">[blocked on frost]</text>
<text text-anchor="middle" x="242" y="-162.3" font-family="Times,serif" font-size="14.00" fill="#000000">replace`redpallas` module</text>
<text text-anchor="middle" x="242" y="-147.3" font-family="Times,serif" font-size="14.00" fill="#000000">with `reddsa`/`redpallas`</text>
<text text-anchor="middle" x="242" y="-132.3" font-family="Times,serif" font-size="14.00" fill="#000000">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2095 -->
<g id="node57" class="node open">
<title>ZcashFoundation/zebra#2095</title>
<g id="a_node57"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2095" xlink:title="ZcashFoundation/zebra#2095&#10;Orchard: update&#10;note/action generation to&#10;include input note&#10;nullifier in the&#10;PRF^expand invocations" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-106 126,-106 126,-8 358,-8 358,-106"/>
<text text-anchor="middle" x="242" y="-90.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2095</text>
<text text-anchor="middle" x="242" y="-75.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: update</text>
<text text-anchor="middle" x="242" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">note/action generation to</text>
<text text-anchor="middle" x="242" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">include input note</text>
<text text-anchor="middle" x="242" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier in the</text>
<text text-anchor="middle" x="242" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">PRF^expand invocations</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721 -->
<g id="node58" class="node open">
<title>ZcashFoundation/zebra#4721</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4721" xlink:title="ZcashFoundation/zebra#4721&#10;Send note commitment and&#10;history trees from the&#10;non&#45;finalized state to&#10;the finalized state" target="_blank">
<g id="a_node58"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4721" xlink:title="ZcashFoundation/zebra#4721&#10;Send note commitment and&#10;history trees from the&#10;non&#45;finalized state to&#10;the finalized state" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-3018.5 126,-3018.5 126,-2935.5 358,-2935.5 358,-3018.5"/>
<text text-anchor="middle" x="242" y="-3003.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4721</text>
<text text-anchor="middle" x="242" y="-2988.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send note commitment and</text>
@ -592,9 +849,9 @@
<polygon fill="#000000" stroke="#000000" points="503.4501,-2948.75 512.97,-2944.1 502.6282,-2941.7984 503.4501,-2948.75"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node38" class="node open">
<g id="node59" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<g id="a_node59"><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="358,-2917.5 126,-2917.5 126,-2834.5 358,-2834.5 358,-2917.5"/>
<text text-anchor="middle" x="242" y="-2902.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="242" y="-2887.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
@ -605,9 +862,9 @@
</g>
</g>
<!-- ZcashFoundation/zebra#4789 -->
<g id="node39" class="node open">
<g id="node60" class="node open">
<title>ZcashFoundation/zebra#4789</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4789" xlink:title="ZcashFoundation/zebra#4789&#10;Move CPU&#45;heavy proof&#10;preparation into the&#10;batch cryptography thread" target="_blank">
<g id="a_node60"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4789" xlink:title="ZcashFoundation/zebra#4789&#10;Move CPU&#45;heavy proof&#10;preparation into the&#10;batch cryptography thread" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-2816 126,-2816 126,-2748 358,-2748 358,-2816"/>
<text text-anchor="middle" x="242" y="-2800.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4789</text>
<text text-anchor="middle" x="242" y="-2785.8" font-family="Times,serif" font-size="14.00" fill="#000000">Move CPU&#45;heavy proof</text>
@ -617,9 +874,9 @@
</g>
</g>
<!-- ZcashFoundation/zebra#4583 -->
<g id="node40" class="node open">
<g id="node61" class="node open">
<title>ZcashFoundation/zebra#4583</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4583" xlink:title="ZcashFoundation/zebra#4583&#10;Investigate busiest tasks&#10;per tokio&#45;console" target="_blank">
<g id="a_node61"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4583" xlink:title="ZcashFoundation/zebra#4583&#10;Investigate busiest tasks&#10;per tokio&#45;console" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-2729.5 126,-2729.5 126,-2676.5 358,-2676.5 358,-2729.5"/>
<text text-anchor="middle" x="242" y="-2714.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4583</text>
<text text-anchor="middle" x="242" y="-2699.3" font-family="Times,serif" font-size="14.00" fill="#000000">Investigate busiest tasks</text>
@ -627,263 +884,6 @@
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1538.5 130.5,-1538.5 130.5,-1485.5 353.5,-1485.5 353.5,-1538.5"/>
<text text-anchor="middle" x="242" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="242" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="242" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="740.5,-1467 517.5,-1467 517.5,-1399 740.5,-1399 740.5,-1467"/>
<text text-anchor="middle" x="629" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="629" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="629" y="-1421.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="629" y="-1406.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M353.6,-1498.9C395.1,-1493.1 442.43,-1485.5 485,-1476 493.51,-1474.1 502.26,-1472 511.03,-1469.7"/>
<polygon fill="#000000" stroke="#000000" points="512.1471,-1473.0254 520.93,-1467.1 510.3689,-1466.255 512.1471,-1473.0254"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="745,-1538.5 513,-1538.5 513,-1485.5 745,-1485.5 745,-1538.5"/>
<text text-anchor="middle" x="629" y="-1523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="629" y="-1508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="629" y="-1493.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M353.68,-1512C400.26,-1512 454.61,-1512 502.64,-1512"/>
<polygon fill="#000000" stroke="#000000" points="502.79,-1515.5001 512.79,-1512 502.79,-1508.5001 502.79,-1515.5001"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1467 130.5,-1467 130.5,-1429 353.5,-1429 353.5,-1467"/>
<text text-anchor="middle" x="242" y="-1451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="242" y="-1436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4691 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#4691</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4691" xlink:title="ZcashFoundation/zebra#4691&#10;Stop assuming testnet&#10;when parsing keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1411 126,-1411 126,-1343 358,-1343 358,-1411"/>
<text text-anchor="middle" x="242" y="-1395.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4691</text>
<text text-anchor="middle" x="242" y="-1380.8" font-family="Times,serif" font-size="14.00" fill="#000000">Stop assuming testnet</text>
<text text-anchor="middle" x="242" y="-1365.8" font-family="Times,serif" font-size="14.00" fill="#000000">when parsing keys and</text>
<text text-anchor="middle" x="242" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#267 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#267</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/267" xlink:title="ZcashFoundation/zebra#267&#10;Implement ZIP&#45;32 Sapling&#10;and Orchard key&#10;derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1325 130.5,-1325 130.5,-1257 353.5,-1257 353.5,-1325"/>
<text text-anchor="middle" x="242" y="-1309.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#267</text>
<text text-anchor="middle" x="242" y="-1294.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;32 Sapling</text>
<text text-anchor="middle" x="242" y="-1279.8" font-family="Times,serif" font-size="14.00" fill="#000000">and Orchard key</text>
<text text-anchor="middle" x="242" y="-1264.8" font-family="Times,serif" font-size="14.00" fill="#000000">derivation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2064 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#2064</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2064" xlink:title="ZcashFoundation/zebra#2064&#10;Import Poseidon hash into&#10;Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1238.5 126,-1238.5 126,-1185.5 358,-1185.5 358,-1238.5"/>
<text text-anchor="middle" x="242" y="-1223.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2064</text>
<text text-anchor="middle" x="242" y="-1208.3" font-family="Times,serif" font-size="14.00" fill="#000000">Import Poseidon hash into</text>
<text text-anchor="middle" x="242" y="-1193.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2192 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#2192</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2192" xlink:title="ZcashFoundation/zebra#2192&#10;Implement&#10;`EphemeralPrivateKey`&#39;s&#10;for Orchard, Sapling,&#10;Sprout" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-1167.5 126,-1167.5 126,-1084.5 358,-1084.5 358,-1167.5"/>
<text text-anchor="middle" x="242" y="-1152.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2192</text>
<text text-anchor="middle" x="242" y="-1137.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="242" y="-1122.3" font-family="Times,serif" font-size="14.00" fill="#000000">`EphemeralPrivateKey`&#39;s</text>
<text text-anchor="middle" x="242" y="-1107.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard, Sapling,</text>
<text text-anchor="middle" x="242" y="-1092.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#483 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#483</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/483" xlink:title="ZcashFoundation/zebra#483&#10;Limit generated block and&#10;transaction size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-1066.5 130.5,-1066.5 130.5,-1013.5 353.5,-1013.5 353.5,-1066.5"/>
<text text-anchor="middle" x="242" y="-1051.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#483</text>
<text text-anchor="middle" x="242" y="-1036.3" font-family="Times,serif" font-size="14.00" fill="#000000">Limit generated block and</text>
<text text-anchor="middle" x="242" y="-1021.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction size</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#181 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#181</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/181" xlink:title="ZcashFoundation/zebra#181&#10;Sprout note&#10;encryption/decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-995 130.5,-995 130.5,-927 353.5,-927 353.5,-995"/>
<text text-anchor="middle" x="242" y="-979.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#181</text>
<text text-anchor="middle" x="242" y="-964.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout note</text>
<text text-anchor="middle" x="242" y="-949.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption/decryption</text>
<text text-anchor="middle" x="242" y="-934.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#321 -->
<g id="node51" class="node open">
<title>ZcashFoundation/zebra#321</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/321" xlink:title="ZcashFoundation/zebra#321&#10;Create Output Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-909 130.5,-909 130.5,-871 353.5,-871 353.5,-909"/>
<text text-anchor="middle" x="242" y="-893.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#321</text>
<text text-anchor="middle" x="242" y="-878.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create Output Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#272 -->
<g id="node52" class="node open">
<title>ZcashFoundation/zebra#272</title>
<g id="a_node52"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/272" xlink:title="ZcashFoundation/zebra#272&#10;Sprout Key Agreement and&#10;KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-852.5 130.5,-852.5 130.5,-799.5 353.5,-799.5 353.5,-852.5"/>
<text text-anchor="middle" x="242" y="-837.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#272</text>
<text text-anchor="middle" x="242" y="-822.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout Key Agreement and</text>
<text text-anchor="middle" x="242" y="-807.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2496 -->
<g id="node53" class="node open">
<title>ZcashFoundation/zebra#2496</title>
<g id="a_node53"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2496" xlink:title="ZcashFoundation/zebra#2496&#10;Handle a ivk == ⊥&#10;(KA^Orchard private key)&#10;when generating an&#10;Orchard Spending Key" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-781.5 126,-781.5 126,-698.5 358,-698.5 358,-781.5"/>
<text text-anchor="middle" x="242" y="-766.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2496</text>
<text text-anchor="middle" x="242" y="-751.3" font-family="Times,serif" font-size="14.00" fill="#000000">Handle a ivk == ⊥</text>
<text text-anchor="middle" x="242" y="-736.3" font-family="Times,serif" font-size="14.00" fill="#000000">(KA^Orchard private key)</text>
<text text-anchor="middle" x="242" y="-721.3" font-family="Times,serif" font-size="14.00" fill="#000000">when generating an</text>
<text text-anchor="middle" x="242" y="-706.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Spending Key</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3869 -->
<g id="node54" class="node open">
<title>ZcashFoundation/zebra#3869</title>
<g id="a_node54"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3869" xlink:title="ZcashFoundation/zebra#3869&#10;Orchard: ensure that ivk&#10;= 0 is rejected if that&#10;negligible case occurs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-680 126,-680 126,-612 358,-612 358,-680"/>
<text text-anchor="middle" x="242" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3869</text>
<text text-anchor="middle" x="242" y="-649.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: ensure that ivk</text>
<text text-anchor="middle" x="242" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">= 0 is rejected if that</text>
<text text-anchor="middle" x="242" y="-619.8" font-family="Times,serif" font-size="14.00" fill="#000000">negligible case occurs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#278 -->
<g id="node55" class="node open">
<title>ZcashFoundation/zebra#278</title>
<g id="a_node55"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/278" xlink:title="ZcashFoundation/zebra#278&#10;Sapling Note Builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-594 130.5,-594 130.5,-556 353.5,-556 353.5,-594"/>
<text text-anchor="middle" x="242" y="-578.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#278</text>
<text text-anchor="middle" x="242" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Note Builder</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2447 -->
<g id="node56" class="node open">
<title>ZcashFoundation/zebra#2447</title>
<g id="a_node56"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2447" xlink:title="ZcashFoundation/zebra#2447&#10;Define a new `Amount`&#10;`Constraint` for Note&#10;values w/ [0..2^64) as&#10;`valid_range()`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-537.5 126,-537.5 126,-454.5 358,-454.5 358,-537.5"/>
<text text-anchor="middle" x="242" y="-522.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2447</text>
<text text-anchor="middle" x="242" y="-507.3" font-family="Times,serif" font-size="14.00" fill="#000000">Define a new `Amount`</text>
<text text-anchor="middle" x="242" y="-492.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Constraint` for Note</text>
<text text-anchor="middle" x="242" y="-477.3" font-family="Times,serif" font-size="14.00" fill="#000000">values w/ [0..2^64) as</text>
<text text-anchor="middle" x="242" y="-462.3" font-family="Times,serif" font-size="14.00" fill="#000000">`valid_range()`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2041 -->
<g id="node57" class="node open">
<title>ZcashFoundation/zebra#2041</title>
<g id="a_node57"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2041" xlink:title="ZcashFoundation/zebra#2041&#10;Orchard: derive&#10;OutgoingCipherKey (&#10;Sapling and Orchard)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-436 126,-436 126,-368 358,-368 358,-436"/>
<text text-anchor="middle" x="242" y="-420.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2041</text>
<text text-anchor="middle" x="242" y="-405.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: derive</text>
<text text-anchor="middle" x="242" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutgoingCipherKey (</text>
<text text-anchor="middle" x="242" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling and Orchard)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4692 -->
<g id="node58" class="node open">
<title>ZcashFoundation/zebra#4692</title>
<g id="a_node58"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4692" xlink:title="ZcashFoundation/zebra#4692&#10;Check address and key&#10;lengths when parsing&#10;strings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-350 126,-350 126,-282 358,-282 358,-350"/>
<text text-anchor="middle" x="242" y="-334.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4692</text>
<text text-anchor="middle" x="242" y="-319.8" font-family="Times,serif" font-size="14.00" fill="#000000">Check address and key</text>
<text text-anchor="middle" x="242" y="-304.8" font-family="Times,serif" font-size="14.00" fill="#000000">lengths when parsing</text>
<text text-anchor="middle" x="242" y="-289.8" font-family="Times,serif" font-size="14.00" fill="#000000">strings</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#320 -->
<g id="node59" class="node open">
<title>ZcashFoundation/zebra#320</title>
<g id="a_node59"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/320" xlink:title="ZcashFoundation/zebra#320&#10;Create a Spend Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="353.5,-264 130.5,-264 130.5,-226 353.5,-226 353.5,-264"/>
<text text-anchor="middle" x="242" y="-248.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#320</text>
<text text-anchor="middle" x="242" y="-233.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Spend Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2080 -->
<g id="node60" class="node open">
<title>ZcashFoundation/zebra#2080</title>
<g id="a_node60"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2080" xlink:title="ZcashFoundation/zebra#2080&#10;[blocked on frost]&#10;replace`redpallas` module&#10;with `reddsa`/`redpallas`&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-207.5 126,-207.5 126,-124.5 358,-124.5 358,-207.5"/>
<text text-anchor="middle" x="242" y="-192.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2080</text>
<text text-anchor="middle" x="242" y="-177.3" font-family="Times,serif" font-size="14.00" fill="#000000">[blocked on frost]</text>
<text text-anchor="middle" x="242" y="-162.3" font-family="Times,serif" font-size="14.00" fill="#000000">replace`redpallas` module</text>
<text text-anchor="middle" x="242" y="-147.3" font-family="Times,serif" font-size="14.00" fill="#000000">with `reddsa`/`redpallas`</text>
<text text-anchor="middle" x="242" y="-132.3" font-family="Times,serif" font-size="14.00" fill="#000000">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2095 -->
<g id="node61" class="node open">
<title>ZcashFoundation/zebra#2095</title>
<g id="a_node61"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2095" xlink:title="ZcashFoundation/zebra#2095&#10;Orchard: update&#10;note/action generation to&#10;include input note&#10;nullifier in the&#10;PRF^expand invocations" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="358,-106 126,-106 126,-8 358,-8 358,-106"/>
<text text-anchor="middle" x="242" y="-90.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2095</text>
<text text-anchor="middle" x="242" y="-75.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: update</text>
<text text-anchor="middle" x="242" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">note/action generation to</text>
<text text-anchor="middle" x="242" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">include input note</text>
<text text-anchor="middle" x="242" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier in the</text>
<text text-anchor="middle" x="242" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">PRF^expand invocations</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node67" class="node open">
<title>ZcashFoundation/zebra#3247</title>

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

View File

@ -22,29 +22,40 @@
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 818)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-818 828,-818 828,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="576,-235 576,-328 824,-328 824,-235 576,-235"/>
<text text-anchor="middle" x="700" y="-312.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Tech Debt</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="20,-530 20,-623 268,-623 268,-530 20,-530"/>
<text text-anchor="middle" x="144" y="-607.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Documentation</text>
</g>
<g id="clust2" class="cluster">
<g id="clust3" class="cluster">
<title>cluster_4</title>
<polygon fill="none" stroke="#0000ff" points="0,-631 0,-738 288,-738 288,-631 0,-631"/>
<text text-anchor="middle" x="144" y="-722.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="576,-235 576,-328 824,-328 824,-235 576,-235"/>
<text text-anchor="middle" x="700" y="-312.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Tech Debt</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="20,0 20,-437 556,-437 556,0 20,0"/>
<text text-anchor="middle" x="288" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Stable Release Candidate</text>
</g>
<!-- ZcashFoundation/zebra#1791 -->
<g id="node1" class="node closed">
<title>ZcashFoundation/zebra#1791</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1791" xlink:title="ZcashFoundation/zebra#1791&#10;Re&#45;enable `sync_large_che&#10;ckpoints_testnet` test" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="816,-296.5 584,-296.5 584,-243.5 816,-243.5 816,-296.5"/>
<text text-anchor="middle" x="700" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1791</text>
<text text-anchor="middle" x="700" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable `sync_large_che</text>
<text text-anchor="middle" x="700" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">ckpoints_testnet` test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node1" class="node open">
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Work out how to release&#10;Zebra binaries" target="_blank">
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Work out how to release&#10;Zebra binaries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-591.5 28,-591.5 28,-538.5 260,-538.5 260,-591.5"/>
<text text-anchor="middle" x="144" y="-576.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="144" y="-561.3" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
@ -63,7 +74,7 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755 -->
<g id="edge4" class="edge">
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M249.48,-591.51C271.46,-597 294.48,-602.71 316,-608 324.72,-610.14 333.81,-612.36 342.89,-614.57"/>
<polygon fill="#000000" stroke="#000000" points="342.1864,-618.0008 352.73,-616.96 343.8386,-611.1986 342.1864,-618.0008"/>
@ -81,7 +92,7 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#2564 -->
<g id="edge5" class="edge">
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#2564</title>
<path fill="none" stroke="#000000" d="M260.31,-565C275.15,-565 290.4,-565 305.39,-565"/>
<polygon fill="#000000" stroke="#000000" points="305.72,-568.5001 315.72,-565 305.72,-561.5001 305.72,-568.5001"/>
@ -99,15 +110,15 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412 -->
<g id="edge6" class="edge">
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412</title>
<path fill="none" stroke="#000000" d="M232.76,-538.5C256.65,-531.36 282.93,-523.52 308.34,-515.93"/>
<polygon fill="#000000" stroke="#000000" points="309.4534,-519.2503 318.03,-513.03 307.4463,-512.5441 309.4534,-519.2503"/>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node2" class="node open">
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node2"><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">
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4612" xlink:title="ZcashFoundation/zebra#4612&#10;ci: Wait for lightwalletd&#10;image rebuild if it has&#10;changed" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-707 28,-707 28,-639 260,-639 260,-707"/>
<text text-anchor="middle" x="144" y="-691.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="144" y="-676.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
@ -116,17 +127,6 @@
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1791 -->
<g id="node3" class="node closed">
<title>ZcashFoundation/zebra#1791</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1791" xlink:title="ZcashFoundation/zebra#1791&#10;Re&#45;enable `sync_large_che&#10;ckpoints_testnet` test" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="816,-296.5 584,-296.5 584,-243.5 816,-243.5 816,-296.5"/>
<text text-anchor="middle" x="700" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1791</text>
<text text-anchor="middle" x="700" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable `sync_large_che</text>
<text text-anchor="middle" x="700" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">ckpoints_testnet` test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1894 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#1894</title>
@ -171,7 +171,7 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791 -->
<g id="edge3" class="edge">
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791</title>
<path fill="none" stroke="#000000" d="M548.38,-270C556.71,-270 565.14,-270 573.53,-270"/>
<polygon fill="#000000" stroke="#000000" points="573.74,-273.5001 583.74,-270 573.74,-266.5001 573.74,-273.5001"/>

View File

@ -10,29 +10,40 @@
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 818)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-818 828,-818 828,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="576,-235 576,-328 824,-328 824,-235 576,-235"/>
<text text-anchor="middle" x="700" y="-312.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Tech Debt</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="20,-530 20,-623 268,-623 268,-530 20,-530"/>
<text text-anchor="middle" x="144" y="-607.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Documentation</text>
</g>
<g id="clust2" class="cluster">
<g id="clust3" class="cluster">
<title>cluster_4</title>
<polygon fill="none" stroke="#0000ff" points="0,-631 0,-738 288,-738 288,-631 0,-631"/>
<text text-anchor="middle" x="144" y="-722.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="576,-235 576,-328 824,-328 824,-235 576,-235"/>
<text text-anchor="middle" x="700" y="-312.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Tech Debt</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="20,0 20,-437 556,-437 556,0 20,0"/>
<text text-anchor="middle" x="288" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Stable Release Candidate</text>
</g>
<!-- ZcashFoundation/zebra#1791 -->
<g id="node1" class="node closed">
<title>ZcashFoundation/zebra#1791</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1791" xlink:title="ZcashFoundation/zebra#1791&#10;Re&#45;enable `sync_large_che&#10;ckpoints_testnet` test" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="816,-296.5 584,-296.5 584,-243.5 816,-243.5 816,-296.5"/>
<text text-anchor="middle" x="700" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1791</text>
<text text-anchor="middle" x="700" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable `sync_large_che</text>
<text text-anchor="middle" x="700" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">ckpoints_testnet` test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node1" class="node open">
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Work out how to release&#10;Zebra binaries" target="_blank">
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Work out how to release&#10;Zebra binaries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-591.5 28,-591.5 28,-538.5 260,-538.5 260,-591.5"/>
<text text-anchor="middle" x="144" y="-576.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="144" y="-561.3" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
@ -51,7 +62,7 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755 -->
<g id="edge4" class="edge">
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M249.48,-591.51C271.46,-597 294.48,-602.71 316,-608 324.72,-610.14 333.81,-612.36 342.89,-614.57"/>
<polygon fill="#000000" stroke="#000000" points="342.1864,-618.0008 352.73,-616.96 343.8386,-611.1986 342.1864,-618.0008"/>
@ -69,7 +80,7 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#2564 -->
<g id="edge5" class="edge">
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#2564</title>
<path fill="none" stroke="#000000" d="M260.31,-565C275.15,-565 290.4,-565 305.39,-565"/>
<polygon fill="#000000" stroke="#000000" points="305.72,-568.5001 315.72,-565 305.72,-561.5001 305.72,-568.5001"/>
@ -87,15 +98,15 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412 -->
<g id="edge6" class="edge">
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412</title>
<path fill="none" stroke="#000000" d="M232.76,-538.5C256.65,-531.36 282.93,-523.52 308.34,-515.93"/>
<polygon fill="#000000" stroke="#000000" points="309.4534,-519.2503 318.03,-513.03 307.4463,-512.5441 309.4534,-519.2503"/>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node2" class="node open">
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node2"><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">
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4612" xlink:title="ZcashFoundation/zebra#4612&#10;ci: Wait for lightwalletd&#10;image rebuild if it has&#10;changed" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="260,-707 28,-707 28,-639 260,-639 260,-707"/>
<text text-anchor="middle" x="144" y="-691.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="144" y="-676.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
@ -104,17 +115,6 @@
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1791 -->
<g id="node3" class="node closed">
<title>ZcashFoundation/zebra#1791</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1791" xlink:title="ZcashFoundation/zebra#1791&#10;Re&#45;enable `sync_large_che&#10;ckpoints_testnet` test" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="816,-296.5 584,-296.5 584,-243.5 816,-243.5 816,-296.5"/>
<text text-anchor="middle" x="700" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1791</text>
<text text-anchor="middle" x="700" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable `sync_large_che</text>
<text text-anchor="middle" x="700" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">ckpoints_testnet` test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1894 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#1894</title>
@ -159,7 +159,7 @@
</g>
</g>
<!-- ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791 -->
<g id="edge3" class="edge">
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791</title>
<path fill="none" stroke="#000000" d="M548.38,-270C556.71,-270 565.14,-270 573.53,-270"/>
<polygon fill="#000000" stroke="#000000" points="573.74,-273.5001 583.74,-270 573.74,-266.5001 573.74,-273.5001"/>

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB