oxen-observer/templates/quorums.html
Jason Rhinelander 156ca75895 Highlight the current pulse quorum
Like we do for blink/testing.
2020-10-12 20:00:33 -03:00

5.7 KiB
Raw Blame History

{% extends "_basic.html" %} {% block content %}

Service Node testing quorums:

{%for q in quorums.obligation[-18:] | reverse%}

{# quorum height + 13 here because a node only does an obligations test once the node has at least 11 blocks on top of it, which means it is 13 blocks below the blockchain height, which means it has to be (at least) the 12th oldest block, +1 because info.height is the top height + 1 #} Block {{q.height + 13}} {%if q.height + 13 > info.height%} (~{{(q.height + 13 - info.height) * 2}} minutes) {%elif q.height + 13 == info.height%} (testing now!) {%else%} (~{{(info.height - (q.height + 13)) * 2}} minutes ago) {%endif%}

Validators: {%for v in q.quorum.validators%} {{v}} {%endfor%}
SNs to test: {%for w in q.quorum.workers%} {{w}} {%endfor%}
{%endfor%}
{%if quorums.pulse%}

Recent Pulse quorums:

Current block height: {{info.height}}

{%for q in quorums.pulse[-24:] | reverse%} {%if q.height == info.height%}

Next block

{%else%}

Block {{q.height}}

{%endif%}
Block producer: {%for w in q.quorum.workers%}{#should only be one#} {{w}} {%endfor%}
Validators: {%for v in q.quorum.validators%} {{v}} {%endfor%}
{%endfor%}
{%endif%}

Recent Checkpoint quorums:

Current block height: {{info.height}}

{%for q in quorums.checkpoint[-12:] | reverse%}

Block {{q.height}}

{%for v in q.quorum.validators%} {{v}} {%endfor%}
{%endfor%}

Recent Blink quorums:

Current block height: {{info.height}}

{# Blink quorums are not fully independent: a blink quorum at height H is subquorum 0 for txes submitted at blockchain height [H+35, H+39], and subquorum 1 for txes submitted at height [H+30, H+34]. We want to show the full quorum here for each 5-block range, which means each subquorum gets printed twice: as Q0 in one and Q1 in the next one. #} {%for q in quorums.blink[-9:-1] | reverse%} {%set qnext = quorums.blink[-loop.index]%} {%set current = q.height + 30 <= info.height <= q.height + 34%}

Blocks {{q.height + 30}}{{q.height + 34}}{%if current%} (current){%endif%}

{%for v in qnext.quorum.validators%} {{v}} {%endfor%}
{%for v in q.quorum.validators%} {{v}} {%endfor%}
{%endfor%}
{% endblock %}