diff --git a/Cargo.lock b/Cargo.lock
index ae10be2..416e4a9 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2732,7 +2732,7 @@ checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
[[package]]
name = "itsgoin-cli"
-version = "0.7.3"
+version = "0.8.0-alpha"
dependencies = [
"anyhow",
"hex",
@@ -2744,7 +2744,7 @@ dependencies = [
[[package]]
name = "itsgoin-core"
-version = "0.7.3"
+version = "0.8.0-alpha"
dependencies = [
"anyhow",
"base64 0.22.1",
@@ -2769,7 +2769,7 @@ dependencies = [
[[package]]
name = "itsgoin-desktop"
-version = "0.7.3"
+version = "0.8.0-alpha"
dependencies = [
"anyhow",
"base64 0.22.1",
diff --git a/frontend/app.js b/frontend/app.js
index dd893ca..88a74ca 100644
--- a/frontend/app.js
+++ b/frontend/app.js
@@ -1550,6 +1550,7 @@ async function loadPeers() {
else if (p.reach === 'n1') reachBadge = 'N1';
else if (p.reach === 'n2') reachBadge = 'N2';
else if (p.reach === 'n3') reachBadge = 'N3';
+ else if (p.reach === 'n4') reachBadge = 'N4';
let actions = '';
if (p.nodeId === myNodeId) {
@@ -2078,11 +2079,11 @@ async function loadNetworkSummary() {
const s = await invoke('get_network_summary');
networkSummaryEl.innerHTML = `
${s.totalConnections}Connections
-
${s.preferredCount}Preferred
-
${s.localCount}Mesh
-
${s.wideCount}Non-mesh N1
+
${s.meshCount}/${s.meshCap}Mesh
+
${s.tempCount}Temp referral
${s.n2Distinct}N2 Reach
${s.n3Distinct}N3 Reach
+
${s.n4Distinct}N4 Reach
`;
} catch (e) {
networkSummaryEl.innerHTML = `Could not load network summary
`;
@@ -2099,10 +2100,9 @@ async function loadConnections() {
connectionsList.innerHTML = conns.map(c => {
const label = escapeHtml(peerLabel(c.nodeId, c.displayName));
const icon = generateIdenticon(c.nodeId, 18);
- const slotClass = c.slotKind === 'Preferred' ? 'slot-preferred'
- : c.slotKind === 'Wide' ? 'slot-wide' : 'slot-local';
- const slotLabel = c.slotKind === 'Local' ? 'Mesh'
- : c.slotKind === 'Wide' ? 'Non-mesh N1' : c.slotKind;
+ const slotClass = c.slotKind === 'temp' ? 'slot-temp' : 'slot-mesh';
+ const slotLabel = c.slotKind === 'mesh' ? 'Mesh'
+ : c.slotKind === 'temp' ? 'Temp referral' : c.slotKind;
const duration = c.connectedAt ? relativeTime(c.connectedAt) : '';
return `
${icon} ${label} ${slotLabel}
@@ -3680,7 +3680,7 @@ function openDiagnostics() {
-
+
@@ -3816,11 +3816,11 @@ function openDiagnostics() {
try {
const r = await invoke('request_referrals');
btn.textContent = r;
- setTimeout(() => { btn.textContent = 'Request Referrals'; btn.disabled = false; }, 3000);
+ setTimeout(() => { btn.textContent = 'Find Peers (Convection)'; btn.disabled = false; }, 3000);
loadAllDiagnostics();
} catch (e) {
btn.textContent = 'Failed';
- setTimeout(() => { btn.textContent = 'Request Referrals'; btn.disabled = false; }, 3000);
+ setTimeout(() => { btn.textContent = 'Find Peers (Convection)'; btn.disabled = false; }, 3000);
}
});
loadAllDiagnostics();
diff --git a/frontend/style.css b/frontend/style.css
index 3f7e8e1..6623d48 100644
--- a/frontend/style.css
+++ b/frontend/style.css
@@ -359,9 +359,8 @@ header h1 { font-size: clamp(1.4rem, 2.5vw, 2rem); color: #7fdbca; margin: 0; }
/* Slot kind badges */
.slot-badge { font-size: 0.65rem; padding: 0.1rem 0.4rem; border-radius: 3px; font-family: system-ui, sans-serif; }
-.slot-preferred { background: #1a3a2e; color: #7fdbca; }
-.slot-local { background: #1e2040; color: #aab; }
-.slot-wide { background: #2a2a1e; color: #e2b93d; }
+.slot-mesh { background: #1e2040; color: #aab; }
+.slot-temp { background: #2a2a1e; color: #e2b93d; }
/* Reach level badges */
.reach-badge { font-size: 0.65rem; padding: 0.1rem 0.4rem; border-radius: 3px; font-family: system-ui, sans-serif; }
@@ -369,6 +368,7 @@ header h1 { font-size: clamp(1.4rem, 2.5vw, 2rem); color: #7fdbca; margin: 0; }
.reach-n1 { background: #1a2e3a; color: #7fc4db; }
.reach-n2 { background: #1e2040; color: #aab; }
.reach-n3 { background: #1e2040; color: #667; }
+.reach-n4 { background: #1a1a2e; color: #556; }
/* Diagnostics summary grid */
.diag-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.4rem; margin-bottom: 0.75rem; }