[object Object]

← back to Ventura Corridor

security: add rel=noopener noreferrer to target=_blank links (yoloforever cycle 3)

eacc15bd8088fbda3d058e9c8db2408a7a01cf4c · 2026-09-15 18:50:46 -0700 · Steve Abrams

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UxvvaJ7p6VRZ4RzKDaBXqK

Files touched

Diff

commit eacc15bd8088fbda3d058e9c8db2408a7a01cf4c
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Tue Sep 15 18:50:46 2026 -0700

    security: add rel=noopener noreferrer to target=_blank links (yoloforever cycle 3)
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01UxvvaJ7p6VRZ4RzKDaBXqK
---
 public/index.html | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/public/index.html b/public/index.html
index ed5cb91..478c4b5 100644
--- a/public/index.html
+++ b/public/index.html
@@ -444,12 +444,12 @@ async function loadBuildStatus() {
     try {
       const fleet = await fetch('/api/fleet').then(r => r.json());
       const fmtMac = (m, port) => {
-        if (!m || !m.ok) return `<a href="http://${port}" target="_blank" style="color:#c47b7b;border-bottom:1px dotted #c47b7b;text-decoration:none">${m?.label || port} · offline</a>`;
+        if (!m || !m.ok) return `<a rel="noopener noreferrer" href="http://${port}" target="_blank" style="color:#c47b7b;border-bottom:1px dotted #c47b7b;text-decoration:none">${m?.label || port} · offline</a>`;
         const model = m.ollama_models[0];
         const modelStr = model ? `${model.name} ${model.pinned ? '⚓' : ''}` : 'idle';
         const cpu = m.cpu.toFixed(0), ram = m.ram_pct.toFixed(0);
         const dashUrl = port === '100.94.103.98:9930' ? 'http://100.94.103.98:9930' : 'http://localhost:9931';
-        return `<a href="${dashUrl}" target="_blank" style="color:inherit;text-decoration:none"><span style="color:var(--metal)">${escapeHtml(m.label)}</span> · <span style="color:var(--ink)">${escapeHtml(modelStr)}</span> · cpu <b style="color:var(--metal-glow)">${cpu}%</b> · ram <b style="color:var(--metal-glow)">${ram}%</b></a>`;
+        return `<a rel="noopener noreferrer" href="${dashUrl}" target="_blank" style="color:inherit;text-decoration:none"><span style="color:var(--metal)">${escapeHtml(m.label)}</span> · <span style="color:var(--ink)">${escapeHtml(modelStr)}</span> · cpu <b style="color:var(--metal-glow)">${cpu}%</b> · ram <b style="color:var(--metal-glow)">${ram}%</b></a>`;
       };
       const m1El = document.getElementById('fleet-mac1');
       const m2El = document.getElementById('fleet-mac2');

← fc609bd TK-11484: fix venturacorridor.com AdSense 'Needs attention'  ·  back to Ventura Corridor  ·  TK-12208: skip 404 lottery query when magazine_features abse 8822e43 →