mirror of https://github.com/zcash/developers.git
1253 lines
84 KiB
HTML
1253 lines
84 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Zcash tfl DAG</title>
|
|
|
|
<!-- Pan/zoom SVGs -->
|
|
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
|
|
|
|
<link rel="stylesheet" href="zcash-dag.css">
|
|
<style>
|
|
@media (prefers-color-scheme: dark) {
|
|
body {
|
|
/* Material dark theme surface colour */
|
|
background-color: #121212;
|
|
}
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="dag"><svg width="5295pt" height="991pt"
|
|
viewBox="0.00 0.00 5295.00 991.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 987)">
|
|
<polygon fill="white" stroke="transparent" points="-4,4 -4,-987 5291,-987 5291,4 -4,4"/>
|
|
<g id="clust1" class="cluster">
|
|
<title>cluster_0</title>
|
|
<polygon fill="none" stroke="blue" points="1892,-473 1892,-929 3032,-929 3032,-473 1892,-473"/>
|
|
<text text-anchor="middle" x="2462" y="-913.8" font-family="Times,serif" font-size="14.00">Design and Implementation Phase 4</text>
|
|
</g>
|
|
<g id="clust2" class="cluster">
|
|
<title>cluster_4</title>
|
|
<polygon fill="none" stroke="blue" points="1690.5,-297 1690.5,-430 2102,-430 2102,-297 1690.5,-297"/>
|
|
<text text-anchor="middle" x="1896.2" y="-414.8" font-family="Times,serif" font-size="14.00">Prototype Phase 1</text>
|
|
</g>
|
|
<g id="clust3" class="cluster">
|
|
<title>cluster_3</title>
|
|
<polygon fill="none" stroke="blue" points="243.5,0 243.5,-337 951.5,-337 951.5,0 243.5,0"/>
|
|
<text text-anchor="middle" x="597.5" y="-321.8" font-family="Times,serif" font-size="14.00">Design Phase 2 - Integrated Crosslink</text>
|
|
</g>
|
|
<g id="clust4" class="cluster">
|
|
<title>cluster_1</title>
|
|
<polygon fill="none" stroke="blue" points="0,-345 0,-650 955,-650 955,-345 0,-345"/>
|
|
<text text-anchor="middle" x="477.5" y="-634.8" font-family="Times,serif" font-size="14.00">Implementation Phase 1: Simulation Codebase</text>
|
|
</g>
|
|
<g id="clust5" class="cluster">
|
|
<title>cluster_2</title>
|
|
<polygon fill="none" stroke="blue" points="743,-658 743,-983 1872,-983 1872,-658 743,-658"/>
|
|
<text text-anchor="middle" x="1307.5" y="-967.8" font-family="Times,serif" font-size="14.00">Design and Implementation Phase 3</text>
|
|
</g>
|
|
<g id="clust6" class="cluster">
|
|
<title>cluster_5</title>
|
|
<polygon fill="none" stroke="blue" points="1915.5,-173 1915.5,-280 2337,-280 2337,-173 1915.5,-173"/>
|
|
<text text-anchor="middle" x="2126.2" y="-264.8" font-family="Times,serif" font-size="14.00">Prototype Phase 2</text>
|
|
</g>
|
|
<!-- ECC/tfl-book#42 -->
|
|
<g id="node1" class="node open">
|
|
<title>ECC/tfl-book#42</title>
|
|
<g id="a_node1"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/42" xlink:title="ECC/tfl-book#42 Does Snap-and-Chat design split the minimum cost of attack for specific known attacks?" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2115.5,-897.5 1902.5,-897.5 1902.5,-814.5 2115.5,-814.5 2115.5,-897.5"/>
|
|
<text text-anchor="middle" x="2009" y="-882.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#42</text>
|
|
<text text-anchor="middle" x="2009" y="-867.3" font-family="Times,serif" font-size="14.00">Does Snap-and-Chat design</text>
|
|
<text text-anchor="middle" x="2009" y="-852.3" font-family="Times,serif" font-size="14.00">split the minimum cost of</text>
|
|
<text text-anchor="middle" x="2009" y="-837.3" font-family="Times,serif" font-size="14.00">attack for specific known</text>
|
|
<text text-anchor="middle" x="2009" y="-822.3" font-family="Times,serif" font-size="14.00">attacks?</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#49 -->
|
|
<g id="node2" class="node open">
|
|
<title>ECC/tfl-book#49</title>
|
|
<g id="a_node2"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/49" xlink:title="ECC/tfl-book#49 Clarify our "weakest link" security concerns in precise questions." target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2334,-789 2154,-789 2154,-721 2334,-721 2334,-789"/>
|
|
<text text-anchor="middle" x="2244" y="-773.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#49</text>
|
|
<text text-anchor="middle" x="2244" y="-758.8" font-family="Times,serif" font-size="14.00">Clarify our "weakest</text>
|
|
<text text-anchor="middle" x="2244" y="-743.8" font-family="Times,serif" font-size="14.00">link" security concerns</text>
|
|
<text text-anchor="middle" x="2244" y="-728.8" font-family="Times,serif" font-size="14.00">in precise questions.</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#42->ECC/tfl-book#49 -->
|
|
<g id="edge1" class="edge">
|
|
<title>ECC/tfl-book#42->ECC/tfl-book#49</title>
|
|
<path fill="none" stroke="black" d="M2105.8,-814.48C2122,-807.43 2138.9,-800.14 2154.9,-793.18"/>
|
|
<polygon fill="black" stroke="black" points="2156.5,-796.3 2164.3,-789.13 2153.73,-789.87 2156.5,-796.3"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#82 -->
|
|
<g id="node3" class="node open">
|
|
<title>ECC/tfl-book#82</title>
|
|
<g id="a_node3"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/82" xlink:title="ECC/tfl-book#82 Analyze Crosslink against our best known combined attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2575,-781 2375,-781 2375,-713 2575,-713 2575,-781"/>
|
|
<text text-anchor="middle" x="2475" y="-765.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#82</text>
|
|
<text text-anchor="middle" x="2475" y="-750.8" font-family="Times,serif" font-size="14.00">Analyze Crosslink against</text>
|
|
<text text-anchor="middle" x="2475" y="-735.8" font-family="Times,serif" font-size="14.00">our best known combined</text>
|
|
<text text-anchor="middle" x="2475" y="-720.8" font-family="Times,serif" font-size="14.00">attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#49->ECC/tfl-book#82 -->
|
|
<g id="edge2" class="edge">
|
|
<title>ECC/tfl-book#49->ECC/tfl-book#82</title>
|
|
<path fill="none" stroke="black" d="M2334.2,-751.88C2344.2,-751.54 2354.4,-751.18 2364.6,-750.82"/>
|
|
<polygon fill="black" stroke="black" points="2364.93,-754.31 2374.8,-750.47 2364.69,-747.32 2364.93,-754.31"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#84 -->
|
|
<g id="node4" class="node open">
|
|
<title>ECC/tfl-book#84</title>
|
|
<g id="a_node4"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/84" xlink:title="ECC/tfl-book#84 Publish a "Design Milestone 4" release" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3024,-690.5 3021,-694.5 3000,-694.5 2997,-690.5 2860,-690.5 2860,-637.5 3024,-637.5 3024,-690.5"/>
|
|
<text text-anchor="middle" x="2942" y="-675.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#84</text>
|
|
<text text-anchor="middle" x="2942" y="-660.3" font-family="Times,serif" font-size="14.00">Publish a "Design</text>
|
|
<text text-anchor="middle" x="2942" y="-645.3" font-family="Times,serif" font-size="14.00">Milestone 4" release</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#82->ECC/tfl-book#84 -->
|
|
<g id="edge3" class="edge">
|
|
<title>ECC/tfl-book#82->ECC/tfl-book#84</title>
|
|
<path fill="none" stroke="black" d="M2575.1,-771C2646.4,-783.62 2743.9,-791.13 2824,-762 2858.9,-749.31 2890.7,-721.14 2912.2,-698.25"/>
|
|
<polygon fill="black" stroke="black" points="2914.96,-700.42 2919.2,-690.71 2909.83,-695.66 2914.96,-700.42"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#7 -->
|
|
<g id="node44" class="node open">
|
|
<title>ECC/zebra-tfl#7</title>
|
|
<g id="a_node44"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/7" xlink:title="ECC/zebra-tfl#7 Prototype sufficient to resolve design issues for Hybrid PoS" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3254,-698 3060,-698 3060,-630 3254,-630 3254,-698"/>
|
|
<text text-anchor="middle" x="3157" y="-682.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#7</text>
|
|
<text text-anchor="middle" x="3157" y="-667.8" font-family="Times,serif" font-size="14.00">Prototype sufficient to</text>
|
|
<text text-anchor="middle" x="3157" y="-652.8" font-family="Times,serif" font-size="14.00">resolve design issues for</text>
|
|
<text text-anchor="middle" x="3157" y="-637.8" font-family="Times,serif" font-size="14.00">Hybrid PoS</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#84->ECC/zebra-tfl#7 -->
|
|
<g id="edge57" class="edge">
|
|
<title>ECC/tfl-book#84->ECC/zebra-tfl#7</title>
|
|
<path fill="none" stroke="black" d="M3024.1,-664C3032.5,-664 3041.1,-664 3049.7,-664"/>
|
|
<polygon fill="black" stroke="black" points="3049.7,-667.5 3059.7,-664 3049.7,-660.5 3049.7,-667.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#47 -->
|
|
<g id="node5" class="node open">
|
|
<title>ECC/tfl-book#47</title>
|
|
<g id="a_node5"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/47" xlink:title="ECC/tfl-book#47 Ebb-and-Flow: what are the impacts of subprotocols sharing resources?" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2102.5,-796.5 1915.5,-796.5 1915.5,-713.5 2102.5,-713.5 2102.5,-796.5"/>
|
|
<text text-anchor="middle" x="2009" y="-781.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#47</text>
|
|
<text text-anchor="middle" x="2009" y="-766.3" font-family="Times,serif" font-size="14.00">Ebb-and-Flow: what are</text>
|
|
<text text-anchor="middle" x="2009" y="-751.3" font-family="Times,serif" font-size="14.00">the impacts of</text>
|
|
<text text-anchor="middle" x="2009" y="-736.3" font-family="Times,serif" font-size="14.00">subprotocols sharing</text>
|
|
<text text-anchor="middle" x="2009" y="-721.3" font-family="Times,serif" font-size="14.00">resources?</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#47->ECC/tfl-book#49 -->
|
|
<g id="edge4" class="edge">
|
|
<title>ECC/tfl-book#47->ECC/tfl-book#49</title>
|
|
<path fill="none" stroke="black" d="M2102.8,-755C2116.2,-755 2130.1,-755 2143.7,-755"/>
|
|
<polygon fill="black" stroke="black" points="2144,-758.5 2154,-755 2144,-751.5 2144,-758.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#48 -->
|
|
<g id="node6" class="node open">
|
|
<title>ECC/tfl-book#48</title>
|
|
<g id="a_node6"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/48" xlink:title="ECC/tfl-book#48 Write Best-Effort / Napkin Math approximation of Min. Cost of Known Attack metric for several attacks." target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2118,-695 1900,-695 1900,-597 2118,-597 2118,-695"/>
|
|
<text text-anchor="middle" x="2009" y="-679.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#48</text>
|
|
<text text-anchor="middle" x="2009" y="-664.8" font-family="Times,serif" font-size="14.00">Write Best-Effort /</text>
|
|
<text text-anchor="middle" x="2009" y="-649.8" font-family="Times,serif" font-size="14.00">Napkin Math approximation</text>
|
|
<text text-anchor="middle" x="2009" y="-634.8" font-family="Times,serif" font-size="14.00">of Min. Cost of Known</text>
|
|
<text text-anchor="middle" x="2009" y="-619.8" font-family="Times,serif" font-size="14.00">Attack metric for several</text>
|
|
<text text-anchor="middle" x="2009" y="-604.8" font-family="Times,serif" font-size="14.00">attacks.</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#48->ECC/tfl-book#49 -->
|
|
<g id="edge5" class="edge">
|
|
<title>ECC/tfl-book#48->ECC/tfl-book#49</title>
|
|
<path fill="none" stroke="black" d="M2114.9,-695.08C2130.3,-702.29 2146,-709.62 2160.9,-716.57"/>
|
|
<polygon fill="black" stroke="black" points="2159.46,-719.76 2170,-720.84 2162.43,-713.42 2159.46,-719.76"/>
|
|
</g>
|
|
<!-- ECC/simtfl#11 -->
|
|
<g id="node7" class="node open">
|
|
<title>ECC/simtfl#11</title>
|
|
<g id="a_node7"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/11" xlink:title="ECC/simtfl#11 Implement combined attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2327.5,-558.5 2160.5,-558.5 2160.5,-505.5 2327.5,-505.5 2327.5,-558.5"/>
|
|
<text text-anchor="middle" x="2244" y="-543.3" font-family="Times,serif" font-size="14.00">ECC/simtfl#11</text>
|
|
<text text-anchor="middle" x="2244" y="-528.3" font-family="Times,serif" font-size="14.00">Implement combined</text>
|
|
<text text-anchor="middle" x="2244" y="-513.3" font-family="Times,serif" font-size="14.00">attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#11->ECC/tfl-book#82 -->
|
|
<g id="edge6" class="edge">
|
|
<title>ECC/simtfl#11->ECC/tfl-book#82</title>
|
|
<path fill="none" stroke="black" d="M2294.9,-558.81C2310,-568.86 2325.6,-581.43 2337,-596 2362.4,-628.6 2343.6,-651.13 2370,-683 2377.3,-691.85 2386.2,-699.81 2395.6,-706.88"/>
|
|
<polygon fill="black" stroke="black" points="2393.91,-709.97 2404.1,-712.85 2397.93,-704.24 2393.91,-709.97"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#70 -->
|
|
<g id="node8" class="node open">
|
|
<title>ECC/tfl-book#70</title>
|
|
<g id="a_node8"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/70" xlink:title="ECC/tfl-book#70 Adapt CometBFT (formerly TendermintBFT) into Crosslink" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2580,-563 2370,-563 2370,-495 2580,-495 2580,-563"/>
|
|
<text text-anchor="middle" x="2475" y="-547.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#70</text>
|
|
<text text-anchor="middle" x="2475" y="-532.8" font-family="Times,serif" font-size="14.00">Adapt CometBFT (formerly</text>
|
|
<text text-anchor="middle" x="2475" y="-517.8" font-family="Times,serif" font-size="14.00">TendermintBFT) into</text>
|
|
<text text-anchor="middle" x="2475" y="-502.8" font-family="Times,serif" font-size="14.00">Crosslink</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#11->ECC/tfl-book#70 -->
|
|
<g id="edge7" class="edge">
|
|
<title>ECC/simtfl#11->ECC/tfl-book#70</title>
|
|
<path fill="none" stroke="black" d="M2327.7,-530.92C2338.1,-530.78 2348.8,-530.64 2359.6,-530.5"/>
|
|
<polygon fill="black" stroke="black" points="2359.95,-534 2369.9,-530.36 2359.85,-527 2359.95,-534"/>
|
|
</g>
|
|
<!-- ECC/simtfl#17 -->
|
|
<g id="node9" class="node open">
|
|
<title>ECC/simtfl#17</title>
|
|
<g id="a_node9"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/17" xlink:title="ECC/simtfl#17 simtfl 1.0.0 (corresponding to Design and Implementation Phase 4)" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2824,-752.5 2616,-752.5 2616,-669.5 2824,-669.5 2824,-752.5"/>
|
|
<text text-anchor="middle" x="2720" y="-737.3" font-family="Times,serif" font-size="14.00">ECC/simtfl#17</text>
|
|
<text text-anchor="middle" x="2720" y="-722.3" font-family="Times,serif" font-size="14.00">simtfl 1.0.0</text>
|
|
<text text-anchor="middle" x="2720" y="-707.3" font-family="Times,serif" font-size="14.00">(corresponding to Design</text>
|
|
<text text-anchor="middle" x="2720" y="-692.3" font-family="Times,serif" font-size="14.00">and Implementation Phase</text>
|
|
<text text-anchor="middle" x="2720" y="-677.3" font-family="Times,serif" font-size="14.00">4)</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#11->ECC/simtfl#17 -->
|
|
<g id="edge8" class="edge">
|
|
<title>ECC/simtfl#11->ECC/simtfl#17</title>
|
|
<path fill="none" stroke="black" d="M2292.5,-558.66C2308,-568.92 2324.4,-581.66 2337,-596 2358.1,-620.07 2344,-641.41 2370,-660 2407,-686.39 2518.3,-699.32 2605.4,-705.53"/>
|
|
<polygon fill="black" stroke="black" points="2605.38,-709.04 2615.6,-706.24 2605.87,-702.05 2605.38,-709.04"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#5 -->
|
|
<g id="node10" class="node open">
|
|
<title>ECC/tfl-book#5</title>
|
|
<g id="a_node10"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/5" xlink:title="ECC/tfl-book#5 Prototype CometBFT (formerly TendermintBFT) as the finality subprotocol." target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2822.5,-564.5 2617.5,-564.5 2617.5,-481.5 2822.5,-481.5 2822.5,-564.5"/>
|
|
<text text-anchor="middle" x="2720" y="-549.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#5</text>
|
|
<text text-anchor="middle" x="2720" y="-534.3" font-family="Times,serif" font-size="14.00">Prototype CometBFT</text>
|
|
<text text-anchor="middle" x="2720" y="-519.3" font-family="Times,serif" font-size="14.00">(formerly TendermintBFT)</text>
|
|
<text text-anchor="middle" x="2720" y="-504.3" font-family="Times,serif" font-size="14.00">as the finality</text>
|
|
<text text-anchor="middle" x="2720" y="-489.3" font-family="Times,serif" font-size="14.00">subprotocol.</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#70->ECC/tfl-book#5 -->
|
|
<g id="edge9" class="edge">
|
|
<title>ECC/tfl-book#70->ECC/tfl-book#5</title>
|
|
<path fill="none" stroke="black" d="M2580.1,-526.43C2589.1,-526.21 2598.2,-525.98 2607.3,-525.76"/>
|
|
<polygon fill="black" stroke="black" points="2607.49,-529.26 2617.4,-525.51 2607.32,-522.26 2607.49,-529.26"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#116 -->
|
|
<g id="node11" class="node open">
|
|
<title>ECC/tfl-book#116</title>
|
|
<g id="a_node11"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/116" xlink:title="ECC/tfl-book#116 Evaluate PoS subprotocol candidates and their Crosslink adaptations" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2820,-651 2620,-651 2620,-583 2820,-583 2820,-651"/>
|
|
<text text-anchor="middle" x="2720" y="-635.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#116</text>
|
|
<text text-anchor="middle" x="2720" y="-620.8" font-family="Times,serif" font-size="14.00">Evaluate PoS subprotocol</text>
|
|
<text text-anchor="middle" x="2720" y="-605.8" font-family="Times,serif" font-size="14.00">candidates and their</text>
|
|
<text text-anchor="middle" x="2720" y="-590.8" font-family="Times,serif" font-size="14.00">Crosslink adaptations</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#70->ECC/tfl-book#116 -->
|
|
<g id="edge10" class="edge">
|
|
<title>ECC/tfl-book#70->ECC/tfl-book#116</title>
|
|
<path fill="none" stroke="black" d="M2570,-563.02C2584.7,-568.38 2600.1,-573.94 2615.1,-579.38"/>
|
|
<polygon fill="black" stroke="black" points="2614.31,-582.81 2624.9,-582.92 2616.68,-576.23 2614.31,-582.81"/>
|
|
</g>
|
|
<!-- ECC/simtfl#17->ECC/tfl-book#84 -->
|
|
<g id="edge11" class="edge">
|
|
<title>ECC/simtfl#17->ECC/tfl-book#84</title>
|
|
<path fill="none" stroke="black" d="M2824.2,-688.94C2832.8,-687.11 2841.5,-685.26 2849.9,-683.45"/>
|
|
<polygon fill="black" stroke="black" points="2850.75,-686.85 2859.8,-681.34 2849.29,-680 2850.75,-686.85"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#5->ECC/tfl-book#84 -->
|
|
<g id="edge12" class="edge">
|
|
<title>ECC/tfl-book#5->ECC/tfl-book#84</title>
|
|
<path fill="none" stroke="black" d="M2807.9,-564.5C2813.4,-567.6 2818.8,-570.78 2824,-574 2851.3,-591.03 2880,-613.01 2902.1,-630.99"/>
|
|
<polygon fill="black" stroke="black" points="2899.95,-633.76 2909.9,-637.41 2904.4,-628.35 2899.95,-633.76"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#116->ECC/tfl-book#84 -->
|
|
<g id="edge13" class="edge">
|
|
<title>ECC/tfl-book#116->ECC/tfl-book#84</title>
|
|
<path fill="none" stroke="black" d="M2820.1,-638.16C2830.1,-640.3 2840.2,-642.46 2850.1,-644.58"/>
|
|
<polygon fill="black" stroke="black" points="2849.39,-648.01 2859.9,-646.68 2850.86,-641.16 2849.39,-648.01"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#39 -->
|
|
<g id="node12" class="node open">
|
|
<title>ECC/tfl-book#39</title>
|
|
<g id="a_node12"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/39" xlink:title="ECC/tfl-book#39 Analyze Attack Scenario: Compromised Finality Oracle + Miner only finalizes that miner's blocks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2106,-579 1912,-579 1912,-481 2106,-481 2106,-579"/>
|
|
<text text-anchor="middle" x="2009" y="-563.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#39</text>
|
|
<text text-anchor="middle" x="2009" y="-548.8" font-family="Times,serif" font-size="14.00">Analyze Attack Scenario:</text>
|
|
<text text-anchor="middle" x="2009" y="-533.8" font-family="Times,serif" font-size="14.00">Compromised Finality</text>
|
|
<text text-anchor="middle" x="2009" y="-518.8" font-family="Times,serif" font-size="14.00">Oracle + Miner only</text>
|
|
<text text-anchor="middle" x="2009" y="-503.8" font-family="Times,serif" font-size="14.00">finalizes that miner's</text>
|
|
<text text-anchor="middle" x="2009" y="-488.8" font-family="Times,serif" font-size="14.00">blocks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#39->ECC/simtfl#11 -->
|
|
<g id="edge14" class="edge">
|
|
<title>ECC/tfl-book#39->ECC/simtfl#11</title>
|
|
<path fill="none" stroke="black" d="M2106.1,-530.83C2120.8,-530.95 2135.9,-531.08 2150.5,-531.21"/>
|
|
<polygon fill="black" stroke="black" points="2150.47,-534.71 2160.5,-531.29 2150.53,-527.71 2150.47,-534.71"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#111 -->
|
|
<g id="node13" class="node open">
|
|
<title>ECC/tfl-book#111</title>
|
|
<g id="a_node13"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/111" xlink:title="ECC/tfl-book#111 How can HotStuff be described in Crosslink's BFT model?" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="2568.5,-651 2381.5,-651 2381.5,-583 2568.5,-583 2568.5,-651"/>
|
|
<text text-anchor="middle" x="2475" y="-635.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#111</text>
|
|
<text text-anchor="middle" x="2475" y="-620.8" font-family="Times,serif" font-size="14.00">How can HotStuff be</text>
|
|
<text text-anchor="middle" x="2475" y="-605.8" font-family="Times,serif" font-size="14.00">described in Crosslink's</text>
|
|
<text text-anchor="middle" x="2475" y="-590.8" font-family="Times,serif" font-size="14.00">BFT model?</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#111->ECC/tfl-book#116 -->
|
|
<g id="edge15" class="edge">
|
|
<title>ECC/tfl-book#111->ECC/tfl-book#116</title>
|
|
<path fill="none" stroke="black" d="M2568.6,-617C2581.9,-617 2595.8,-617 2609.4,-617"/>
|
|
<polygon fill="black" stroke="black" points="2609.8,-620.5 2619.8,-617 2609.8,-613.5 2609.8,-620.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#132 -->
|
|
<g id="node14" class="node open">
|
|
<title>ECC/tfl-book#132</title>
|
|
<g id="a_node14"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/132" xlink:title="ECC/tfl-book#132 Does the issue about block chains not being one-shot invalidate the liveness analysis for Snap-and-Chat?" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="2334,-703 2154,-703 2154,-605 2334,-605 2334,-703"/>
|
|
<text text-anchor="middle" x="2244" y="-687.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#132</text>
|
|
<text text-anchor="middle" x="2244" y="-672.8" font-family="Times,serif" font-size="14.00">Does the issue about</text>
|
|
<text text-anchor="middle" x="2244" y="-657.8" font-family="Times,serif" font-size="14.00">block chains not being</text>
|
|
<text text-anchor="middle" x="2244" y="-642.8" font-family="Times,serif" font-size="14.00">one-shot invalidate the</text>
|
|
<text text-anchor="middle" x="2244" y="-627.8" font-family="Times,serif" font-size="14.00">liveness analysis for</text>
|
|
<text text-anchor="middle" x="2244" y="-612.8" font-family="Times,serif" font-size="14.00">Snap-and-Chat?</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#132->ECC/tfl-book#82 -->
|
|
<g id="edge16" class="edge">
|
|
<title>ECC/tfl-book#132->ECC/tfl-book#82</title>
|
|
<path fill="none" stroke="black" d="M2334.2,-690.22C2349.4,-696.39 2365.2,-702.81 2380.5,-709.02"/>
|
|
<polygon fill="black" stroke="black" points="2379.32,-712.32 2389.9,-712.86 2381.97,-705.84 2379.32,-712.32"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#3 -->
|
|
<g id="node15" class="node open">
|
|
<title>ECC/zebra-tfl#3</title>
|
|
<g id="a_node15"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/3" xlink:title="ECC/zebra-tfl#3 Add test harness" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="1835.5,-399 1698.5,-399 1698.5,-361 1835.5,-361 1835.5,-399"/>
|
|
<text text-anchor="middle" x="1767" y="-383.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#3</text>
|
|
<text text-anchor="middle" x="1767" y="-368.8" font-family="Times,serif" font-size="14.00">Add test harness</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#1 -->
|
|
<g id="node16" class="node open">
|
|
<title>ECC/zebra-tfl#1</title>
|
|
<g id="a_node16"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/1" xlink:title="ECC/zebra-tfl#1 Prototype release 0.1" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2094,-343 1924,-343 1924,-305 2094,-305 2094,-343"/>
|
|
<text text-anchor="middle" x="2009" y="-327.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#1</text>
|
|
<text text-anchor="middle" x="2009" y="-312.8" font-family="Times,serif" font-size="14.00">Prototype release 0.1</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#3->ECC/zebra-tfl#1 -->
|
|
<g id="edge17" class="edge">
|
|
<title>ECC/zebra-tfl#3->ECC/zebra-tfl#1</title>
|
|
<path fill="none" stroke="black" d="M1835.8,-364.18C1860.9,-358.33 1889.7,-351.6 1916.5,-345.35"/>
|
|
<polygon fill="black" stroke="black" points="1917.36,-348.74 1926.3,-343.06 1915.77,-341.93 1917.36,-348.74"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#4 -->
|
|
<g id="node42" class="node open">
|
|
<title>ECC/zebra-tfl#4</title>
|
|
<g id="a_node42"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/4" xlink:title="ECC/zebra-tfl#4 Prototype release 0.x (for phase 2)" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="2329,-248.5 2159,-248.5 2159,-195.5 2329,-195.5 2329,-248.5"/>
|
|
<text text-anchor="middle" x="2244" y="-233.3" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#4</text>
|
|
<text text-anchor="middle" x="2244" y="-218.3" font-family="Times,serif" font-size="14.00">Prototype release 0.x</text>
|
|
<text text-anchor="middle" x="2244" y="-203.3" font-family="Times,serif" font-size="14.00">(for phase 2)</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#1->ECC/zebra-tfl#4 -->
|
|
<g id="edge46" class="edge">
|
|
<title>ECC/zebra-tfl#1->ECC/zebra-tfl#4</title>
|
|
<path fill="none" stroke="black" d="M2064.8,-304.97C2082,-298.67 2100.9,-291.37 2118,-284 2139.7,-274.63 2163,-263.4 2183.6,-253.08"/>
|
|
<polygon fill="black" stroke="black" points="2185.16,-256.21 2192.5,-248.57 2182,-249.97 2185.16,-256.21"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#6 -->
|
|
<g id="node17" class="node open">
|
|
<title>ECC/zebra-tfl#6</title>
|
|
<g id="a_node17"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/6" xlink:title="ECC/zebra-tfl#6 Create a testnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="1833.5,-343 1700.5,-343 1700.5,-305 1833.5,-305 1833.5,-343"/>
|
|
<text text-anchor="middle" x="1767" y="-327.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#6</text>
|
|
<text text-anchor="middle" x="1767" y="-312.8" font-family="Times,serif" font-size="14.00">Create a testnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#6->ECC/zebra-tfl#1 -->
|
|
<g id="edge18" class="edge">
|
|
<title>ECC/zebra-tfl#6->ECC/zebra-tfl#1</title>
|
|
<path fill="none" stroke="black" d="M1833.6,-324C1858.3,-324 1887,-324 1913.8,-324"/>
|
|
<polygon fill="black" stroke="black" points="1914,-327.5 1924,-324 1914,-320.5 1914,-327.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#86 -->
|
|
<g id="node18" class="node open">
|
|
<title>ECC/tfl-book#86</title>
|
|
<g id="a_node18"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/86" xlink:title="ECC/tfl-book#86 Define macros so that we can easily use Crosslink notation in the book" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="448.5,-133 251.5,-133 251.5,-65 448.5,-65 448.5,-133"/>
|
|
<text text-anchor="middle" x="350" y="-117.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#86</text>
|
|
<text text-anchor="middle" x="350" y="-102.8" font-family="Times,serif" font-size="14.00">Define macros so that we</text>
|
|
<text text-anchor="middle" x="350" y="-87.8" font-family="Times,serif" font-size="14.00">can easily use Crosslink</text>
|
|
<text text-anchor="middle" x="350" y="-72.8" font-family="Times,serif" font-size="14.00">notation in the book</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#142 -->
|
|
<g id="node19" class="node open">
|
|
<title>ECC/tfl-book#142</title>
|
|
<g id="a_node19"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/142" xlink:title="ECC/tfl-book#142 Write up Crosslink 2" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="685,-118 522,-118 522,-80 685,-80 685,-118"/>
|
|
<text text-anchor="middle" x="603.5" y="-102.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#142</text>
|
|
<text text-anchor="middle" x="603.5" y="-87.8" font-family="Times,serif" font-size="14.00">Write up Crosslink 2</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#86->ECC/tfl-book#142 -->
|
|
<g id="edge19" class="edge">
|
|
<title>ECC/tfl-book#86->ECC/tfl-book#142</title>
|
|
<path fill="none" stroke="black" d="M448.6,-99C469.27,-99 491.01,-99 511.43,-99"/>
|
|
<polygon fill="black" stroke="black" points="511.65,-102.5 521.65,-99 511.65,-95.5 511.65,-102.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#99 -->
|
|
<g id="node20" class="node open">
|
|
<title>ECC/tfl-book#99</title>
|
|
<g id="a_node20"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/99" xlink:title="ECC/tfl-book#99 Design Milestone 2 - tfl- book v0.2.0 - Integrated Crosslink" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="943.5,-306 940.5,-310 919.5,-310 916.5,-306 755.5,-306 755.5,-238 943.5,-238 943.5,-306"/>
|
|
<text text-anchor="middle" x="849.5" y="-290.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#99</text>
|
|
<text text-anchor="middle" x="849.5" y="-275.8" font-family="Times,serif" font-size="14.00">Design Milestone 2 - tfl-</text>
|
|
<text text-anchor="middle" x="849.5" y="-260.8" font-family="Times,serif" font-size="14.00">book v0.2.0 - Integrated</text>
|
|
<text text-anchor="middle" x="849.5" y="-245.8" font-family="Times,serif" font-size="14.00">Crosslink</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#142->ECC/tfl-book#99 -->
|
|
<g id="edge20" class="edge">
|
|
<title>ECC/tfl-book#142->ECC/tfl-book#99</title>
|
|
<path fill="none" stroke="black" d="M685.18,-113.57C695.6,-117.12 705.82,-121.53 715,-127 758.17,-152.73 795.75,-196.66 819.94,-229.44"/>
|
|
<polygon fill="black" stroke="black" points="817.4,-231.9 826.1,-237.95 823.07,-227.8 817.4,-231.9"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#71 -->
|
|
<g id="node33" class="node open">
|
|
<title>ECC/tfl-book#71</title>
|
|
<g id="a_node33"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/71" xlink:title="ECC/tfl-book#71 Analyze Crosslink against a set of known PoS attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="1184,-734 984,-734 984,-666 1184,-666 1184,-734"/>
|
|
<text text-anchor="middle" x="1084" y="-718.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#71</text>
|
|
<text text-anchor="middle" x="1084" y="-703.8" font-family="Times,serif" font-size="14.00">Analyze Crosslink against</text>
|
|
<text text-anchor="middle" x="1084" y="-688.8" font-family="Times,serif" font-size="14.00">a set of known PoS</text>
|
|
<text text-anchor="middle" x="1084" y="-673.8" font-family="Times,serif" font-size="14.00">attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#99->ECC/tfl-book#71 -->
|
|
<g id="edge49" class="edge">
|
|
<title>ECC/tfl-book#99->ECC/tfl-book#71</title>
|
|
<path fill="none" stroke="black" d="M916.36,-306.14C930.57,-315.89 944.47,-327.57 955,-341 1030.9,-437.79 1064,-583.26 1076.5,-655.72"/>
|
|
<polygon fill="black" stroke="black" points="1073.09,-656.58 1078.2,-665.86 1080,-655.42 1073.09,-656.58"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#72 -->
|
|
<g id="node38" class="node open">
|
|
<title>ECC/tfl-book#72</title>
|
|
<g id="a_node38"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/72" xlink:title="ECC/tfl-book#72 Analyze Crosslink against a set of known PoW attacks." target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="1184,-820 984,-820 984,-752 1184,-752 1184,-820"/>
|
|
<text text-anchor="middle" x="1084" y="-804.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#72</text>
|
|
<text text-anchor="middle" x="1084" y="-789.8" font-family="Times,serif" font-size="14.00">Analyze Crosslink against</text>
|
|
<text text-anchor="middle" x="1084" y="-774.8" font-family="Times,serif" font-size="14.00">a set of known PoW</text>
|
|
<text text-anchor="middle" x="1084" y="-759.8" font-family="Times,serif" font-size="14.00">attacks.</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#99->ECC/tfl-book#72 -->
|
|
<g id="edge50" class="edge">
|
|
<title>ECC/tfl-book#99->ECC/tfl-book#72</title>
|
|
<path fill="none" stroke="black" d="M921.8,-306.18C934.88,-315.65 946.93,-327.21 955,-341 1000.2,-418.29 932.21,-669.92 984,-743 984.28,-743.4 984.57,-743.8 984.87,-744.19"/>
|
|
<polygon fill="black" stroke="black" points="982.43,-746.71 991.64,-751.94 987.7,-742.11 982.43,-746.71"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#99->ECC/zebra-tfl#4 -->
|
|
<g id="edge48" class="edge">
|
|
<title>ECC/tfl-book#99->ECC/zebra-tfl#4</title>
|
|
<path fill="none" stroke="black" d="M943.77,-273.59C1037.8,-275.05 1187.3,-277 1316.5,-277 1316.5,-277 1316.5,-277 1768,-277 1923.8,-277 1964.4,-283.94 2118,-258 2128.7,-256.2 2139.7,-253.82 2150.6,-251.13"/>
|
|
<polygon fill="black" stroke="black" points="2151.77,-254.44 2160.6,-248.58 2150.05,-247.66 2151.77,-254.44"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#77 -->
|
|
<g id="node21" class="node open">
|
|
<title>ECC/tfl-book#77</title>
|
|
<g id="a_node21"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/77" xlink:title="ECC/tfl-book#77 Add "Avoided Terms" section in "Terminology"" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="699.5,-61.5 507.5,-61.5 507.5,-8.5 699.5,-8.5 699.5,-61.5"/>
|
|
<text text-anchor="middle" x="603.5" y="-46.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#77</text>
|
|
<text text-anchor="middle" x="603.5" y="-31.3" font-family="Times,serif" font-size="14.00">Add "Avoided Terms"</text>
|
|
<text text-anchor="middle" x="603.5" y="-16.3" font-family="Times,serif" font-size="14.00">section in "Terminology"</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#77->ECC/tfl-book#99 -->
|
|
<g id="edge21" class="edge">
|
|
<title>ECC/tfl-book#77->ECC/tfl-book#99</title>
|
|
<path fill="none" stroke="black" d="M699.53,-61.07C704.97,-64.04 710.18,-67.34 715,-71 769.5,-112.41 808.81,-182.83 830.12,-228.37"/>
|
|
<polygon fill="black" stroke="black" points="827.04,-230.06 834.39,-237.69 833.41,-227.14 827.04,-230.06"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#25 -->
|
|
<g id="node22" class="node open">
|
|
<title>ECC/tfl-book#25</title>
|
|
<g id="a_node22"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/25" xlink:title="ECC/tfl-book#25 Add style guide / textual conventions." target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="699,-305.5 508,-305.5 508,-252.5 699,-252.5 699,-305.5"/>
|
|
<text text-anchor="middle" x="603.5" y="-290.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#25</text>
|
|
<text text-anchor="middle" x="603.5" y="-275.3" font-family="Times,serif" font-size="14.00">Add style guide / textual</text>
|
|
<text text-anchor="middle" x="603.5" y="-260.3" font-family="Times,serif" font-size="14.00">conventions.</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#25->ECC/tfl-book#99 -->
|
|
<g id="edge22" class="edge">
|
|
<title>ECC/tfl-book#25->ECC/tfl-book#99</title>
|
|
<path fill="none" stroke="black" d="M699.19,-276.28C714.35,-275.85 730.11,-275.4 745.46,-274.96"/>
|
|
<polygon fill="black" stroke="black" points="745.58,-278.46 755.47,-274.67 745.37,-271.46 745.58,-278.46"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#119 -->
|
|
<g id="node23" class="node open">
|
|
<title>ECC/tfl-book#119</title>
|
|
<g id="a_node23"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/119" xlink:title="ECC/tfl-book#119 Clarify the distinctions between pure PoW, the PoW subprotocol, NU6, and fork-choice vs all of transaction semantics" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="712,-234 495,-234 495,-136 712,-136 712,-234"/>
|
|
<text text-anchor="middle" x="603.5" y="-218.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#119</text>
|
|
<text text-anchor="middle" x="603.5" y="-203.8" font-family="Times,serif" font-size="14.00">Clarify the distinctions</text>
|
|
<text text-anchor="middle" x="603.5" y="-188.8" font-family="Times,serif" font-size="14.00">between pure PoW, the PoW</text>
|
|
<text text-anchor="middle" x="603.5" y="-173.8" font-family="Times,serif" font-size="14.00">subprotocol, NU6, and</text>
|
|
<text text-anchor="middle" x="603.5" y="-158.8" font-family="Times,serif" font-size="14.00">fork-choice vs all of</text>
|
|
<text text-anchor="middle" x="603.5" y="-143.8" font-family="Times,serif" font-size="14.00">transaction semantics</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#119->ECC/tfl-book#99 -->
|
|
<g id="edge23" class="edge">
|
|
<title>ECC/tfl-book#119->ECC/tfl-book#99</title>
|
|
<path fill="none" stroke="black" d="M712.23,-223.41C723.39,-227.39 734.71,-231.43 745.81,-235.38"/>
|
|
<polygon fill="black" stroke="black" points="744.91,-238.77 755.5,-238.84 747.26,-232.18 744.91,-238.77"/>
|
|
</g>
|
|
<!-- ECC/simtfl#7 -->
|
|
<g id="node24" class="node open">
|
|
<title>ECC/simtfl#7</title>
|
|
<g id="a_node24"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/7" xlink:title="ECC/simtfl#7 Define BC abstractions and PoW (honest behaviour only)" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="456,-533 244,-533 244,-465 456,-465 456,-533"/>
|
|
<text text-anchor="middle" x="350" y="-517.8" font-family="Times,serif" font-size="14.00">ECC/simtfl#7</text>
|
|
<text text-anchor="middle" x="350" y="-502.8" font-family="Times,serif" font-size="14.00">Define BC abstractions</text>
|
|
<text text-anchor="middle" x="350" y="-487.8" font-family="Times,serif" font-size="14.00">and PoW (honest behaviour</text>
|
|
<text text-anchor="middle" x="350" y="-472.8" font-family="Times,serif" font-size="14.00">only)</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#8 -->
|
|
<g id="node25" class="node open">
|
|
<title>ECC/simtfl#8</title>
|
|
<g id="a_node25"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/8" xlink:title="ECC/simtfl#8 Define Crosslink (honest behaviour only)" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="699,-501.5 508,-501.5 508,-448.5 699,-448.5 699,-501.5"/>
|
|
<text text-anchor="middle" x="603.5" y="-486.3" font-family="Times,serif" font-size="14.00">ECC/simtfl#8</text>
|
|
<text text-anchor="middle" x="603.5" y="-471.3" font-family="Times,serif" font-size="14.00">Define Crosslink (honest</text>
|
|
<text text-anchor="middle" x="603.5" y="-456.3" font-family="Times,serif" font-size="14.00">behaviour only)</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#7->ECC/simtfl#8 -->
|
|
<g id="edge24" class="edge">
|
|
<title>ECC/simtfl#7->ECC/simtfl#8</title>
|
|
<path fill="none" stroke="black" d="M456.2,-488.96C469.82,-487.66 483.78,-486.33 497.4,-485.03"/>
|
|
<polygon fill="black" stroke="black" points="498.12,-488.48 507.74,-484.04 497.45,-481.51 498.12,-488.48"/>
|
|
</g>
|
|
<!-- ECC/simtfl#9 -->
|
|
<g id="node26" class="node open">
|
|
<title>ECC/simtfl#9</title>
|
|
<g id="a_node26"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/9" xlink:title="ECC/simtfl#9 Implement some known PoW attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="715,-572.5 492,-572.5 492,-519.5 715,-519.5 715,-572.5"/>
|
|
<text text-anchor="middle" x="603.5" y="-557.3" font-family="Times,serif" font-size="14.00">ECC/simtfl#9</text>
|
|
<text text-anchor="middle" x="603.5" y="-542.3" font-family="Times,serif" font-size="14.00">Implement some known PoW</text>
|
|
<text text-anchor="middle" x="603.5" y="-527.3" font-family="Times,serif" font-size="14.00">attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#7->ECC/simtfl#9 -->
|
|
<g id="edge25" class="edge">
|
|
<title>ECC/simtfl#7->ECC/simtfl#9</title>
|
|
<path fill="none" stroke="black" d="M456.2,-518.66C464.62,-520.23 473.16,-521.83 481.67,-523.42"/>
|
|
<polygon fill="black" stroke="black" points="481.18,-526.89 491.65,-525.28 482.46,-520.01 481.18,-526.89"/>
|
|
</g>
|
|
<!-- ECC/simtfl#14 -->
|
|
<g id="node27" class="node open">
|
|
<title>ECC/simtfl#14</title>
|
|
<g id="a_node27"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/14" xlink:title="ECC/simtfl#14 simtfl 0.2.0 (corresponding to Implementation Phase 1: Simulation Codebase)" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="947,-587.5 944,-591.5 923,-591.5 920,-587.5 752,-587.5 752,-504.5 947,-504.5 947,-587.5"/>
|
|
<text text-anchor="middle" x="849.5" y="-572.3" font-family="Times,serif" font-size="14.00">ECC/simtfl#14</text>
|
|
<text text-anchor="middle" x="849.5" y="-557.3" font-family="Times,serif" font-size="14.00">simtfl 0.2.0</text>
|
|
<text text-anchor="middle" x="849.5" y="-542.3" font-family="Times,serif" font-size="14.00">(corresponding to</text>
|
|
<text text-anchor="middle" x="849.5" y="-527.3" font-family="Times,serif" font-size="14.00">Implementation Phase 1:</text>
|
|
<text text-anchor="middle" x="849.5" y="-512.3" font-family="Times,serif" font-size="14.00">Simulation Codebase)</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#8->ECC/simtfl#14 -->
|
|
<g id="edge26" class="edge">
|
|
<title>ECC/simtfl#8->ECC/simtfl#14</title>
|
|
<path fill="none" stroke="black" d="M695.7,-501.54C710.69,-505.9 726.35,-510.46 741.68,-514.92"/>
|
|
<polygon fill="black" stroke="black" points="741.11,-518.4 751.69,-517.83 743.06,-511.68 741.11,-518.4"/>
|
|
</g>
|
|
<!-- ECC/simtfl#9->ECC/simtfl#14 -->
|
|
<g id="edge27" class="edge">
|
|
<title>ECC/simtfl#9->ECC/simtfl#14</title>
|
|
<path fill="none" stroke="black" d="M715.08,-546C723.87,-546 732.74,-546 741.51,-546"/>
|
|
<polygon fill="black" stroke="black" points="741.74,-549.5 751.74,-546 741.74,-542.5 741.74,-549.5"/>
|
|
</g>
|
|
<!-- ECC/simtfl#14->ECC/tfl-book#71 -->
|
|
<g id="edge51" class="edge">
|
|
<title>ECC/simtfl#14->ECC/tfl-book#71</title>
|
|
<path fill="none" stroke="black" d="M913.42,-587.67C947.51,-610.26 989.42,-638.02 1023,-660.29"/>
|
|
<polygon fill="black" stroke="black" points="1021.12,-663.24 1031.4,-665.82 1024.97,-657.4 1021.12,-663.24"/>
|
|
</g>
|
|
<!-- ECC/simtfl#14->ECC/tfl-book#72 -->
|
|
<g id="edge52" class="edge">
|
|
<title>ECC/simtfl#14->ECC/tfl-book#72</title>
|
|
<path fill="none" stroke="black" d="M899.52,-587.58C919.01,-606.23 940.26,-629.53 955,-654 976.46,-689.64 956.01,-712.22 984,-743 984.63,-743.7 985.28,-744.38 985.94,-745.06"/>
|
|
<polygon fill="black" stroke="black" points="983.74,-747.79 993.5,-751.9 988.43,-742.6 983.74,-747.79"/>
|
|
</g>
|
|
<!-- ECC/simtfl#15 -->
|
|
<g id="node28" class="node open">
|
|
<title>ECC/simtfl#15</title>
|
|
<g id="a_node28"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/15" xlink:title="ECC/simtfl#15 Design/document the network layer used in the simulation" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="208,-462 8,-462 8,-394 208,-394 208,-462"/>
|
|
<text text-anchor="middle" x="108" y="-446.8" font-family="Times,serif" font-size="14.00">ECC/simtfl#15</text>
|
|
<text text-anchor="middle" x="108" y="-431.8" font-family="Times,serif" font-size="14.00">Design/document the</text>
|
|
<text text-anchor="middle" x="108" y="-416.8" font-family="Times,serif" font-size="14.00">network layer used in the</text>
|
|
<text text-anchor="middle" x="108" y="-401.8" font-family="Times,serif" font-size="14.00">simulation</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#16 -->
|
|
<g id="node29" class="node open">
|
|
<title>ECC/simtfl#16</title>
|
|
<g id="a_node29"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/16" xlink:title="ECC/simtfl#16 Implement network layer" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="448.5,-447 251.5,-447 251.5,-409 448.5,-409 448.5,-447"/>
|
|
<text text-anchor="middle" x="350" y="-431.8" font-family="Times,serif" font-size="14.00">ECC/simtfl#16</text>
|
|
<text text-anchor="middle" x="350" y="-416.8" font-family="Times,serif" font-size="14.00">Implement network layer</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#15->ECC/simtfl#16 -->
|
|
<g id="edge28" class="edge">
|
|
<title>ECC/simtfl#15->ECC/simtfl#16</title>
|
|
<path fill="none" stroke="black" d="M208,-428C218.98,-428 230.19,-428 241.27,-428"/>
|
|
<polygon fill="black" stroke="black" points="241.39,-431.5 251.39,-428 241.39,-424.5 241.39,-431.5"/>
|
|
</g>
|
|
<!-- ECC/simtfl#16->ECC/simtfl#8 -->
|
|
<g id="edge29" class="edge">
|
|
<title>ECC/simtfl#16->ECC/simtfl#8</title>
|
|
<path fill="none" stroke="black" d="M448.6,-446.24C464.72,-449.25 481.49,-452.39 497.78,-455.43"/>
|
|
<polygon fill="black" stroke="black" points="497.38,-458.92 507.85,-457.31 498.66,-452.03 497.38,-458.92"/>
|
|
</g>
|
|
<!-- ECC/simtfl#16->ECC/simtfl#9 -->
|
|
<g id="edge30" class="edge">
|
|
<title>ECC/simtfl#16->ECC/simtfl#9</title>
|
|
<path fill="none" stroke="black" d="M441.03,-447.06C446.29,-449.66 451.34,-452.63 456,-456 479.68,-473.12 468.72,-493.34 492,-511 493.38,-512.05 494.79,-513.06 496.23,-514.04"/>
|
|
<polygon fill="black" stroke="black" points="494.41,-517.03 504.75,-519.36 498.12,-511.09 494.41,-517.03"/>
|
|
</g>
|
|
<!-- ECC/simtfl#10 -->
|
|
<g id="node30" class="node open">
|
|
<title>ECC/simtfl#10</title>
|
|
<g id="a_node30"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/10" xlink:title="ECC/simtfl#10 Implement some known BFT and/or PoS attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="714,-430.5 493,-430.5 493,-377.5 714,-377.5 714,-430.5"/>
|
|
<text text-anchor="middle" x="603.5" y="-415.3" font-family="Times,serif" font-size="14.00">ECC/simtfl#10</text>
|
|
<text text-anchor="middle" x="603.5" y="-400.3" font-family="Times,serif" font-size="14.00">Implement some known BFT</text>
|
|
<text text-anchor="middle" x="603.5" y="-385.3" font-family="Times,serif" font-size="14.00">and/or PoS attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#16->ECC/simtfl#10 -->
|
|
<g id="edge31" class="edge">
|
|
<title>ECC/simtfl#16->ECC/simtfl#10</title>
|
|
<path fill="none" stroke="black" d="M448.6,-418.69C459.81,-417.62 471.34,-416.52 482.8,-415.42"/>
|
|
<polygon fill="black" stroke="black" points="483.22,-418.9 492.84,-414.46 482.55,-411.93 483.22,-418.9"/>
|
|
</g>
|
|
<!-- ECC/simtfl#10->ECC/simtfl#14 -->
|
|
<g id="edge32" class="edge">
|
|
<title>ECC/simtfl#10->ECC/simtfl#14</title>
|
|
<path fill="none" stroke="black" d="M695.17,-430.57C702.01,-433.47 708.69,-436.61 715,-440 744.04,-455.6 773.09,-477.7 796.64,-497.69"/>
|
|
<polygon fill="black" stroke="black" points="794.55,-500.5 804.41,-504.37 799.11,-495.2 794.55,-500.5"/>
|
|
</g>
|
|
<!-- ECC/simtfl#20 -->
|
|
<g id="node31" class="node open">
|
|
<title>ECC/simtfl#20</title>
|
|
<g id="a_node31"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/20" xlink:title="ECC/simtfl#20 Add test coverage that ensures edge cases lead to invalid blocks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="445,-619 255,-619 255,-551 445,-551 445,-619"/>
|
|
<text text-anchor="middle" x="350" y="-603.8" font-family="Times,serif" font-size="14.00">ECC/simtfl#20</text>
|
|
<text text-anchor="middle" x="350" y="-588.8" font-family="Times,serif" font-size="14.00">Add test coverage that</text>
|
|
<text text-anchor="middle" x="350" y="-573.8" font-family="Times,serif" font-size="14.00">ensures edge cases lead</text>
|
|
<text text-anchor="middle" x="350" y="-558.8" font-family="Times,serif" font-size="14.00">to invalid blocks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#20->ECC/simtfl#9 -->
|
|
<g id="edge33" class="edge">
|
|
<title>ECC/simtfl#20->ECC/simtfl#9</title>
|
|
<path fill="none" stroke="black" d="M445.01,-570.42C456.89,-568.58 469.17,-566.67 481.4,-564.78"/>
|
|
<polygon fill="black" stroke="black" points="482.3,-568.18 491.65,-563.19 481.23,-561.26 482.3,-568.18"/>
|
|
</g>
|
|
<!-- ECC/simtfl#25 -->
|
|
<g id="node32" class="node open">
|
|
<title>ECC/simtfl#25</title>
|
|
<g id="a_node32"><a xlink:href="https://github.com/Electric-Coin-Company/simtfl/issues/25" xlink:title="ECC/simtfl#25 Finish Streamlet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="418.5,-391 281.5,-391 281.5,-353 418.5,-353 418.5,-391"/>
|
|
<text text-anchor="middle" x="350" y="-375.8" font-family="Times,serif" font-size="14.00">ECC/simtfl#25</text>
|
|
<text text-anchor="middle" x="350" y="-360.8" font-family="Times,serif" font-size="14.00">Finish Streamlet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/simtfl#25->ECC/simtfl#8 -->
|
|
<g id="edge34" class="edge">
|
|
<title>ECC/simtfl#25->ECC/simtfl#8</title>
|
|
<path fill="none" stroke="black" d="M418.63,-383.86C431.6,-387.81 444.66,-393.06 456,-400 476.4,-412.49 471.89,-427.05 492,-440 494.18,-441.41 496.43,-442.76 498.72,-444.06"/>
|
|
<polygon fill="black" stroke="black" points="497.3,-447.27 507.78,-448.84 500.57,-441.08 497.3,-447.27"/>
|
|
</g>
|
|
<!-- ECC/simtfl#25->ECC/simtfl#10 -->
|
|
<g id="edge35" class="edge">
|
|
<title>ECC/simtfl#25->ECC/simtfl#10</title>
|
|
<path fill="none" stroke="black" d="M418.73,-380.62C438.54,-383.14 460.8,-385.97 482.82,-388.77"/>
|
|
<polygon fill="black" stroke="black" points="482.55,-392.26 492.91,-390.06 483.43,-385.32 482.55,-392.26"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#123 -->
|
|
<g id="node34" class="node closed">
|
|
<title>ECC/tfl-book#123</title>
|
|
<g id="a_node34"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/123" xlink:title="ECC/tfl-book#123 Explain why we're more confident in Crosslink security vs the other hybrid construction candidates" target="_blank">
|
|
<polygon fill="#fad8c7" stroke="black" points="1412,-815 1223,-815 1223,-717 1412,-717 1412,-815"/>
|
|
<text text-anchor="middle" x="1317.5" y="-799.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#123</text>
|
|
<text text-anchor="middle" x="1317.5" y="-784.8" font-family="Times,serif" font-size="14.00">Explain why we're more</text>
|
|
<text text-anchor="middle" x="1317.5" y="-769.8" font-family="Times,serif" font-size="14.00">confident in Crosslink</text>
|
|
<text text-anchor="middle" x="1317.5" y="-754.8" font-family="Times,serif" font-size="14.00">security vs the other</text>
|
|
<text text-anchor="middle" x="1317.5" y="-739.8" font-family="Times,serif" font-size="14.00">hybrid construction</text>
|
|
<text text-anchor="middle" x="1317.5" y="-724.8" font-family="Times,serif" font-size="14.00">candidates</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#71->ECC/tfl-book#123 -->
|
|
<g id="edge36" class="edge">
|
|
<title>ECC/tfl-book#71->ECC/tfl-book#123</title>
|
|
<path fill="none" stroke="black" d="M1184.2,-728.28C1193.7,-730.98 1203.3,-733.72 1212.8,-736.43"/>
|
|
<polygon fill="black" stroke="black" points="1212.12,-739.88 1222.7,-739.25 1214.04,-733.14 1212.12,-739.88"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#81 -->
|
|
<g id="node35" class="node open">
|
|
<title>ECC/tfl-book#81</title>
|
|
<g id="a_node35"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/81" xlink:title="ECC/tfl-book#81 Write up conclusions of analyzing Crosslink against some known attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="1634,-796.5 1451,-796.5 1451,-713.5 1634,-713.5 1634,-796.5"/>
|
|
<text text-anchor="middle" x="1542.5" y="-781.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#81</text>
|
|
<text text-anchor="middle" x="1542.5" y="-766.3" font-family="Times,serif" font-size="14.00">Write up conclusions of</text>
|
|
<text text-anchor="middle" x="1542.5" y="-751.3" font-family="Times,serif" font-size="14.00">analyzing Crosslink</text>
|
|
<text text-anchor="middle" x="1542.5" y="-736.3" font-family="Times,serif" font-size="14.00">against some known</text>
|
|
<text text-anchor="middle" x="1542.5" y="-721.3" font-family="Times,serif" font-size="14.00">attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#123->ECC/tfl-book#81 -->
|
|
<g id="edge37" class="edge">
|
|
<title>ECC/tfl-book#123->ECC/tfl-book#81</title>
|
|
<path fill="none" stroke="black" d="M1412.1,-761.38C1421.6,-760.92 1431.2,-760.44 1440.7,-759.97"/>
|
|
<polygon fill="black" stroke="black" points="1441.19,-763.45 1451,-759.46 1440.84,-756.46 1441.19,-763.45"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#137 -->
|
|
<g id="node36" class="node open">
|
|
<title>ECC/tfl-book#137</title>
|
|
<g id="a_node36"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/137" xlink:title="ECC/tfl-book#137 Improve Goals, Requirements, and Desiderata" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="1618.5,-883 1466.5,-883 1466.5,-815 1618.5,-815 1618.5,-883"/>
|
|
<text text-anchor="middle" x="1542.5" y="-867.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#137</text>
|
|
<text text-anchor="middle" x="1542.5" y="-852.8" font-family="Times,serif" font-size="14.00">Improve Goals,</text>
|
|
<text text-anchor="middle" x="1542.5" y="-837.8" font-family="Times,serif" font-size="14.00">Requirements, and</text>
|
|
<text text-anchor="middle" x="1542.5" y="-822.8" font-family="Times,serif" font-size="14.00">Desiderata</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#123->ECC/tfl-book#137 -->
|
|
<g id="edge38" class="edge">
|
|
<title>ECC/tfl-book#123->ECC/tfl-book#137</title>
|
|
<path fill="none" stroke="black" d="M1412.1,-800.84C1427,-806.37 1442.3,-812.06 1456.9,-817.51"/>
|
|
<polygon fill="black" stroke="black" points="1455.81,-820.84 1466.4,-821.05 1458.25,-814.28 1455.81,-820.84"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#136 -->
|
|
<g id="node37" class="node open">
|
|
<title>ECC/tfl-book#136</title>
|
|
<g id="a_node37"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/136" xlink:title="ECC/tfl-book#136 Design Phase 3 - tfl-book v0.3.0 - simtfl results & PoS Goals / Reqs" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="1864,-789 1861,-793 1840,-793 1837,-789 1670,-789 1670,-721 1864,-721 1864,-789"/>
|
|
<text text-anchor="middle" x="1767" y="-773.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#136</text>
|
|
<text text-anchor="middle" x="1767" y="-758.8" font-family="Times,serif" font-size="14.00">Design Phase 3 - tfl-book</text>
|
|
<text text-anchor="middle" x="1767" y="-743.8" font-family="Times,serif" font-size="14.00">v0.3.0 - simtfl results &</text>
|
|
<text text-anchor="middle" x="1767" y="-728.8" font-family="Times,serif" font-size="14.00">PoS Goals / Reqs</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#81->ECC/tfl-book#136 -->
|
|
<g id="edge39" class="edge">
|
|
<title>ECC/tfl-book#81->ECC/tfl-book#136</title>
|
|
<path fill="none" stroke="black" d="M1634.3,-755C1642.6,-755 1651,-755 1659.5,-755"/>
|
|
<polygon fill="black" stroke="black" points="1659.7,-758.5 1669.7,-755 1659.7,-751.5 1659.7,-758.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#137->ECC/tfl-book#136 -->
|
|
<g id="edge40" class="edge">
|
|
<title>ECC/tfl-book#137->ECC/tfl-book#136</title>
|
|
<path fill="none" stroke="black" d="M1618.5,-817.31C1636.9,-809.52 1656.9,-801.1 1675.9,-793.05"/>
|
|
<polygon fill="black" stroke="black" points="1677.34,-796.24 1685.2,-789.13 1674.63,-789.79 1677.34,-796.24"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#136->ECC/tfl-book#42 -->
|
|
<g id="edge53" class="edge">
|
|
<title>ECC/tfl-book#136->ECC/tfl-book#42</title>
|
|
<path fill="none" stroke="black" d="M1848.9,-789.05C1865.2,-795.91 1882.6,-803.23 1899.7,-810.41"/>
|
|
<polygon fill="black" stroke="black" points="1898.53,-813.71 1909.1,-814.39 1901.26,-807.27 1898.53,-813.71"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#136->ECC/tfl-book#47 -->
|
|
<g id="edge54" class="edge">
|
|
<title>ECC/tfl-book#136->ECC/tfl-book#47</title>
|
|
<path fill="none" stroke="black" d="M1864.2,-755C1877.6,-755 1891.5,-755 1905,-755"/>
|
|
<polygon fill="black" stroke="black" points="1905.3,-758.5 1915.3,-755 1905.3,-751.5 1905.3,-758.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#136->ECC/tfl-book#48 -->
|
|
<g id="edge55" class="edge">
|
|
<title>ECC/tfl-book#136->ECC/tfl-book#48</title>
|
|
<path fill="none" stroke="black" d="M1843,-720.96C1858,-714.12 1874.2,-706.78 1890.3,-699.46"/>
|
|
<polygon fill="black" stroke="black" points="1892.13,-702.47 1899.8,-695.16 1889.25,-696.1 1892.13,-702.47"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#136->ECC/tfl-book#39 -->
|
|
<g id="edge56" class="edge">
|
|
<title>ECC/tfl-book#136->ECC/tfl-book#39</title>
|
|
<path fill="none" stroke="black" d="M1786.8,-720.88C1808.3,-684.24 1846.5,-626.17 1892,-588 1895.7,-584.91 1899.6,-581.93 1903.6,-579.06"/>
|
|
<polygon fill="black" stroke="black" points="1905.7,-581.86 1912,-573.34 1901.76,-576.08 1905.7,-581.86"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#72->ECC/tfl-book#123 -->
|
|
<g id="edge41" class="edge">
|
|
<title>ECC/tfl-book#72->ECC/tfl-book#123</title>
|
|
<path fill="none" stroke="black" d="M1184.2,-777.43C1193.6,-776.62 1203.1,-775.8 1212.5,-774.99"/>
|
|
<polygon fill="black" stroke="black" points="1213.04,-778.46 1222.7,-774.11 1212.44,-771.48 1213.04,-778.46"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#134 -->
|
|
<g id="node39" class="node open">
|
|
<title>ECC/tfl-book#134</title>
|
|
<g id="a_node39"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/134" xlink:title="ECC/tfl-book#134 Decide on slashing requirements from the economic, security, and UX trade-offs around slashing or no-slashing staking protocols" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="1175.5,-951.5 992.5,-951.5 992.5,-838.5 1175.5,-838.5 1175.5,-951.5"/>
|
|
<text text-anchor="middle" x="1084" y="-936.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#134</text>
|
|
<text text-anchor="middle" x="1084" y="-921.3" font-family="Times,serif" font-size="14.00">Decide on slashing</text>
|
|
<text text-anchor="middle" x="1084" y="-906.3" font-family="Times,serif" font-size="14.00">requirements from the</text>
|
|
<text text-anchor="middle" x="1084" y="-891.3" font-family="Times,serif" font-size="14.00">economic, security, and</text>
|
|
<text text-anchor="middle" x="1084" y="-876.3" font-family="Times,serif" font-size="14.00">UX trade-offs around</text>
|
|
<text text-anchor="middle" x="1084" y="-861.3" font-family="Times,serif" font-size="14.00">slashing or no-slashing</text>
|
|
<text text-anchor="middle" x="1084" y="-846.3" font-family="Times,serif" font-size="14.00">staking protocols</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#117 -->
|
|
<g id="node40" class="node open">
|
|
<title>ECC/tfl-book#117</title>
|
|
<g id="a_node40"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/117" xlink:title="ECC/tfl-book#117 Define PoS Subprotocol goals, requirements, and desiderata" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="1415,-923 1220,-923 1220,-855 1415,-855 1415,-923"/>
|
|
<text text-anchor="middle" x="1317.5" y="-907.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#117</text>
|
|
<text text-anchor="middle" x="1317.5" y="-892.8" font-family="Times,serif" font-size="14.00">Define PoS Subprotocol</text>
|
|
<text text-anchor="middle" x="1317.5" y="-877.8" font-family="Times,serif" font-size="14.00">goals, requirements, and</text>
|
|
<text text-anchor="middle" x="1317.5" y="-862.8" font-family="Times,serif" font-size="14.00">desiderata</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#134->ECC/tfl-book#117 -->
|
|
<g id="edge42" class="edge">
|
|
<title>ECC/tfl-book#134->ECC/tfl-book#117</title>
|
|
<path fill="none" stroke="black" d="M1175.8,-892.65C1186.9,-892.36 1198.3,-892.06 1209.5,-891.77"/>
|
|
<polygon fill="black" stroke="black" points="1209.89,-895.26 1219.8,-891.51 1209.71,-888.26 1209.89,-895.26"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#117->ECC/tfl-book#137 -->
|
|
<g id="edge43" class="edge">
|
|
<title>ECC/tfl-book#117->ECC/tfl-book#137</title>
|
|
<path fill="none" stroke="black" d="M1415,-871.69C1428.7,-869.23 1442.7,-866.72 1456.2,-864.31"/>
|
|
<polygon fill="black" stroke="black" points="1457.08,-867.71 1466.3,-862.48 1455.84,-860.82 1457.08,-867.71"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#140 -->
|
|
<g id="node41" class="node open">
|
|
<title>ECC/tfl-book#140</title>
|
|
<g id="a_node41"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/140" xlink:title="ECC/tfl-book#140 Analyse and improve Crosslink's security against combined eclipse / validator key compromise attacks" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="948,-835 751,-835 751,-737 948,-737 948,-835"/>
|
|
<text text-anchor="middle" x="849.5" y="-819.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#140</text>
|
|
<text text-anchor="middle" x="849.5" y="-804.8" font-family="Times,serif" font-size="14.00">Analyse and improve</text>
|
|
<text text-anchor="middle" x="849.5" y="-789.8" font-family="Times,serif" font-size="14.00">Crosslink's security</text>
|
|
<text text-anchor="middle" x="849.5" y="-774.8" font-family="Times,serif" font-size="14.00">against combined eclipse</text>
|
|
<text text-anchor="middle" x="849.5" y="-759.8" font-family="Times,serif" font-size="14.00">/ validator key</text>
|
|
<text text-anchor="middle" x="849.5" y="-744.8" font-family="Times,serif" font-size="14.00">compromise attacks</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#140->ECC/tfl-book#72 -->
|
|
<g id="edge44" class="edge">
|
|
<title>ECC/tfl-book#140->ECC/tfl-book#72</title>
|
|
<path fill="none" stroke="black" d="M948.09,-786C956.58,-786 965.2,-786 973.77,-786"/>
|
|
<polygon fill="black" stroke="black" points="973.79,-789.5 983.79,-786 973.79,-782.5 973.79,-789.5"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#4->ECC/tfl-book#70 -->
|
|
<g id="edge47" class="edge">
|
|
<title>ECC/zebra-tfl#4->ECC/tfl-book#70</title>
|
|
<path fill="none" stroke="black" d="M2264.9,-248.71C2304.7,-302.04 2394.3,-422.12 2442.2,-486.43"/>
|
|
<polygon fill="black" stroke="black" points="2439.61,-488.82 2448.4,-494.74 2445.23,-484.63 2439.61,-488.82"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#11 -->
|
|
<g id="node43" class="node open">
|
|
<title>ECC/zebra-tfl#11</title>
|
|
<g id="a_node43"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/11" xlink:title="ECC/zebra-tfl#11 Consider putting bft- proposals in bc-block- headers" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="2094.5,-249 1923.5,-249 1923.5,-181 2094.5,-181 2094.5,-249"/>
|
|
<text text-anchor="middle" x="2009" y="-233.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#11</text>
|
|
<text text-anchor="middle" x="2009" y="-218.8" font-family="Times,serif" font-size="14.00">Consider putting bft-</text>
|
|
<text text-anchor="middle" x="2009" y="-203.8" font-family="Times,serif" font-size="14.00">proposals in bc-block-</text>
|
|
<text text-anchor="middle" x="2009" y="-188.8" font-family="Times,serif" font-size="14.00">headers</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#11->ECC/zebra-tfl#4 -->
|
|
<g id="edge45" class="edge">
|
|
<title>ECC/zebra-tfl#11->ECC/zebra-tfl#4</title>
|
|
<path fill="none" stroke="black" d="M2094.8,-217.55C2112.2,-218.07 2130.6,-218.62 2148.3,-219.16"/>
|
|
<polygon fill="black" stroke="black" points="2148.6,-222.67 2158.7,-219.47 2148.81,-215.67 2148.6,-222.67"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#150 -->
|
|
<g id="node45" class="node open">
|
|
<title>ECC/tfl-book#150</title>
|
|
<g id="a_node45"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/150" xlink:title="ECC/tfl-book#150 Design staking for Hybrid PoS" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3492,-761.5 3290,-761.5 3290,-708.5 3492,-708.5 3492,-761.5"/>
|
|
<text text-anchor="middle" x="3391" y="-746.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#150</text>
|
|
<text text-anchor="middle" x="3391" y="-731.3" font-family="Times,serif" font-size="14.00">Design staking for Hybrid</text>
|
|
<text text-anchor="middle" x="3391" y="-716.3" font-family="Times,serif" font-size="14.00">PoS</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#7->ECC/tfl-book#150 -->
|
|
<g id="edge58" class="edge">
|
|
<title>ECC/zebra-tfl#7->ECC/tfl-book#150</title>
|
|
<path fill="none" stroke="black" d="M3254,-693.39C3267.1,-697.37 3280.4,-701.46 3293.4,-705.45"/>
|
|
<polygon fill="black" stroke="black" points="3292.71,-708.9 3303.3,-708.47 3294.76,-702.2 3292.71,-708.9"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#152 -->
|
|
<g id="node46" class="node open">
|
|
<title>ECC/tfl-book#152</title>
|
|
<g id="a_node46"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/152" xlink:title="ECC/tfl-book#152 Design activation logic for Hybrid PoS" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3480.5,-690.5 3301.5,-690.5 3301.5,-637.5 3480.5,-637.5 3480.5,-690.5"/>
|
|
<text text-anchor="middle" x="3391" y="-675.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#152</text>
|
|
<text text-anchor="middle" x="3391" y="-660.3" font-family="Times,serif" font-size="14.00">Design activation logic</text>
|
|
<text text-anchor="middle" x="3391" y="-645.3" font-family="Times,serif" font-size="14.00">for Hybrid PoS</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#7->ECC/tfl-book#152 -->
|
|
<g id="edge59" class="edge">
|
|
<title>ECC/zebra-tfl#7->ECC/tfl-book#152</title>
|
|
<path fill="none" stroke="black" d="M3254,-664C3266.3,-664 3278.9,-664 3291.2,-664"/>
|
|
<polygon fill="black" stroke="black" points="3291.5,-667.5 3301.5,-664 3291.5,-660.5 3291.5,-667.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#153 -->
|
|
<g id="node47" class="node open">
|
|
<title>ECC/tfl-book#153</title>
|
|
<g id="a_node47"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/153" xlink:title="ECC/tfl-book#153 Design interaction of BFT and PoW components of Hybrid PoS" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3491,-619 3291,-619 3291,-551 3491,-551 3491,-619"/>
|
|
<text text-anchor="middle" x="3391" y="-603.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#153</text>
|
|
<text text-anchor="middle" x="3391" y="-588.8" font-family="Times,serif" font-size="14.00">Design interaction of BFT</text>
|
|
<text text-anchor="middle" x="3391" y="-573.8" font-family="Times,serif" font-size="14.00">and PoW components of</text>
|
|
<text text-anchor="middle" x="3391" y="-558.8" font-family="Times,serif" font-size="14.00">Hybrid PoS</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#7->ECC/tfl-book#153 -->
|
|
<g id="edge60" class="edge">
|
|
<title>ECC/zebra-tfl#7->ECC/tfl-book#153</title>
|
|
<path fill="none" stroke="black" d="M3254,-631.3C3262.9,-628.27 3272,-625.2 3280.9,-622.14"/>
|
|
<polygon fill="black" stroke="black" points="3282.35,-625.35 3290.7,-618.83 3280.11,-618.71 3282.35,-625.35"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#151 -->
|
|
<g id="node48" class="node open">
|
|
<title>ECC/tfl-book#151</title>
|
|
<g id="a_node48"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/151" xlink:title="ECC/tfl-book#151 Initial documentation of all elements of the Hybrid PoS design" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3727.5,-698 3539.5,-698 3539.5,-630 3727.5,-630 3727.5,-698"/>
|
|
<text text-anchor="middle" x="3633.5" y="-682.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#151</text>
|
|
<text text-anchor="middle" x="3633.5" y="-667.8" font-family="Times,serif" font-size="14.00">Initial documentation of</text>
|
|
<text text-anchor="middle" x="3633.5" y="-652.8" font-family="Times,serif" font-size="14.00">all elements of the</text>
|
|
<text text-anchor="middle" x="3633.5" y="-637.8" font-family="Times,serif" font-size="14.00">Hybrid PoS design</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#150->ECC/tfl-book#151 -->
|
|
<g id="edge61" class="edge">
|
|
<title>ECC/tfl-book#150->ECC/tfl-book#151</title>
|
|
<path fill="none" stroke="black" d="M3481.9,-708.46C3497.4,-703.89 3513.5,-699.12 3529.3,-694.46"/>
|
|
<polygon fill="black" stroke="black" points="3530.5,-697.76 3539.1,-691.57 3528.52,-691.04 3530.5,-697.76"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#152->ECC/tfl-book#151 -->
|
|
<g id="edge62" class="edge">
|
|
<title>ECC/tfl-book#152->ECC/tfl-book#151</title>
|
|
<path fill="none" stroke="black" d="M3480.5,-664C3496.4,-664 3513,-664 3529.3,-664"/>
|
|
<polygon fill="black" stroke="black" points="3529.3,-667.5 3539.3,-664 3529.3,-660.5 3529.3,-667.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#153->ECC/tfl-book#151 -->
|
|
<g id="edge63" class="edge">
|
|
<title>ECC/tfl-book#153->ECC/tfl-book#151</title>
|
|
<path fill="none" stroke="black" d="M3491.2,-617.59C3503.9,-621.75 3516.9,-626.03 3529.6,-630.21"/>
|
|
<polygon fill="black" stroke="black" points="3528.71,-633.6 3539.3,-633.39 3530.89,-626.95 3528.71,-633.6"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#149 -->
|
|
<g id="node57" class="node open">
|
|
<title>ECC/tfl-book#149</title>
|
|
<g id="a_node57"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/149" xlink:title="ECC/tfl-book#149 Finalize documentation of Hybrid PoS protocol" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3977,-690.5 3775,-690.5 3775,-637.5 3977,-637.5 3977,-690.5"/>
|
|
<text text-anchor="middle" x="3876" y="-675.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#149</text>
|
|
<text text-anchor="middle" x="3876" y="-660.3" font-family="Times,serif" font-size="14.00">Finalize documentation of</text>
|
|
<text text-anchor="middle" x="3876" y="-645.3" font-family="Times,serif" font-size="14.00">Hybrid PoS protocol</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#151->ECC/tfl-book#149 -->
|
|
<g id="edge74" class="edge">
|
|
<title>ECC/tfl-book#151->ECC/tfl-book#149</title>
|
|
<path fill="none" stroke="black" d="M3727.8,-664C3739.9,-664 3752.3,-664 3764.7,-664"/>
|
|
<polygon fill="black" stroke="black" points="3765,-667.5 3775,-664 3765,-660.5 3765,-667.5"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#8 -->
|
|
<g id="node58" class="node open">
|
|
<title>ECC/zebra-tfl#8</title>
|
|
<g id="a_node58"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/8" xlink:title="ECC/zebra-tfl#8 Prototype of in-principle deployable Hybrid PoS design using Zebra" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3971.5,-533 3780.5,-533 3780.5,-465 3971.5,-465 3971.5,-533"/>
|
|
<text text-anchor="middle" x="3876" y="-517.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#8</text>
|
|
<text text-anchor="middle" x="3876" y="-502.8" font-family="Times,serif" font-size="14.00">Prototype of in-principle</text>
|
|
<text text-anchor="middle" x="3876" y="-487.8" font-family="Times,serif" font-size="14.00">deployable Hybrid PoS</text>
|
|
<text text-anchor="middle" x="3876" y="-472.8" font-family="Times,serif" font-size="14.00">design using Zebra</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#151->ECC/zebra-tfl#8 -->
|
|
<g id="edge75" class="edge">
|
|
<title>ECC/tfl-book#151->ECC/zebra-tfl#8</title>
|
|
<path fill="none" stroke="black" d="M3727.6,-630.46C3731.6,-627.55 3735.5,-624.4 3739,-621 3766.8,-594.23 3747.4,-568.99 3775,-542 3775.8,-541.21 3776.6,-540.43 3777.5,-539.66"/>
|
|
<polygon fill="black" stroke="black" points="3779.97,-542.16 3785.5,-533.12 3775.54,-536.74 3779.97,-542.16"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#146 -->
|
|
<g id="node49" class="node open">
|
|
<title>ECC/tfl-book#146</title>
|
|
<g id="a_node49"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/146" xlink:title="ECC/tfl-book#146 Create a feature Testnet for Hybrid PoS deployment" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" stroke-width="2" points="3739,-611.5 3528,-611.5 3528,-558.5 3739,-558.5 3739,-611.5"/>
|
|
<text text-anchor="middle" x="3633.5" y="-596.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#146</text>
|
|
<text text-anchor="middle" x="3633.5" y="-581.3" font-family="Times,serif" font-size="14.00">Create a feature Testnet</text>
|
|
<text text-anchor="middle" x="3633.5" y="-566.3" font-family="Times,serif" font-size="14.00">for Hybrid PoS deployment</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#145 -->
|
|
<g id="node50" class="node open">
|
|
<title>ECC/tfl-book#145</title>
|
|
<g id="a_node50"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/145" xlink:title="ECC/tfl-book#145 Deploy initial candidate for a Hybrid PoS protocol on a feature Testnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="3975,-619 3777,-619 3777,-551 3975,-551 3975,-619"/>
|
|
<text text-anchor="middle" x="3876" y="-603.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#145</text>
|
|
<text text-anchor="middle" x="3876" y="-588.8" font-family="Times,serif" font-size="14.00">Deploy initial candidate</text>
|
|
<text text-anchor="middle" x="3876" y="-573.8" font-family="Times,serif" font-size="14.00">for a Hybrid PoS protocol</text>
|
|
<text text-anchor="middle" x="3876" y="-558.8" font-family="Times,serif" font-size="14.00">on a feature Testnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#146->ECC/tfl-book#145 -->
|
|
<g id="edge64" class="edge">
|
|
<title>ECC/tfl-book#146->ECC/tfl-book#145</title>
|
|
<path fill="none" stroke="black" d="M3739.3,-585C3748.3,-585 3757.4,-585 3766.5,-585"/>
|
|
<polygon fill="black" stroke="black" points="3766.6,-588.5 3776.6,-585 3766.6,-581.5 3766.6,-588.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#147 -->
|
|
<g id="node51" class="node open">
|
|
<title>ECC/tfl-book#147</title>
|
|
<g id="a_node51"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/147" xlink:title="ECC/tfl-book#147 Make sure other concurrently developed features are merged into Hybrid PoS Testnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="4214.5,-702.5 4019.5,-702.5 4019.5,-619.5 4214.5,-619.5 4214.5,-702.5"/>
|
|
<text text-anchor="middle" x="4117" y="-687.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#147</text>
|
|
<text text-anchor="middle" x="4117" y="-672.3" font-family="Times,serif" font-size="14.00">Make sure other</text>
|
|
<text text-anchor="middle" x="4117" y="-657.3" font-family="Times,serif" font-size="14.00">concurrently developed</text>
|
|
<text text-anchor="middle" x="4117" y="-642.3" font-family="Times,serif" font-size="14.00">features are merged into</text>
|
|
<text text-anchor="middle" x="4117" y="-627.3" font-family="Times,serif" font-size="14.00">Hybrid PoS Testnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#145->ECC/tfl-book#147 -->
|
|
<g id="edge65" class="edge">
|
|
<title>ECC/tfl-book#145->ECC/tfl-book#147</title>
|
|
<path fill="none" stroke="black" d="M3975.2,-616.24C3986.6,-619.86 3998.2,-623.55 4009.7,-627.2"/>
|
|
<polygon fill="black" stroke="black" points="4008.71,-630.56 4019.3,-630.25 4010.83,-623.89 4008.71,-630.56"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#148 -->
|
|
<g id="node52" class="node open">
|
|
<title>ECC/tfl-book#148</title>
|
|
<g id="a_node52"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/148" xlink:title="ECC/tfl-book#148 Integration audit of Hybrid PoS protocol plus other concurrent features, as deployed to feature Testnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="4452,-633 4257,-633 4257,-535 4452,-535 4452,-633"/>
|
|
<text text-anchor="middle" x="4354.5" y="-617.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#148</text>
|
|
<text text-anchor="middle" x="4354.5" y="-602.8" font-family="Times,serif" font-size="14.00">Integration audit of</text>
|
|
<text text-anchor="middle" x="4354.5" y="-587.8" font-family="Times,serif" font-size="14.00">Hybrid PoS protocol plus</text>
|
|
<text text-anchor="middle" x="4354.5" y="-572.8" font-family="Times,serif" font-size="14.00">other concurrent</text>
|
|
<text text-anchor="middle" x="4354.5" y="-557.8" font-family="Times,serif" font-size="14.00">features, as deployed to</text>
|
|
<text text-anchor="middle" x="4354.5" y="-542.8" font-family="Times,serif" font-size="14.00">feature Testnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#145->ECC/tfl-book#148 -->
|
|
<g id="edge66" class="edge">
|
|
<title>ECC/tfl-book#145->ECC/tfl-book#148</title>
|
|
<path fill="none" stroke="black" d="M3975.2,-584.79C4054.2,-584.63 4165.1,-584.4 4246.4,-584.22"/>
|
|
<polygon fill="black" stroke="black" points="4246.71,-587.72 4256.7,-584.2 4246.69,-580.72 4246.71,-587.72"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#10 -->
|
|
<g id="node53" class="node open">
|
|
<title>ECC/zebra-tfl#10</title>
|
|
<g id="a_node53"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/10" xlink:title="ECC/zebra-tfl#10 Working toolchain for all features of Hybrid PoS" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="4213,-559.5 4021,-559.5 4021,-506.5 4213,-506.5 4213,-559.5"/>
|
|
<text text-anchor="middle" x="4117" y="-544.3" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#10</text>
|
|
<text text-anchor="middle" x="4117" y="-529.3" font-family="Times,serif" font-size="14.00">Working toolchain for all</text>
|
|
<text text-anchor="middle" x="4117" y="-514.3" font-family="Times,serif" font-size="14.00">features of Hybrid PoS</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#145->ECC/zebra-tfl#10 -->
|
|
<g id="edge67" class="edge">
|
|
<title>ECC/tfl-book#145->ECC/zebra-tfl#10</title>
|
|
<path fill="none" stroke="black" d="M3975.2,-563.62C3987,-561.06 3999.1,-558.44 4010.9,-555.86"/>
|
|
<polygon fill="black" stroke="black" points="4011.77,-559.25 4020.8,-553.71 4010.28,-552.41 4011.77,-559.25"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#154 -->
|
|
<g id="node54" class="node open">
|
|
<title>ECC/tfl-book#154</title>
|
|
<g id="a_node54"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/154" xlink:title="ECC/tfl-book#154 Obtain community consensus to deploy Hybrid PoS on public Testnet and (if successful) Mainnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="4655,-671 4488,-671 4488,-573 4655,-573 4655,-671"/>
|
|
<text text-anchor="middle" x="4571.5" y="-655.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#154</text>
|
|
<text text-anchor="middle" x="4571.5" y="-640.8" font-family="Times,serif" font-size="14.00">Obtain community</text>
|
|
<text text-anchor="middle" x="4571.5" y="-625.8" font-family="Times,serif" font-size="14.00">consensus to deploy</text>
|
|
<text text-anchor="middle" x="4571.5" y="-610.8" font-family="Times,serif" font-size="14.00">Hybrid PoS on public</text>
|
|
<text text-anchor="middle" x="4571.5" y="-595.8" font-family="Times,serif" font-size="14.00">Testnet and (if</text>
|
|
<text text-anchor="middle" x="4571.5" y="-580.8" font-family="Times,serif" font-size="14.00">successful) Mainnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#147->ECC/tfl-book#154 -->
|
|
<g id="edge68" class="edge">
|
|
<title>ECC/tfl-book#147->ECC/tfl-book#154</title>
|
|
<path fill="none" stroke="black" d="M4214.7,-658.32C4281.5,-655.78 4372.4,-650.96 4452,-642 4460.3,-641.06 4469,-639.92 4477.6,-638.67"/>
|
|
<polygon fill="black" stroke="black" points="4478.42,-642.09 4487.8,-637.16 4477.4,-635.16 4478.42,-642.09"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#148->ECC/tfl-book#154 -->
|
|
<g id="edge69" class="edge">
|
|
<title>ECC/tfl-book#148->ECC/tfl-book#154</title>
|
|
<path fill="none" stroke="black" d="M4452.3,-601.11C4460.8,-602.61 4469.4,-604.13 4477.8,-605.62"/>
|
|
<polygon fill="black" stroke="black" points="4477.25,-609.08 4487.7,-607.36 4478.46,-602.18 4477.25,-609.08"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#10->ECC/tfl-book#148 -->
|
|
<g id="edge70" class="edge">
|
|
<title>ECC/zebra-tfl#10->ECC/tfl-book#148</title>
|
|
<path fill="none" stroke="black" d="M4213.1,-553.6C4224.3,-556.01 4235.7,-558.49 4247,-560.94"/>
|
|
<polygon fill="black" stroke="black" points="4246.39,-564.39 4256.9,-563.08 4247.87,-557.55 4246.39,-564.39"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#144 -->
|
|
<g id="node55" class="node open">
|
|
<title>ECC/tfl-book#144</title>
|
|
<g id="a_node55"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/144" xlink:title="ECC/tfl-book#144 Deploy Hybrid PoS protocol on public Testnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="4843,-656 4691,-656 4691,-588 4843,-588 4843,-656"/>
|
|
<text text-anchor="middle" x="4767" y="-640.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#144</text>
|
|
<text text-anchor="middle" x="4767" y="-625.8" font-family="Times,serif" font-size="14.00">Deploy Hybrid PoS</text>
|
|
<text text-anchor="middle" x="4767" y="-610.8" font-family="Times,serif" font-size="14.00">protocol on public</text>
|
|
<text text-anchor="middle" x="4767" y="-595.8" font-family="Times,serif" font-size="14.00">Testnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#154->ECC/tfl-book#144 -->
|
|
<g id="edge71" class="edge">
|
|
<title>ECC/tfl-book#154->ECC/tfl-book#144</title>
|
|
<path fill="none" stroke="black" d="M4655.1,-622C4663.5,-622 4672.1,-622 4680.5,-622"/>
|
|
<polygon fill="black" stroke="black" points="4680.7,-625.5 4690.7,-622 4680.7,-618.5 4680.7,-625.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#156 -->
|
|
<g id="node56" class="node open">
|
|
<title>ECC/tfl-book#156</title>
|
|
<g id="a_node56"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/156" xlink:title="ECC/tfl-book#156 Finalize details of Hybrid PoS deployment on Mainnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="5087,-656 4879,-656 4879,-588 5087,-588 5087,-656"/>
|
|
<text text-anchor="middle" x="4983" y="-640.8" font-family="Times,serif" font-size="14.00">ECC/tfl-book#156</text>
|
|
<text text-anchor="middle" x="4983" y="-625.8" font-family="Times,serif" font-size="14.00">Finalize details of</text>
|
|
<text text-anchor="middle" x="4983" y="-610.8" font-family="Times,serif" font-size="14.00">Hybrid PoS deployment on</text>
|
|
<text text-anchor="middle" x="4983" y="-595.8" font-family="Times,serif" font-size="14.00">Mainnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#144->ECC/tfl-book#156 -->
|
|
<g id="edge72" class="edge">
|
|
<title>ECC/tfl-book#144->ECC/tfl-book#156</title>
|
|
<path fill="none" stroke="black" d="M4843.1,-622C4851.5,-622 4860,-622 4868.7,-622"/>
|
|
<polygon fill="black" stroke="black" points="4868.9,-625.5 4878.9,-622 4868.9,-618.5 4868.9,-625.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#143 -->
|
|
<g id="node60" class="node open">
|
|
<title>ECC/tfl-book#143</title>
|
|
<g id="a_node60"><a xlink:href="https://github.com/Electric-Coin-Company/tfl-book/issues/143" xlink:title="ECC/tfl-book#143 Deploy a Hybrid PoS protocol on Mainnet" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="5287,-648.5 5123,-648.5 5123,-595.5 5287,-595.5 5287,-648.5"/>
|
|
<text text-anchor="middle" x="5205" y="-633.3" font-family="Times,serif" font-size="14.00">ECC/tfl-book#143</text>
|
|
<text text-anchor="middle" x="5205" y="-618.3" font-family="Times,serif" font-size="14.00">Deploy a Hybrid PoS</text>
|
|
<text text-anchor="middle" x="5205" y="-603.3" font-family="Times,serif" font-size="14.00">protocol on Mainnet</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/tfl-book#156->ECC/tfl-book#143 -->
|
|
<g id="edge78" class="edge">
|
|
<title>ECC/tfl-book#156->ECC/tfl-book#143</title>
|
|
<path fill="none" stroke="black" d="M5087.2,-622C5095.7,-622 5104.3,-622 5112.7,-622"/>
|
|
<polygon fill="black" stroke="black" points="5112.8,-625.5 5122.8,-622 5112.8,-618.5 5112.8,-625.5"/>
|
|
</g>
|
|
<!-- ECC/tfl-book#149->ECC/tfl-book#147 -->
|
|
<g id="edge73" class="edge">
|
|
<title>ECC/tfl-book#149->ECC/tfl-book#147</title>
|
|
<path fill="none" stroke="black" d="M3977.3,-662.74C3987.9,-662.61 3998.6,-662.47 4009.2,-662.34"/>
|
|
<polygon fill="black" stroke="black" points="4009.45,-665.84 4019.4,-662.21 4009.36,-658.84 4009.45,-665.84"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#8->ECC/zebra-tfl#10 -->
|
|
<g id="edge76" class="edge">
|
|
<title>ECC/zebra-tfl#8->ECC/zebra-tfl#10</title>
|
|
<path fill="none" stroke="black" d="M3971.8,-512.49C3984.7,-514.32 3998,-516.21 4011,-518.06"/>
|
|
<polygon fill="black" stroke="black" points="4010.51,-521.52 4020.9,-519.47 4011.49,-514.59 4010.51,-521.52"/>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#9 -->
|
|
<g id="node59" class="node open">
|
|
<title>ECC/zebra-tfl#9</title>
|
|
<g id="a_node59"><a xlink:href="https://github.com/Electric-Coin-Company/zebra-tfl/issues/9" xlink:title="ECC/zebra-tfl#9 Merge Hybrid PoS implementation into Zebra behind a feature flag" target="_blank">
|
|
<polygon fill="#c2e0c6" stroke="black" points="4221,-488 4013,-488 4013,-420 4221,-420 4221,-488"/>
|
|
<text text-anchor="middle" x="4117" y="-472.8" font-family="Times,serif" font-size="14.00">ECC/zebra-tfl#9</text>
|
|
<text text-anchor="middle" x="4117" y="-457.8" font-family="Times,serif" font-size="14.00">Merge Hybrid PoS</text>
|
|
<text text-anchor="middle" x="4117" y="-442.8" font-family="Times,serif" font-size="14.00">implementation into Zebra</text>
|
|
<text text-anchor="middle" x="4117" y="-427.8" font-family="Times,serif" font-size="14.00">behind a feature flag</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- ECC/zebra-tfl#8->ECC/zebra-tfl#9 -->
|
|
<g id="edge77" class="edge">
|
|
<title>ECC/zebra-tfl#8->ECC/zebra-tfl#9</title>
|
|
<path fill="none" stroke="black" d="M3971.8,-481.15C3982,-479.23 3992.4,-477.27 4002.8,-475.32"/>
|
|
<polygon fill="black" stroke="black" points="4003.52,-478.75 4012.7,-473.46 4002.23,-471.87 4003.52,-478.75"/>
|
|
</g>
|
|
</g>
|
|
</svg>
|
|
</div>
|
|
|
|
<script>
|
|
svgPanZoom('#dag > svg', {
|
|
zoomScaleSensitivity: 0.4
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|