mirror of https://github.com/logos-co/roadmap.git
Update documentation
This commit is contained in:
parent
bde65804ec
commit
6cdc6ed5c7
2
404.html
2
404.html
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -240,6 +240,48 @@
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
Nov 30, 2022
|
Nov 30, 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -324,48 +366,6 @@ Nov 29, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 28, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 16, 2022
|
Nov 16, 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -660,6 +660,28 @@ Nov 30, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Nov 29, 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -676,13 +698,42 @@ Nov 29, 2022
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/claro/">Claro</a></li>
|
<li><a href="https://roadmap.logos.co/tags/claro/">Claro</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li></ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="meta">
|
||||||
|
<h1><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></h1>
|
||||||
|
<p><b>2</b> notes with this tag </p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ul class="section-ul"><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li><li class="section-li">
|
</li><li class="section-li">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -700,16 +751,7 @@ Nov 29, 2022
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li></ul>
|
</li><li class="section-li">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="meta">
|
|
||||||
<h1><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></h1>
|
|
||||||
<p><b>2</b> notes with this tag </p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<ul class="section-ul"><li class="section-li">
|
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
@ -731,48 +773,6 @@ Nov 30, 2022
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 29, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 28, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li></ul>
|
</li></ul>
|
||||||
|
@ -1000,22 +1000,18 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 30, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
<div class="desc">
|
<div class="desc">
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/networking/carnot-waku-specification/" class="internal-link" data-src="/roadmap/networking/carnot-waku-specification/">A Specification proposal for using Waku for Carnot Consensus</a></h3>
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="spacer"></div>
|
<div class="spacer"></div>
|
||||||
<ul class="tags">
|
<ul class="tags">
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/waku/">Waku</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/networking/">Networking</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -1024,7 +1020,7 @@ Nov 30, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -1046,18 +1042,22 @@ Nov 29, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 28, 2022
|
Nov 30, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
<div class="desc">
|
<div class="desc">
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
<h3><a href="https://roadmap.logos.co/roadmap/networking/carnot-waku-specification/" class="internal-link" data-src="/roadmap/networking/carnot-waku-specification/">A Specification proposal for using Waku for Carnot Consensus</a></h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="spacer"></div>
|
<div class="spacer"></div>
|
||||||
<ul class="tags">
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/waku/">Waku</a></li>
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/networking/">Networking</a></li>
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -103,7 +103,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
56
linkmap
56
linkmap
|
@ -1,33 +1,33 @@
|
||||||
/index.html /
|
|
||||||
/roadmap/consensus/candidates/carnot/overview/index.{html} /roadmap/consensus/candidates/carnot/overview/
|
|
||||||
/roadmap/consensus/development/prototypes/index.{html} /roadmap/consensus/development/prototypes/
|
|
||||||
/roadmap/consensus/theory/overview/index.{html} /roadmap/consensus/theory/overview/
|
|
||||||
/roadmap/networking/overview/index.{html} /roadmap/networking/overview/
|
|
||||||
/private/notes/CJK-+-Latex-Support-%E6%B5%8B%E8%AF%95/index.{html} /private/notes/CJK-+-Latex-Support-%E6%B5%8B%E8%AF%95/
|
|
||||||
/private/notes/obsidian/index.{html} /private/notes/obsidian/
|
|
||||||
/requirements/overview/index.{html} /requirements/overview/
|
|
||||||
/private/notes/config/index.{html} /private/notes/config/
|
|
||||||
/roadmap/consensus/overview/index.{html} /roadmap/consensus/overview/
|
|
||||||
/roles/distributed-systems-researcher/index.{html} /roles/distributed-systems-researcher/
|
|
||||||
/roles/zero-knowledge-research-engineer/index.{html} /roles/zero-knowledge-research-engineer/
|
|
||||||
/private/notes/custom-Domain/index.{html} /private/notes/custom-Domain/
|
|
||||||
/private/notes/ignore-notes/index.{html} /private/notes/ignore-notes/
|
|
||||||
/private/notes/updating/index.{html} /private/notes/updating/
|
|
||||||
/roadmap/consensus/theory/snow-family/index.{html} /roadmap/consensus/theory/snow-family/
|
|
||||||
/private/notes/editing/index.{html} /private/notes/editing/
|
|
||||||
/private/notes/philosophy/index.{html} /private/notes/philosophy/
|
|
||||||
/roadmap/consensus/candidates/claro/index.{html} /roadmap/consensus/candidates/claro/
|
/roadmap/consensus/candidates/claro/index.{html} /roadmap/consensus/candidates/claro/
|
||||||
/private/notes/callouts/index.{html} /private/notes/callouts/
|
/private/notes/CJK-+-Latex-Support-%E6%B5%8B%E8%AF%95/index.{html} /private/notes/CJK-+-Latex-Support-%E6%B5%8B%E8%AF%95/
|
||||||
/private/notes/hosting/index.{html} /private/notes/hosting/
|
/private/notes/custom-Domain/index.{html} /private/notes/custom-Domain/
|
||||||
/private/notes/preview-changes/index.{html} /private/notes/preview-changes/
|
/roles/distributed-systems-researcher/index.{html} /roles/distributed-systems-researcher/
|
||||||
/private/notes/troubleshooting/index.{html} /private/notes/troubleshooting/
|
/private/notes/search/index.{html} /private/notes/search/
|
||||||
/roadmap/consensus/candidates/carnot/FAQ/index.{html} /roadmap/consensus/candidates/carnot/FAQ/
|
/private/notes/updating/index.{html} /private/notes/updating/
|
||||||
/roadmap/consensus/development/overview/index.{html} /roadmap/consensus/development/overview/
|
/private/notes/setup/index.{html} /private/notes/setup/
|
||||||
/roadmap/networking/status-waku-kurtosis/index.{html} /roadmap/networking/status-waku-kurtosis/
|
/roadmap/networking/status-waku-kurtosis/index.{html} /roadmap/networking/status-waku-kurtosis/
|
||||||
/roadmap/virtual-machines/overview/index.{html} /roadmap/virtual-machines/overview/
|
/roadmap/virtual-machines/overview/index.{html} /roadmap/virtual-machines/overview/
|
||||||
/private/notes/search/index.{html} /private/notes/search/
|
/private/notes/callouts/index.{html} /private/notes/callouts/
|
||||||
/private/notes/setup/index.{html} /private/notes/setup/
|
/private/notes/hosting/index.{html} /private/notes/hosting/
|
||||||
/private/notes/showcase/index.{html} /private/notes/showcase/
|
/private/notes/editing/index.{html} /private/notes/editing/
|
||||||
/roadmap/networking/carnot-waku-specification/index.{html} /roadmap/networking/carnot-waku-specification/
|
/private/notes/ignore-notes/index.{html} /private/notes/ignore-notes/
|
||||||
|
/private/notes/obsidian/index.{html} /private/notes/obsidian/
|
||||||
|
/requirements/overview/index.{html} /requirements/overview/
|
||||||
|
/roadmap/consensus/development/overview/index.{html} /roadmap/consensus/development/overview/
|
||||||
|
/index.html /
|
||||||
|
/private/notes/config/index.{html} /private/notes/config/
|
||||||
|
/roadmap/consensus/overview/index.{html} /roadmap/consensus/overview/
|
||||||
|
/roadmap/consensus/theory/snow-family/index.{html} /roadmap/consensus/theory/snow-family/
|
||||||
/roadmap/networking/status-network-agents/index.{html} /roadmap/networking/status-network-agents/
|
/roadmap/networking/status-network-agents/index.{html} /roadmap/networking/status-network-agents/
|
||||||
|
/private/notes/troubleshooting/index.{html} /private/notes/troubleshooting/
|
||||||
|
/roadmap/consensus/candidates/carnot/FAQ/index.{html} /roadmap/consensus/candidates/carnot/FAQ/
|
||||||
|
/roadmap/networking/carnot-waku-specification/index.{html} /roadmap/networking/carnot-waku-specification/
|
||||||
|
/roadmap/networking/overview/index.{html} /roadmap/networking/overview/
|
||||||
|
/roles/zero-knowledge-research-engineer/index.{html} /roles/zero-knowledge-research-engineer/
|
||||||
|
/private/notes/philosophy/index.{html} /private/notes/philosophy/
|
||||||
|
/private/notes/showcase/index.{html} /private/notes/showcase/
|
||||||
|
/roadmap/consensus/theory/overview/index.{html} /roadmap/consensus/theory/overview/
|
||||||
/roles/rust-developer/index.{html} /roles/rust-developer/
|
/roles/rust-developer/index.{html} /roles/rust-developer/
|
||||||
|
/roadmap/consensus/candidates/carnot/overview/index.{html} /roadmap/consensus/candidates/carnot/overview/
|
||||||
|
/roadmap/consensus/development/prototypes/index.{html} /roadmap/consensus/development/prototypes/
|
||||||
|
/private/notes/preview-changes/index.{html} /private/notes/preview-changes/
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -103,7 +103,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -230,7 +230,7 @@
|
||||||
<h1>Frequently Asked Questions</h1>
|
<h1>Frequently Asked Questions</h1>
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
Last updated
|
Last updated
|
||||||
Nov 28, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -256,6 +256,12 @@ Nov 28, 2022
|
||||||
<li><a href="#what-assumptions-do-we-need-waku-to-fulfill---corey">What assumptions do we need Waku to fulfill? - Corey</a></li>
|
<li><a href="#what-assumptions-do-we-need-waku-to-fulfill---corey">What assumptions do we need Waku to fulfill? - Corey</a></li>
|
||||||
</ol>
|
</ol>
|
||||||
</li>
|
</li>
|
||||||
|
<li><a href="#tradeoffs">Tradeoffs</a>
|
||||||
|
<ol>
|
||||||
|
<li><a href="#i-think-the-main-clear-disadvantage-of-such-a-scheme-is-the-added-latency-of-the-multiple-layers---alvaro">I think the main clear disadvantage of such a scheme is the added latency of the multiple layers. - Alvaro</a></li>
|
||||||
|
</ol>
|
||||||
|
</li>
|
||||||
|
<li><a href="#how-would-you-compare-aptos-and-carnot---alvaro">How would you compare Aptos and Carnot? - Alvaro</a></li>
|
||||||
<li><a href="#data-distribution">Data Distribution</a>
|
<li><a href="#data-distribution">Data Distribution</a>
|
||||||
<ol>
|
<ol>
|
||||||
<li><a href="#how-much-failure-rate-of-erasure-code-transmission-are-we-expecting-basically-what-are-the-ec-coding-parameters-that-we-expect-to-be-sending-such-that-we-have-some-failure-rate-of-transmission-has-that-been-looked-into---dmitriy">How much failure rate of erasure code transmission are we expecting. Basically, what are the EC coding parameters that we expect to be sending such that we have some failure rate of transmission? Has that been looked into? - Dmitriy</a></li>
|
<li><a href="#how-much-failure-rate-of-erasure-code-transmission-are-we-expecting-basically-what-are-the-ec-coding-parameters-that-we-expect-to-be-sending-such-that-we-have-some-failure-rate-of-transmission-has-that-been-looked-into---dmitriy">How much failure rate of erasure code transmission are we expecting. Basically, what are the EC coding parameters that we expect to be sending such that we have some failure rate of transmission? Has that been looked into? - Dmitriy</a></li>
|
||||||
|
@ -276,11 +282,14 @@ Nov 28, 2022
|
||||||
<ol>
|
<ol>
|
||||||
<li><a href="#can-we-also-consider-a-flavor-that-adds-attestationattribution-to-misbehaving-nodes-that-will-come-at-a-price-but-there-might-be-a-set-of-use-cases-which-would-like-to-have-lower-performance-with-strong-attribution-not-saying-that-it-must-be-part-of-the-initial-design-but-can-be-think-throughadded-later---marcin">Can we also consider a flavor that adds attestation/attribution to misbehaving nodes? That will come at a price but there might be a set of use cases which would like to have lower performance with strong attribution. Not saying that it must be part of the initial design, but can be think-through/added later. - Marcin</a></li>
|
<li><a href="#can-we-also-consider-a-flavor-that-adds-attestationattribution-to-misbehaving-nodes-that-will-come-at-a-price-but-there-might-be-a-set-of-use-cases-which-would-like-to-have-lower-performance-with-strong-attribution-not-saying-that-it-must-be-part-of-the-initial-design-but-can-be-think-throughadded-later---marcin">Can we also consider a flavor that adds attestation/attribution to misbehaving nodes? That will come at a price but there might be a set of use cases which would like to have lower performance with strong attribution. Not saying that it must be part of the initial design, but can be think-through/added later. - Marcin</a></li>
|
||||||
<li><a href="#also-how-do-you-reward-online-validators--punish-offline-ones-if-you-cant-prove-at-the-block-level-that-someone-attested-or-not---tanguy">Also, how do you reward online validators / punish offline ones if you can’t prove at the block level that someone attested or not? - Tanguy</a></li>
|
<li><a href="#also-how-do-you-reward-online-validators--punish-offline-ones-if-you-cant-prove-at-the-block-level-that-someone-attested-or-not---tanguy">Also, how do you reward online validators / punish offline ones if you can’t prove at the block level that someone attested or not? - Tanguy</a></li>
|
||||||
|
<li><a href="#doesnt-having-randomly-distributed-malicious-nodes-say-there-is-a-20-increase-the-odds-that-over-a-third-of-a-committee-end-up-being-from-those-malicious-ones-it-seems-intuitive-since-a-20-at-the-global-scale-is-always-13-but-when-randomly-distributed-there-is-always-non-zero-chance-they-end-up-in-a-single-group-thus-affecting-liveness-more-and-more-the-closer-we-get-to-that-global-13-consequently-if-im-understanding-the-algorithm-correctly-it-would-have-worse-liveness-guarantees-that-classical-pbft-say-with-a-randomly-selected-commitee-from-the-total-set----alvaro">doesn’t having randomly distributed malicious nodes (say there is a 20%) increase the odds that over a third of a committee end up being from those malicious ones? It seems intuitive: since a 20% at the global scale is always <1/3, but when randomly distributed there is always non-zero chance they end up in a single group, thus affecting liveness more and more the closer we get to that global 1/3. Consequently, if I’m understanding the algorithm correctly, it would have worse liveness guarantees that classical pBFT, say with a randomly-selected commitee from the total set. - Alvaro</a></li>
|
||||||
|
<li><a href="#what-happens-in-carnot-when-one-committee-is-taken-over-by-13-intra-comm-byzantine-nodes---alvaro">What happens in Carnot when one committee is taken over by >1/3 intra-comm byzantine nodes? - Alvaro</a></li>
|
||||||
</ol>
|
</ol>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="#synchronicity">Synchronicity</a>
|
<li><a href="#synchronicity">Synchronicity</a>
|
||||||
<ol>
|
<ol>
|
||||||
<li><a href="#how-to-guarantee-synchronicity-in-particular-how-to-avoid-that-in-a-big-network-different-nodes-see-a-proposal-with-2c1-votes-but-different-votes-and-thus-different-random-seed---giacomo">How to guarantee synchronicity. In particular how to avoid that in a big network different nodes see a proposal with 2c+1 votes but different votes and thus different random seed - Giacomo</a></li>
|
<li><a href="#how-to-guarantee-synchronicity-in-particular-how-to-avoid-that-in-a-big-network-different-nodes-see-a-proposal-with-2c1-votes-but-different-votes-and-thus-different-random-seed---giacomo">How to guarantee synchronicity. In particular how to avoid that in a big network different nodes see a proposal with 2c+1 votes but different votes and thus different random seed - Giacomo</a></li>
|
||||||
|
<li><a href="#thats-a-timeout-how-does-this-work-exactly-without-timing-assumptions-trying-to-find-this-in-the-document--alvaro">That’s a timeout? How does this work exactly without timing assumptions? Trying to find this in the document -Alvaro</a></li>
|
||||||
</ol>
|
</ol>
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
@ -412,6 +421,104 @@ Nov 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -444,6 +551,37 @@ Nov 28, 2022
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p><strong>Definition 4</strong> (Probabilistic Fulfillment). <em>After the GST, and when the current and previous leaders are correct, the number of votes collected by teh current leader is $2c+1$ (w.h.p).</em></p>
|
<p><strong>Definition 4</strong> (Probabilistic Fulfillment). <em>After the GST, and when the current and previous leaders are correct, the number of votes collected by teh current leader is $2c+1$ (w.h.p).</em></p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
<a href="#tradeoffs"><h2 id="tradeoffs"><span class="hanchor" ariaLabel="Anchor"># </span>Tradeoffs</h2></a>
|
||||||
|
<a href="#i-think-the-main-clear-disadvantage-of-such-a-scheme-is-the-added-latency-of-the-multiple-layers---alvaro"><h3 id="i-think-the-main-clear-disadvantage-of-such-a-scheme-is-the-added-latency-of-the-multiple-layers---alvaro"><span class="hanchor" ariaLabel="Anchor"># </span>I think the main clear disadvantage of such a scheme is the added latency of the multiple layers. - Alvaro</h3></a>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> The added latency will be O(log(n/C)), where C is the committee size. But I guess it will be hard to avoid it. Though it also depends on how fast the network layer (potentially Waku) propagats msgs and also on execution time of the transaction as well.</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Alvaro:</code> Well IIUC the only latency we are introducing is directly proportional to the levels of subcommitee nesting (ie the log(n/C)), which is understandably the price to pay. We have to make sure though that what we gain by introducing this is really worth the extra cost vs the typical comittee formation via randao or perhaps VDFs</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> Again the Typical committee formation with randao can reduce their wait time value to match our latency, but then it becomes vulnerable and fail if the network latency becomes greater than their slot interval. If they keep it too large it may not fail but becomes slow. We won’t have that problem. If an adversary has the power to slow down the network then their liveness will fail, whereas we won’t have that issue.</p>
|
||||||
|
</blockquote>
|
||||||
|
<a href="#how-would-you-compare-aptos-and-carnot---alvaro"><h2 id="how-would-you-compare-aptos-and-carnot---alvaro"><span class="hanchor" ariaLabel="Anchor"># </span>How would you compare Aptos and Carnot? - Alvaro</h2></a>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> It is variant of DiemBFT, Sui is based on Nahrwal, both cannot scale to more than few hunderd of nodes. That is why they achieve that low latency.</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Alvaro:</code> Yes, so they need to select a committee of that size in order to operate at that latency What’s wrong with selecting a committee vs Carnot’s solution? This I’m asking genuinely to understand and because everyone will ask this question when we release.</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> When you select a committee you have to wait for a time slot to make sure the result of consensus has propagated. Again strong synchrony assumption (slot time), formation of forks, increase in PoS attack vector come into play
|
||||||
|
Within committee the protocol does not need a wait time but for its results to get propagated if scalability is to be achieved, then wait time has to be added or signatures have to be collected from thousands of nodes.</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Alvaro:</code> Can you elaborate?</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> Ethereum (and any other protocol who runs the consensus in a single committee selected from a large group on nodes) has wait time so that the output of the consenus propagates to all honest nodes before the next committee is selected. Else the next committee will fail or only forks will be formed and chain length won’t increase. But since this wait time as stated, increases latency, makes the protocol vulnerable, Ethereum wants to avoid it to achieve responsivess. To avoid wait time (add responsiveness) a protocol has to collect attestation signatures from 2/3rd of all nodes (not a single committee) to move to the second round (Carnot is already responsive). But aggregating and verifying signatures thousands of signatures is expensive and time consuming. This is why they are working to improve BLS signatures. Instead we have changed the consensus protocol in such a way that a small number of signatures need to be aggregated and verified to achieve responsiveness and fast finality. We can further improve performance by using the improved BLS signatures.</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p>One cannot achieve fast finality while running the consensus in a small committee. Because attestation of a Block within the single committee is not enough. This block can be averted if the leader of the next committee has not seen it. Therefore, there should be enough delay so that all honest nodes can see it. This is why we have this wait/slot time. Another issue can be a malicious leader from the next chosen committee can also avert a block of honest leader and hence preventing honest leaders from getting rewards. If blocks of honest leaders are averted for long time, stake of malicious leaders will increase. Moreover, malicious leaders can delay blocks of honest nodes by making fork and averting them. Addressing these issues will further make the protocol complex, while still laking fast finality.</p>
|
||||||
|
</blockquote>
|
||||||
<a href="#data-distribution"><h2 id="data-distribution"><span class="hanchor" ariaLabel="Anchor"># </span>Data Distribution</h2></a>
|
<a href="#data-distribution"><h2 id="data-distribution"><span class="hanchor" ariaLabel="Anchor"># </span>Data Distribution</h2></a>
|
||||||
<a href="#how-much-failure-rate-of-erasure-code-transmission-are-we-expecting-basically-what-are-the-ec-coding-parameters-that-we-expect-to-be-sending-such-that-we-have-some-failure-rate-of-transmission-has-that-been-looked-into---dmitriy"><h3 id="how-much-failure-rate-of-erasure-code-transmission-are-we-expecting-basically-what-are-the-ec-coding-parameters-that-we-expect-to-be-sending-such-that-we-have-some-failure-rate-of-transmission-has-that-been-looked-into---dmitriy"><span class="hanchor" ariaLabel="Anchor"># </span>How much failure rate of erasure code transmission are we expecting. Basically, what are the EC coding parameters that we expect to be sending such that we have some failure rate of transmission? Has that been looked into? - Dmitriy</h3></a>
|
<a href="#how-much-failure-rate-of-erasure-code-transmission-are-we-expecting-basically-what-are-the-ec-coding-parameters-that-we-expect-to-be-sending-such-that-we-have-some-failure-rate-of-transmission-has-that-been-looked-into---dmitriy"><h3 id="how-much-failure-rate-of-erasure-code-transmission-are-we-expecting-basically-what-are-the-ec-coding-parameters-that-we-expect-to-be-sending-such-that-we-have-some-failure-rate-of-transmission-has-that-been-looked-into---dmitriy"><span class="hanchor" ariaLabel="Anchor"># </span>How much failure rate of erasure code transmission are we expecting. Basically, what are the EC coding parameters that we expect to be sending such that we have some failure rate of transmission? Has that been looked into? - Dmitriy</h3></a>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
|
@ -484,6 +622,20 @@ Nov 28, 2022
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>An honest node should wait for a specific number of children votes (to make sure everyone is voting on the same proposal) before voting but does not need to provide any cryptographic proof. Though we build a threshold signature from root committee members and it’s children but not from the whole tree. As long as enough number of nodes follow the the protocol we should be fine. I am working on protocol proofs. Also I think bugs should be discovered during development and testing phase. Changing protocol to detect potential bug might not be a good practice.</p>
|
<p>An honest node should wait for a specific number of children votes (to make sure everyone is voting on the same proposal) before voting but does not need to provide any cryptographic proof. Though we build a threshold signature from root committee members and it’s children but not from the whole tree. As long as enough number of nodes follow the the protocol we should be fine. I am working on protocol proofs. Also I think bugs should be discovered during development and testing phase. Changing protocol to detect potential bug might not be a good practice.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
<a href="#doesnt-having-randomly-distributed-malicious-nodes-say-there-is-a-20-increase-the-odds-that-over-a-third-of-a-committee-end-up-being-from-those-malicious-ones-it-seems-intuitive-since-a-20-at-the-global-scale-is-always-13-but-when-randomly-distributed-there-is-always-non-zero-chance-they-end-up-in-a-single-group-thus-affecting-liveness-more-and-more-the-closer-we-get-to-that-global-13-consequently-if-im-understanding-the-algorithm-correctly-it-would-have-worse-liveness-guarantees-that-classical-pbft-say-with-a-randomly-selected-commitee-from-the-total-set----alvaro"><h3 id="doesnt-having-randomly-distributed-malicious-nodes-say-there-is-a-20-increase-the-odds-that-over-a-third-of-a-committee-end-up-being-from-those-malicious-ones-it-seems-intuitive-since-a-20-at-the-global-scale-is-always-13-but-when-randomly-distributed-there-is-always-non-zero-chance-they-end-up-in-a-single-group-thus-affecting-liveness-more-and-more-the-closer-we-get-to-that-global-13-consequently-if-im-understanding-the-algorithm-correctly-it-would-have-worse-liveness-guarantees-that-classical-pbft-say-with-a-randomly-selected-commitee-from-the-total-set----alvaro"><span class="hanchor" ariaLabel="Anchor"># </span>doesn’t having randomly distributed malicious nodes (say there is a 20%) increase the odds that over a third of a committee end up being from those malicious ones? It seems intuitive: since a 20% at the global scale is always <1/3, but when randomly distributed there is always non-zero chance they end up in a single group, thus affecting liveness more and more the closer we get to that global 1/3. Consequently, if I’m understanding the algorithm correctly, it would have worse liveness guarantees that classical pBFT, say with a randomly-selected commitee from the total set. - Alvaro</h3></a>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Alexander:</code> We assume that fraction of malicious nodes is $1/4$ and given we chooses comm. sizes, which will depend on total number of nodes, appropriately this guarantees that with high probability we are below $1/3$ in each committee.</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Alvaro:</code> ok, but then both the global guarantee is below that current “standard” of 1/3 of malicious nodes and even then we are talking about non-zero probabilities that a comm has the power to slow down consensus via requiring reformation of comms (is this right?)</p>
|
||||||
|
</blockquote>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Alexander:</code> This is the price we pay to improve scalability. Also these probabilities of failure can be very low.</p>
|
||||||
|
</blockquote>
|
||||||
|
<a href="#what-happens-in-carnot-when-one-committee-is-taken-over-by-13-intra-comm-byzantine-nodes---alvaro"><h3 id="what-happens-in-carnot-when-one-committee-is-taken-over-by-13-intra-comm-byzantine-nodes---alvaro"><span class="hanchor" ariaLabel="Anchor"># </span>What happens in Carnot when one committee is taken over by >1/3 intra-comm byzantine nodes? - Alvaro</h3></a>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> When there is a failure the overlay is recalculated. By gradually increasing the fault tolerance by a small value, the probability of failure of a committee slightly increases but upon recalculating the correct overlay, inactive nodes that caused the failure of previous overlay (when no committee has more than 1/3 Byzantine nodes) will be slashed.</p>
|
||||||
|
</blockquote>
|
||||||
<a href="#synchronicity"><h2 id="synchronicity"><span class="hanchor" ariaLabel="Anchor"># </span>Synchronicity</h2></a>
|
<a href="#synchronicity"><h2 id="synchronicity"><span class="hanchor" ariaLabel="Anchor"># </span>Synchronicity</h2></a>
|
||||||
<a href="#how-to-guarantee-synchronicity-in-particular-how-to-avoid-that-in-a-big-network-different-nodes-see-a-proposal-with-2c1-votes-but-different-votes-and-thus-different-random-seed---giacomo"><h3 id="how-to-guarantee-synchronicity-in-particular-how-to-avoid-that-in-a-big-network-different-nodes-see-a-proposal-with-2c1-votes-but-different-votes-and-thus-different-random-seed---giacomo"><span class="hanchor" ariaLabel="Anchor"># </span>How to guarantee synchronicity. In particular how to avoid that in a big network different nodes see a proposal with 2c+1 votes but different votes and thus different random seed - Giacomo</h3></a>
|
<a href="#how-to-guarantee-synchronicity-in-particular-how-to-avoid-that-in-a-big-network-different-nodes-see-a-proposal-with-2c1-votes-but-different-votes-and-thus-different-random-seed---giacomo"><h3 id="how-to-guarantee-synchronicity-in-particular-how-to-avoid-that-in-a-big-network-different-nodes-see-a-proposal-with-2c1-votes-but-different-votes-and-thus-different-random-seed---giacomo"><span class="hanchor" ariaLabel="Anchor"># </span>How to guarantee synchronicity. In particular how to avoid that in a big network different nodes see a proposal with 2c+1 votes but different votes and thus different random seed - Giacomo</h3></a>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
|
@ -494,6 +646,10 @@ Nov 28, 2022
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>Moreover, votes travel one level at a time from tree leaves to the tree root. We only need the proof of votes of root+child committees to conclude with a high probability that the majority of nodes have voted.</p>
|
<p>Moreover, votes travel one level at a time from tree leaves to the tree root. We only need the proof of votes of root+child committees to conclude with a high probability that the majority of nodes have voted.</p>
|
||||||
|
</blockquote>
|
||||||
|
<a href="#thats-a-timeout-how-does-this-work-exactly-without-timing-assumptions-trying-to-find-this-in-the-document--alvaro"><h3 id="thats-a-timeout-how-does-this-work-exactly-without-timing-assumptions-trying-to-find-this-in-the-document--alvaro"><span class="hanchor" ariaLabel="Anchor"># </span>That’s a timeout? How does this work exactly without timing assumptions? Trying to find this in the document -Alvaro</h3></a>
|
||||||
|
<blockquote>
|
||||||
|
<p><code>Moh:</code> Each committee only verifies the votes of its child committees. Once a verified 2/3rd votes of its child members, it then sends it vote to its parent. In this way each layer of the tree verifies the votes (attests) the layer below. Thus, a node does not have to collect and verify 2/3rd of all thousands of votes (as done in other responsive BFTs) but only from its child nodes.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -230,7 +230,7 @@
|
||||||
<h1>Carnot Overview</h1>
|
<h1>Carnot Overview</h1>
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
Last updated
|
Last updated
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -308,7 +308,14 @@ Nov 29, 2022
|
||||||
<a
|
<a
|
||||||
|
|
||||||
rel="noopener" class="internal-link broken"
|
rel="noopener" class="internal-link broken"
|
||||||
data-src="roadmap/consensus/index">consensus</a> candidate for the Nomos Network that utilizes Fountain Codes and a committees tree structure to optimize message propagation in the presence of a large number of nodes, while maintaining high througput and fast finality.</p>
|
data-src="roadmap/consensus/index">consensus</a> candidate for the Nomos Network that utilizes Fountain Codes and a committees tree structure to optimize message propagation in the presence of a large number of nodes, while maintaining high througput and fast finality. More specifically, these are the research contributions in Carnot. To our knowledge, Carnot is the first consensus protocol that can achieve together all of these properties:</p>
|
||||||
|
<ol>
|
||||||
|
<li>Scalability: Carnot is highly scalable, scaling to thousands of nodes.</li>
|
||||||
|
<li>Responsiveness: The ability of a protocol to operate with the speed of a wire but not a maximum delay (block delay, slot time, etc.) is called responsiveness. Responsiveness reduces latency and helps the Carnot achieve Fast Finality. Moreover, it improves Carnot’s resilience against adversaries that can slow down network traffic.</li>
|
||||||
|
<li>Fork avoidance: Carnot avoids the formation of forks in a happy path. Forks formation has the following adverse consequences that the Carnot avoids.</li>
|
||||||
|
<li>Wastage of resources on orphan blocks and reduced throughput with increased latency for transactions in orphan blocks</li>
|
||||||
|
<li>Increased attack vector on PoS as attackers can employ a strategy to force the network to accept their fork resulting in increased stake for adversaries.</li>
|
||||||
|
</ol>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -103,7 +103,7 @@ Tiny Node Required Roles Lead Developer (filled) "
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -233,6 +233,48 @@
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
Jan 3, 2023
|
Jan 3, 2023
|
||||||
|
|
||||||
|
|
||||||
|
@ -357,48 +399,6 @@ Nov 29, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 28, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Aug 19, 2022
|
Aug 19, 2022
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -103,7 +103,7 @@ Waku Waku is an privacy-preserving, ephemeral, peer-to-peer (P2P) messaging sui
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -103,7 +103,7 @@ With the high level goals of preserving the right to privacy, mitigating the ris
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -105,7 +105,7 @@ Status is an organization building the tools and infrastructure for the advancem
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -105,7 +105,7 @@ Status is building the tools and infrastructure for the advancement of a secure,
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
14
sitemap.xml
14
sitemap.xml
|
@ -9,13 +9,13 @@
|
||||||
<lastmod>2022-11-30T14:45:02-05:00</lastmod>
|
<lastmod>2022-11-30T14:45:02-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/tags/candidate/</loc>
|
<loc>https://roadmap.logos.co/tags/candidate/</loc>
|
||||||
<lastmod>2022-11-29T15:20:11-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/tags/Carnot/</loc>
|
<loc>https://roadmap.logos.co/tags/Carnot/</loc>
|
||||||
<lastmod>2022-11-30T14:45:02-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/</loc>
|
||||||
<lastmod>2022-11-29T15:20:11-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/categories/</loc>
|
<loc>https://roadmap.logos.co/categories/</loc>
|
||||||
</url><url>
|
</url><url>
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
<lastmod>2022-11-29T15:20:11-05:00</lastmod>
|
<lastmod>2022-11-29T15:20:11-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/tags/consensus/</loc>
|
<loc>https://roadmap.logos.co/tags/consensus/</loc>
|
||||||
<lastmod>2022-11-30T14:45:02-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/consensus/development/prototypes/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/development/prototypes/</loc>
|
||||||
<lastmod>2022-11-29T15:20:11-05:00</lastmod>
|
<lastmod>2022-11-29T15:20:11-05:00</lastmod>
|
||||||
|
@ -47,7 +47,7 @@
|
||||||
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/</loc>
|
||||||
<lastmod>2022-11-28T19:57:03-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/requirements/overview/</loc>
|
<loc>https://roadmap.logos.co/requirements/overview/</loc>
|
||||||
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
||||||
|
@ -74,7 +74,7 @@
|
||||||
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/</loc>
|
<loc>https://roadmap.logos.co/roadmap/</loc>
|
||||||
<lastmod>2023-01-03T15:41:43-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/tags/role/</loc>
|
<loc>https://roadmap.logos.co/tags/role/</loc>
|
||||||
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
||||||
|
@ -104,7 +104,7 @@
|
||||||
<lastmod>2022-12-01T13:50:44-05:00</lastmod>
|
<lastmod>2022-12-01T13:50:44-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/tags/</loc>
|
<loc>https://roadmap.logos.co/tags/</loc>
|
||||||
<lastmod>2023-01-03T15:41:43-05:00</lastmod>
|
<lastmod>2023-02-02T16:39:13-05:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/consensus/theory/snow-family/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/theory/snow-family/</loc>
|
||||||
<lastmod>2022-11-16T09:33:46-05:00</lastmod>
|
<lastmod>2022-11-16T09:33:46-05:00</lastmod>
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -257,7 +257,7 @@ Nov 30, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -279,7 +279,7 @@ Nov 29, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 28, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -233,7 +233,7 @@
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -257,7 +257,7 @@ Nov 30, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -379,7 +379,7 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 28, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
210
tags/index.html
210
tags/index.html
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -240,6 +240,48 @@
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
Nov 30, 2022
|
Nov 30, 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -324,48 +366,6 @@ Nov 29, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 28, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 16, 2022
|
Nov 16, 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -660,6 +660,28 @@ Nov 30, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Nov 29, 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -676,13 +698,42 @@ Nov 29, 2022
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/claro/">Claro</a></li>
|
<li><a href="https://roadmap.logos.co/tags/claro/">Claro</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li></ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="meta">
|
||||||
|
<h1><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></h1>
|
||||||
|
<p><b>2</b> notes with this tag </p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ul class="section-ul"><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li><li class="section-li">
|
</li><li class="section-li">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -700,16 +751,7 @@ Nov 29, 2022
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li></ul>
|
</li><li class="section-li">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="meta">
|
|
||||||
<h1><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></h1>
|
|
||||||
<p><b>2</b> notes with this tag </p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<ul class="section-ul"><li class="section-li">
|
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
@ -731,48 +773,6 @@ Nov 30, 2022
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 29, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/overview/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/overview/">Carnot Overview</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/candidate/">Candidate</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li><li class="section-li">
|
|
||||||
<div class="section">
|
|
||||||
<p class="meta">
|
|
||||||
|
|
||||||
Nov 28, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li></ul>
|
</li></ul>
|
||||||
|
@ -1000,22 +1000,18 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 30, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
<div class="desc">
|
<div class="desc">
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/networking/carnot-waku-specification/" class="internal-link" data-src="/roadmap/networking/carnot-waku-specification/">A Specification proposal for using Waku for Carnot Consensus</a></h3>
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="spacer"></div>
|
<div class="spacer"></div>
|
||||||
<ul class="tags">
|
<ul class="tags">
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/waku/">Waku</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/networking/">Networking</a></li>
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -1024,7 +1020,7 @@ Nov 30, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 29, 2022
|
Feb 2, 2023
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -1046,18 +1042,22 @@ Nov 29, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Nov 28, 2022
|
Nov 30, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
<div class="desc">
|
<div class="desc">
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/carnot/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/carnot/FAQ/">Frequently Asked Questions</a></h3>
|
<h3><a href="https://roadmap.logos.co/roadmap/networking/carnot-waku-specification/" class="internal-link" data-src="/roadmap/networking/carnot-waku-specification/">A Specification proposal for using Waku for Carnot Consensus</a></h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="spacer"></div>
|
<div class="spacer"></div>
|
||||||
<ul class="tags">
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/waku/">Waku</a></li>
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
<li><a href="https://roadmap.logos.co/tags/Carnot/">Carnot</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/networking/">Networking</a></li>
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.a6e7ed4e82869b814f0c150b1a996998.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.404486eb6c35c315436590933c3a03cc.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
Loading…
Reference in New Issue