mirror of https://github.com/logos-co/roadmap.git
Update documentation
This commit is contained in:
parent
aff7c29a6d
commit
674fbfe4b8
4
404.html
4
404.html
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -251,27 +251,7 @@ if (!doNotTrack) {
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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">
|
|
||||||
|
|
||||||
Oct 26, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -293,6 +273,26 @@ Oct 26, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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
|
||||||
|
|
||||||
|
|
||||||
|
@ -491,7 +491,7 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -644,27 +644,7 @@ Oct 26, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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">
|
|
||||||
|
|
||||||
Oct 26, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -680,6 +660,26 @@ Oct 26, 2022
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</a></li>
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li></ul>
|
</li></ul>
|
||||||
|
|
|
@ -97,13 +97,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -76,7 +76,7 @@ Required Roles Lead Developer (filled) </description>
|
||||||
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
||||||
|
|
||||||
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
||||||
<description>Logos BFT is a consensus candidate for the Logos Network that utilizes Network Coding and Committees to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security.</description>
|
<description>Logos BFT is a consensus candidate for the Logos 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.</description>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
<item>
|
<item>
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
34
linkmap
34
linkmap
|
@ -1,29 +1,29 @@
|
||||||
/roadmap/consensus/development/overview/index.{html} /roadmap/consensus/development/overview/
|
/roadmap/consensus/development/overview/index.{html} /roadmap/consensus/development/overview/
|
||||||
/roadmap/virtual-machines/overview/index.{html} /roadmap/virtual-machines/overview/
|
/roadmap/consensus/development/prototypes/index.{html} /roadmap/consensus/development/prototypes/
|
||||||
|
/roadmap/consensus/candidates/logos-bft/overview/index.{html} /roadmap/consensus/candidates/logos-bft/overview/
|
||||||
/roles/distributed-systems-researcher/index.{html} /roles/distributed-systems-researcher/
|
/roles/distributed-systems-researcher/index.{html} /roles/distributed-systems-researcher/
|
||||||
/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/callouts/index.{html} /private/notes/callouts/
|
||||||
/private/notes/updating/index.{html} /private/notes/updating/
|
/private/notes/troubleshooting/index.{html} /private/notes/troubleshooting/
|
||||||
/private/notes/ignore-notes/index.{html} /private/notes/ignore-notes/
|
|
||||||
/roadmap/consensus/candidates/glacier/index.{html} /roadmap/consensus/candidates/glacier/
|
/roadmap/consensus/candidates/glacier/index.{html} /roadmap/consensus/candidates/glacier/
|
||||||
/roadmap/consensus/candidates/logos-bft/FAQ/index.{html} /roadmap/consensus/candidates/logos-bft/FAQ/
|
/roadmap/consensus/candidates/logos-bft/FAQ/index.{html} /roadmap/consensus/candidates/logos-bft/FAQ/
|
||||||
/roadmap/consensus/development/prototypes/index.{html} /roadmap/consensus/development/prototypes/
|
|
||||||
/roadmap/consensus/overview/index.{html} /roadmap/consensus/overview/
|
|
||||||
/roadmap/consensus/theory/snow-family/index.{html} /roadmap/consensus/theory/snow-family/
|
/roadmap/consensus/theory/snow-family/index.{html} /roadmap/consensus/theory/snow-family/
|
||||||
|
/roadmap/virtual-machines/overview/index.{html} /roadmap/virtual-machines/overview/
|
||||||
/index.html /
|
/index.html /
|
||||||
/private/notes/hosting/index.{html} /private/notes/hosting/
|
/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/search/index.{html} /private/notes/search/
|
/private/notes/showcase/index.{html} /private/notes/showcase/
|
||||||
|
/private/notes/preview-changes/index.{html} /private/notes/preview-changes/
|
||||||
/private/notes/setup/index.{html} /private/notes/setup/
|
/private/notes/setup/index.{html} /private/notes/setup/
|
||||||
/roadmap/consensus/theory/overview/index.{html} /roadmap/consensus/theory/overview/
|
/roadmap/consensus/theory/overview/index.{html} /roadmap/consensus/theory/overview/
|
||||||
/roles/zero-knowledge-research-engineer/index.{html} /roles/zero-knowledge-research-engineer/
|
|
||||||
/private/notes/custom-Domain/index.{html} /private/notes/custom-Domain/
|
|
||||||
/requirements/overview/index.{html} /requirements/overview/
|
|
||||||
/private/notes/troubleshooting/index.{html} /private/notes/troubleshooting/
|
|
||||||
/roles/rust-developer/index.{html} /roles/rust-developer/
|
/roles/rust-developer/index.{html} /roles/rust-developer/
|
||||||
/private/notes/callouts/index.{html} /private/notes/callouts/
|
/roles/zero-knowledge-research-engineer/index.{html} /roles/zero-knowledge-research-engineer/
|
||||||
/private/notes/config/index.{html} /private/notes/config/
|
/private/notes/config/index.{html} /private/notes/config/
|
||||||
/private/notes/philosophy/index.{html} /private/notes/philosophy/
|
|
||||||
/private/notes/preview-changes/index.{html} /private/notes/preview-changes/
|
|
||||||
/private/notes/showcase/index.{html} /private/notes/showcase/
|
|
||||||
/roadmap/consensus/candidates/logos-bft/overview/index.{html} /roadmap/consensus/candidates/logos-bft/overview/
|
|
||||||
/private/notes/editing/index.{html} /private/notes/editing/
|
/private/notes/editing/index.{html} /private/notes/editing/
|
||||||
|
/private/notes/philosophy/index.{html} /private/notes/philosophy/
|
||||||
|
/roadmap/consensus/overview/index.{html} /roadmap/consensus/overview/
|
||||||
|
/private/notes/custom-Domain/index.{html} /private/notes/custom-Domain/
|
||||||
|
/private/notes/ignore-notes/index.{html} /private/notes/ignore-notes/
|
||||||
/private/notes/obsidian/index.{html} /private/notes/obsidian/
|
/private/notes/obsidian/index.{html} /private/notes/obsidian/
|
||||||
|
/requirements/overview/index.{html} /requirements/overview/
|
||||||
|
/private/notes/hosting/index.{html} /private/notes/hosting/
|
||||||
|
/private/notes/search/index.{html} /private/notes/search/
|
||||||
|
/private/notes/updating/index.{html} /private/notes/updating/
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -97,13 +97,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -241,7 +241,7 @@ if (!doNotTrack) {
|
||||||
<h1>Frequently Asked Questions</h1>
|
<h1>Frequently Asked Questions</h1>
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
Last updated
|
Last updated
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -409,7 +409,7 @@ Oct 26, 2022
|
||||||
<a href="#network-scale"><h2 id="network-scale"><span class="hanchor" ariaLabel="Anchor"># </span>Network Scale</h2></a>
|
<a href="#network-scale"><h2 id="network-scale"><span class="hanchor" ariaLabel="Anchor"># </span>Network Scale</h2></a>
|
||||||
<a href="#what-is-our-expected-minimum-number-of-nodes-within-the-network---dmitriy"><h3 id="what-is-our-expected-minimum-number-of-nodes-within-the-network---dmitriy"><span class="hanchor" ariaLabel="Anchor"># </span>What is our expected minimum number of nodes within the network? - Dmitriy</h3></a>
|
<a href="#what-is-our-expected-minimum-number-of-nodes-within-the-network---dmitriy"><h3 id="what-is-our-expected-minimum-number-of-nodes-within-the-network---dmitriy"><span class="hanchor" ariaLabel="Anchor"># </span>What is our expected minimum number of nodes within the network? - Dmitriy</h3></a>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>For a small number of nodes we can have just a single committee. But I am not sure how many nodes will join our network</p>
|
<p><code>Moh:</code> For a small number of nodes we can have just a single committee. But I am not sure how many nodes will join our network</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<a href="#byzantine-behavior"><h2 id="byzantine-behavior"><span class="hanchor" ariaLabel="Anchor"># </span>Byzantine Behavior</h2></a>
|
<a href="#byzantine-behavior"><h2 id="byzantine-behavior"><span class="hanchor" ariaLabel="Anchor"># </span>Byzantine Behavior</h2></a>
|
||||||
<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"><h3 id="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"><span class="hanchor" ariaLabel="Anchor"># </span>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</h3></a>
|
<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"><h3 id="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"><span class="hanchor" ariaLabel="Anchor"># </span>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</h3></a>
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<meta
|
<meta
|
||||||
name="description"
|
name="description"
|
||||||
content="Logos BFT is a consensus candidate for the Logos Network that utilizes Network Coding and Committees to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security."
|
content="Logos BFT is a consensus candidate for the Logos 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."
|
||||||
/>
|
/>
|
||||||
<title>
|
<title>
|
||||||
Logos BFT Overview
|
Logos BFT Overview
|
||||||
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -241,7 +241,7 @@ if (!doNotTrack) {
|
||||||
<h1>Logos BFT Overview</h1>
|
<h1>Logos BFT Overview</h1>
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
Last updated
|
Last updated
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -259,6 +259,24 @@ Oct 26, 2022
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
<aside class="mainTOC">
|
||||||
|
<details >
|
||||||
|
<summary>Table of Contents</summary>
|
||||||
|
<nav id="TableOfContents">
|
||||||
|
<ol>
|
||||||
|
<li><a href="#work-streams">Work Streams</a>
|
||||||
|
<ol>
|
||||||
|
<li><a href="#current-state-of-the-art">Current State of the Art</a></li>
|
||||||
|
<li><a href="#committee-overlay-structure">Committee Overlay Structure</a></li>
|
||||||
|
<li><a href="#random-beacon">Random Beacon</a></li>
|
||||||
|
<li><a href="#erasure-coding-lt-codes--fountain-codes--raptor-codes">Erasure Coding (LT Codes / Fountain Codes / Raptor Codes)</a></li>
|
||||||
|
</ol>
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
</nav>
|
||||||
|
</details>
|
||||||
|
</aside>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -301,18 +319,7 @@ Oct 26, 2022
|
||||||
<a
|
<a
|
||||||
|
|
||||||
rel="noopener" class="internal-link broken"
|
rel="noopener" class="internal-link broken"
|
||||||
data-src="/consensus/index">consensus</a> candidate for the Logos Network that utilizes
|
data-src="/consensus/index">consensus</a> candidate for the Logos 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>
|
||||||
|
|
||||||
<a href="https://en.wikipedia.org/wiki/Linear_network_coding" rel="noopener">Network Coding</a> and
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a
|
|
||||||
|
|
||||||
rel="noopener" class="internal-link broken"
|
|
||||||
data-src="#">Committees</a> to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security.</p>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
|
|
||||||
|
@ -326,17 +333,42 @@ Oct 26, 2022
|
||||||
data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">FAQ</a>: Here is a page that tracks various questions people have around LogosBFT.</li>
|
data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">FAQ</a>: Here is a page that tracks various questions people have around LogosBFT.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<a href="#work-streams"><h2 id="work-streams"><span class="hanchor" ariaLabel="Anchor"># </span>Work Streams</h2></a>
|
<a href="#work-streams"><h2 id="work-streams"><span class="hanchor" ariaLabel="Anchor"># </span>Work Streams</h2></a>
|
||||||
|
<a href="#current-state-of-the-art"><h3 id="current-state-of-the-art"><span class="hanchor" ariaLabel="Anchor"># </span>Current State of the Art</h3></a>
|
||||||
|
<p>An ongoing survey of the current state of the art around Consensus Mechanisms and their peripheral dependencies is beign conducted by Tuanir, and can be found in the following WIP Overleaf document:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
|
|
||||||
|
<a href="https://www.overleaf.com/project/633acc1acaa6ffe456d1ab1f" rel="noopener">WIP Consensus SoK</a></li>
|
||||||
|
</ul>
|
||||||
|
<a href="#committee-overlay-structure"><h3 id="committee-overlay-structure"><span class="hanchor" ariaLabel="Anchor"># </span>Committee Overlay Structure</h3></a>
|
||||||
|
<p>The basis of LogosBFT is dependent upon establishing an committee overlay tree structure for message distribution.</p>
|
||||||
|
<p>An overview video can be found in the following link:</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
|
||||||
|
<a href="https://drive.google.com/file/d/17L0JPgC0L1ejbjga7_6ZitBfHUe3VO11/view?usp=sharing" rel="noopener">LogosBFT Overview by Moh during Offsite</a></li>
|
||||||
|
</ul>
|
||||||
|
<p>The details of this are being worked on by Moh and Alexander and can be found in the following overleaf documents:</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
|
||||||
|
<a href="https://www.overleaf.com/project/6341fb4a3cf4f20f158afad3" rel="noopener">Moh’s newer draft</a></li>
|
||||||
|
<li>
|
||||||
|
|
||||||
|
<a href="https://www.overleaf.com/read/rhtnjxtjqnhp" rel="noopener">Moh’s original draft</a></li>
|
||||||
|
<li>
|
||||||
|
|
||||||
<a
|
<a href="https://www.overleaf.com/project/630c7e20e56998385e7d8416" rel="noopener">Alexander’s notes on the statistical properties of committees</a></li>
|
||||||
|
</ul>
|
||||||
rel="noopener" class="internal-link broken"
|
<a href="#random-beacon"><h3 id="random-beacon"><span class="hanchor" ariaLabel="Anchor"># </span>Random Beacon</h3></a>
|
||||||
data-src="committee-formation">Committee Formation</a></li>
|
<p>A random beacon is required to choose a leader and establish a seed for defining the overlay tree. Marcin is working on the various avenues. His previous presentations can be found in the following presentation slides:</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
|
||||||
|
<a href="https://cloud.logos.co/index.php/s/b39EmQrZRt5rrfL" rel="noopener">Intro to Multiparty Random Beacons</a></li>
|
||||||
|
<li>
|
||||||
|
|
||||||
|
<a href="https://cloud.logos.co/index.php/s/NXJZX8X8pHg6akw" rel="noopener">Circles of Trust</a></li>
|
||||||
<li>
|
<li>
|
||||||
|
|
||||||
|
|
||||||
|
@ -344,29 +376,18 @@ Oct 26, 2022
|
||||||
|
|
||||||
|
|
||||||
<a
|
<a
|
||||||
|
href="/"
|
||||||
rel="noopener" class="internal-link broken"
|
rel="noopener" class="internal-link"
|
||||||
data-src="random-beacon">Random Beacon</a></li>
|
data-src="/">Compact Certificates of Knowledge</a> - To be linked</li>
|
||||||
|
</ul>
|
||||||
|
<a href="#erasure-coding-lt-codes--fountain-codes--raptor-codes"><h3 id="erasure-coding-lt-codes--fountain-codes--raptor-codes"><span class="hanchor" ariaLabel="Anchor"># </span>Erasure Coding (LT Codes / Fountain Codes / Raptor Codes)</h3></a>
|
||||||
|
<p>In order to reduce message complexity during propagation, we are investigating the use of Luby Transform (LT) codes, more specifically
|
||||||
|
|
||||||
|
<a href="https://en.wikipedia.org/wiki/Fountain_code" rel="noopener">Fountain Codes</a>, to break up the block to be propagated to validators and recombined by local peers within a committee.</p>
|
||||||
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
|
|
||||||
|
<a href="https://github.com/chrido/fountain" rel="noopener">LT Code implementation in Rust</a> - unclear about legal status of LT or Raptor Codes, it is currently under investigation.</li>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a
|
|
||||||
|
|
||||||
rel="noopener" class="internal-link broken"
|
|
||||||
data-src="message-dissemination">Message Dissemination</a></li>
|
|
||||||
<li>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a
|
|
||||||
|
|
||||||
rel="noopener" class="internal-link broken"
|
|
||||||
data-src="leader-election">Leader Election</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -97,13 +97,13 @@ Required Roles Lead Developer (filled) "
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -244,27 +244,7 @@ if (!doNotTrack) {
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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">
|
|
||||||
|
|
||||||
Oct 26, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -286,6 +266,26 @@ Oct 26, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 26, 2022
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ Required Roles Lead Developer (filled) </description>
|
||||||
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
||||||
|
|
||||||
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
||||||
<description>Logos BFT is a consensus candidate for the Logos Network that utilizes Network Coding and Committees to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security.</description>
|
<description>Logos BFT is a consensus candidate for the Logos 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.</description>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
<item>
|
<item>
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -97,13 +97,13 @@ With the high level goals of preserving the right to privacy, mitigating the ris
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -99,13 +99,13 @@ Status is an organization building the tools and infrastructure for the advancem
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -99,13 +99,13 @@ Status is building the tools and infrastructure for the advancement of a secure,
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
14
sitemap.xml
14
sitemap.xml
|
@ -6,12 +6,12 @@
|
||||||
<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/tags/candidate/</loc>
|
<loc>https://roadmap.logos.co/tags/candidate/</loc>
|
||||||
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/categories/</loc>
|
<loc>https://roadmap.logos.co/categories/</loc>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/tags/consensus/</loc>
|
<loc>https://roadmap.logos.co/tags/consensus/</loc>
|
||||||
<lastmod>2022-10-26T16:37:37-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04: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-08-19T15:10:38-04:00</lastmod>
|
<lastmod>2022-08-19T15:10:38-04:00</lastmod>
|
||||||
|
@ -32,13 +32,13 @@
|
||||||
<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/logos-bft/FAQ/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/</loc>
|
||||||
<lastmod>2022-10-26T16:37:37-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/glacier/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/glacier/</loc>
|
||||||
<lastmod>2022-08-19T15:10:38-04:00</lastmod>
|
<lastmod>2022-08-19T15:10:38-04:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</loc>
|
<loc>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</loc>
|
||||||
<lastmod>2022-10-26T16:15:35-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04: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>
|
||||||
|
@ -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/tags/LogosBFT/</loc>
|
<loc>https://roadmap.logos.co/tags/LogosBFT/</loc>
|
||||||
<lastmod>2022-10-26T16:37:37-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://roadmap.logos.co/roles/distributed-systems-researcher/</loc>
|
<loc>https://roadmap.logos.co/roles/distributed-systems-researcher/</loc>
|
||||||
<lastmod>2022-08-19T15:10:38-04:00</lastmod>
|
<lastmod>2022-08-19T15:10:38-04:00</lastmod>
|
||||||
|
@ -59,7 +59,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>2022-10-26T16:37:37-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04: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>
|
||||||
|
@ -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/tags/</loc>
|
<loc>https://roadmap.logos.co/tags/</loc>
|
||||||
<lastmod>2022-10-26T16:37:37-04:00</lastmod>
|
<lastmod>2022-10-28T16:08:43-04: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-08-19T15:10:38-04:00</lastmod>
|
<lastmod>2022-08-19T15:10:38-04:00</lastmod>
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -244,7 +244,7 @@ if (!doNotTrack) {
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -264,7 +264,7 @@ Oct 26, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
||||||
|
|
||||||
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
||||||
<description>Logos BFT is a consensus candidate for the Logos Network that utilizes Network Coding and Committees to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security.</description>
|
<description>Logos BFT is a consensus candidate for the Logos 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.</description>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
</channel>
|
</channel>
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -264,7 +264,7 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
||||||
|
|
||||||
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
||||||
<description>Logos BFT is a consensus candidate for the Logos Network that utilizes Network Coding and Committees to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security.</description>
|
<description>Logos BFT is a consensus candidate for the Logos 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.</description>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
</channel>
|
</channel>
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -322,7 +322,7 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -362,7 +362,7 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -67,7 +67,7 @@ Required Roles Lead Developer (filled) </description>
|
||||||
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
||||||
|
|
||||||
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
<guid>https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/overview/</guid>
|
||||||
<description>Logos BFT is a consensus candidate for the Logos Network that utilizes Network Coding and Committees to optimize message propagation in the presence of a large number of nodes, while maintaining a high level of security.</description>
|
<description>Logos BFT is a consensus candidate for the Logos 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.</description>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
<item>
|
<item>
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
@ -251,27 +251,7 @@ if (!doNotTrack) {
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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">
|
|
||||||
|
|
||||||
Oct 26, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -293,6 +273,26 @@ Oct 26, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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
|
||||||
|
|
||||||
|
|
||||||
|
@ -491,7 +491,7 @@ Aug 19, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -644,27 +644,7 @@ Oct 26, 2022
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<p class="meta">
|
<p class="meta">
|
||||||
|
|
||||||
Oct 26, 2022
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
</p>
|
|
||||||
<div class="desc">
|
|
||||||
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
|
||||||
</div>
|
|
||||||
<div class="spacer"></div>
|
|
||||||
<ul class="tags">
|
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</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">
|
|
||||||
|
|
||||||
Oct 26, 2022
|
|
||||||
|
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
@ -680,6 +660,26 @@ Oct 26, 2022
|
||||||
|
|
||||||
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</a></li>
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</a></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li><li class="section-li">
|
||||||
|
<div class="section">
|
||||||
|
<p class="meta">
|
||||||
|
|
||||||
|
Oct 28, 2022
|
||||||
|
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<div class="desc">
|
||||||
|
<h3><a href="https://roadmap.logos.co/roadmap/consensus/candidates/logos-bft/FAQ/" class="internal-link" data-src="/roadmap/consensus/candidates/logos-bft/FAQ/">Frequently Asked Questions</a></h3>
|
||||||
|
</div>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<ul class="tags">
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/LogosBFT/">LogosBFT</a></li>
|
||||||
|
|
||||||
|
<li><a href="https://roadmap.logos.co/tags/consensus/">Consensus</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li></ul>
|
</li></ul>
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
|
@ -96,13 +96,13 @@
|
||||||
<script>
|
<script>
|
||||||
const BASE_URL = "https://roadmap.logos.co/"
|
const BASE_URL = "https://roadmap.logos.co/"
|
||||||
const fetchData = Promise.all([
|
const fetchData = Promise.all([
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.c7d1dff2779fb783b87718939eb938dc.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/linkIndex.efdce789f52a414aac99217faaa05fac.min.json")
|
||||||
.then(data => data.json())
|
.then(data => data.json())
|
||||||
.then(data => ({
|
.then(data => ({
|
||||||
index: data.index,
|
index: data.index,
|
||||||
links: data.links,
|
links: data.links,
|
||||||
})),
|
})),
|
||||||
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.501faefcb067cd17893de489cc1bb0f0.min.json")
|
fetch("https:\/\/roadmap.logos.co\/indices\/contentIndex.1ab8ea537a9a1daf324436722fac4853.min.json")
|
||||||
.then(data => data.json()),
|
.then(data => data.json()),
|
||||||
])
|
])
|
||||||
.then(([{index, links}, content]) => ({
|
.then(([{index, links}, content]) => ({
|
||||||
|
|
Loading…
Reference in New Issue