From f3f799587bd3f593bd57ad869b854bed7947c0cb Mon Sep 17 00:00:00 2001 From: you Date: Thu, 19 Mar 2026 09:12:33 +0000 Subject: [PATCH] Fix hash matrix colors: green=free, yellow=taken, red=collision --- public/analytics.js | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/public/analytics.js b/public/analytics.js index db4b4de..576ec91 100644 --- a/public/analytics.js +++ b/public/analytics.js @@ -715,7 +715,7 @@ el.innerHTML = `

1-Byte Hash Usage Matrix

-

Click a cell to see which nodes share that prefix. Darker = more traffic.

+

Click a cell to see which nodes share that prefix. Green = available, yellow = taken, red = collision.

@@ -788,15 +788,14 @@ const count = nodes.length; let bg, color; if (count === 0) { - bg = '#166534'; color = '#86efac'; // green — no nodes, available + bg = '#166534'; color = '#86efac'; // green — available } else if (count === 1) { - bg = '#1e3a5f'; color = '#93c5fd'; // blue — single user, no collision + bg = '#854d0e'; color = '#fde047'; // yellow — taken, no collision } else { - // 2+ nodes: interpolate yellow→red based on count - const t = Math.min((count - 2) / 4, 1); // 2=yellow, 6+=full red - const r = 239; - const g = Math.round(180 * (1 - t)); - bg = `rgb(${r},${g},50)`; color = '#fff'; + // 2+ nodes: interpolate orange→red + const t = Math.min((count - 2) / 4, 1); + const g = Math.round(80 * (1 - t)); + bg = `rgb(200,${g},30)`; color = '#fff'; } const status = count === 0 ? 'available' : count === 1 ? `1 node: ${nodes[0].name || nodes[0].public_key.slice(0,12)}` : `${count} nodes — COLLISION`; html += `${hex}`; @@ -807,9 +806,9 @@ html += `
Available - 1 node (no collision) - 2 nodes - 3+ nodes (collision) + 1 node + 2 nodes + 3+ nodes (collision)
`; el.innerHTML = html;