aboutsummaryrefslogtreecommitdiffstats
path: root/src/api/dashboard/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/dashboard/mod.rs')
-rw-r--r--src/api/dashboard/mod.rs12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/api/dashboard/mod.rs b/src/api/dashboard/mod.rs
index c82ce76..e83f485 100644
--- a/src/api/dashboard/mod.rs
+++ b/src/api/dashboard/mod.rs
@@ -319,13 +319,20 @@ async fn build(state: &AppState, graph: &Graph, live: bool) -> JsonValue {
let list = super::peers::peer_list(state).await;
let stats = serde_json::to_value(super::stats::collect(state, &list).await).unwrap_or_default();
let peers = serde_json::to_value(&list).unwrap_or_default();
- let (aliases, dashboards) = {
+ let (aliases, dashboards, remakes) = {
let replica = state.doc.read().await;
+ // The remakes of our epoch, with who voted: the map shows them.
+ let remakes = crate::remake::current(
+ &replica.doc,
+ replica.epoch,
+ state.clock.now_millis(),
+ state.timing.dormant_after.as_millis() as u64,
+ );
let dashboards: std::collections::HashMap<String, String> = members::members(&replica.doc)
.into_iter()
.filter_map(|pk| members::dashboard(&replica.doc, &pk).map(|url| (pk, url)))
.collect();
- (members::aliases(&replica.doc), dashboards)
+ (members::aliases(&replica.doc), dashboards, remakes)
};
let local = state.local_id();
let intended: Map<String, JsonValue> = graph
@@ -400,6 +407,7 @@ async fn build(state: &AppState, graph: &Graph, live: bool) -> JsonValue {
"clocks": clocks,
"live": live,
},
+ "remakes": remakes,
})
}