| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="UTF-8" /> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| <title>HIR × OAM Defense Map Against Black-Hat LLMs</title> |
| <style> |
| :root { |
| --bg: #090b10; |
| --panel: #121722; |
| --panel2: #171f2d; |
| --ink: #f5efe3; |
| --muted: #b7aa94; |
| --gold: #e0b454; |
| --copper: #b86b3f; |
| --green: #68c27a; |
| --blue: #67b7ff; |
| --red: #e46262; |
| --amber: #f2a93b; |
| --line: rgba(224, 180, 84, 0.28); |
| --glass: rgba(255,255,255,0.045); |
| --shadow: 0 22px 80px rgba(0,0,0,.42); |
| } |
| |
| * { box-sizing: border-box; } |
| html { scroll-behavior: smooth; } |
| body { |
| margin: 0; |
| background: |
| radial-gradient(circle at top left, rgba(224,180,84,.18), transparent 32rem), |
| radial-gradient(circle at 82% 8%, rgba(103,183,255,.10), transparent 28rem), |
| radial-gradient(circle at 50% 100%, rgba(104,194,122,.10), transparent 32rem), |
| var(--bg); |
| color: var(--ink); |
| font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; |
| line-height: 1.55; |
| overflow-x: hidden; |
| } |
| |
| .noise { |
| position: fixed; |
| inset: 0; |
| pointer-events: none; |
| opacity: .06; |
| background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 260 260' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); |
| } |
| |
| .wrap { width: min(1180px, calc(100% - 32px)); margin: 0 auto; } |
| |
| header { |
| padding: 72px 0 42px; |
| position: relative; |
| } |
| |
| .kicker { |
| display: inline-flex; |
| gap: 10px; |
| align-items: center; |
| padding: 8px 12px; |
| border: 1px solid var(--line); |
| background: var(--glass); |
| border-radius: 999px; |
| color: var(--gold); |
| font-size: 12px; |
| letter-spacing: .16em; |
| text-transform: uppercase; |
| margin-bottom: 22px; |
| } |
| |
| .pulse { |
| width: 8px; height: 8px; border-radius: 50%; background: var(--green); |
| box-shadow: 0 0 22px var(--green); |
| animation: pulse 1.6s infinite; |
| } |
| @keyframes pulse { 0%,100%{opacity:.45; transform:scale(.8)} 50%{opacity:1; transform:scale(1.15)} } |
| |
| h1 { |
| font-size: clamp(42px, 7vw, 86px); |
| line-height: .95; |
| margin: 0 0 22px; |
| letter-spacing: -0.055em; |
| } |
| h1 span { color: var(--gold); text-shadow: 0 0 30px rgba(224,180,84,.18); } |
| |
| .subtitle { |
| max-width: 820px; |
| font-size: clamp(18px, 2vw, 23px); |
| color: var(--muted); |
| margin: 0 0 28px; |
| } |
| |
| .boundary { |
| display: grid; |
| grid-template-columns: 76px 1fr; |
| gap: 18px; |
| max-width: 900px; |
| padding: 18px; |
| border: 1px solid rgba(228,98,98,.28); |
| background: linear-gradient(135deg, rgba(228,98,98,.10), rgba(224,180,84,.045)); |
| border-radius: 22px; |
| box-shadow: var(--shadow); |
| } |
| .boundary .icon { |
| display: grid; place-items: center; |
| border-radius: 18px; |
| background: rgba(228,98,98,.12); |
| border: 1px solid rgba(228,98,98,.22); |
| color: var(--red); |
| font-size: 30px; |
| } |
| .boundary strong { color: var(--ink); } |
| .boundary p { margin: 0; color: var(--muted); } |
| |
| nav { |
| position: sticky; |
| top: 0; |
| z-index: 10; |
| backdrop-filter: blur(14px); |
| background: rgba(9,11,16,.78); |
| border-bottom: 1px solid rgba(224,180,84,.12); |
| } |
| nav .wrap { |
| display: flex; |
| gap: 10px; |
| overflow-x: auto; |
| padding: 12px 0; |
| } |
| nav a { |
| color: var(--muted); |
| text-decoration: none; |
| white-space: nowrap; |
| border: 1px solid rgba(224,180,84,.16); |
| padding: 8px 12px; |
| border-radius: 999px; |
| font-size: 13px; |
| } |
| nav a:hover { color: var(--ink); border-color: var(--gold); } |
| |
| section { padding: 54px 0; } |
| .section-title { |
| display: flex; |
| gap: 16px; |
| align-items: center; |
| margin-bottom: 24px; |
| } |
| .section-title .num { |
| font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; |
| color: var(--gold); |
| border: 1px solid var(--line); |
| border-radius: 12px; |
| padding: 8px 10px; |
| background: var(--glass); |
| } |
| h2 { font-size: clamp(28px, 4vw, 44px); margin: 0; letter-spacing: -.035em; } |
| .lead { color: var(--muted); font-size: 18px; max-width: 880px; } |
| |
| .grid { display: grid; gap: 18px; } |
| .grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); } |
| .grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); } |
| .grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); } |
| @media (max-width: 900px) { .grid.two, .grid.three, .grid.four { grid-template-columns: 1fr; } .boundary { grid-template-columns: 1fr; } } |
| |
| .card { |
| background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.026)); |
| border: 1px solid rgba(224,180,84,.16); |
| border-radius: 24px; |
| padding: 22px; |
| box-shadow: 0 16px 60px rgba(0,0,0,.24); |
| position: relative; |
| overflow: hidden; |
| } |
| .card:before { |
| content: ""; |
| position: absolute; |
| inset: 0 0 auto; |
| height: 2px; |
| background: linear-gradient(90deg, transparent, var(--gold), transparent); |
| opacity: .36; |
| } |
| .card h3 { margin: 0 0 8px; font-size: 20px; } |
| .card p { color: var(--muted); margin: 0 0 12px; } |
| .tagrow { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; } |
| .tag { |
| font-size: 11px; |
| letter-spacing: .08em; |
| text-transform: uppercase; |
| padding: 5px 8px; |
| border-radius: 999px; |
| background: rgba(255,255,255,.06); |
| color: var(--muted); |
| border: 1px solid rgba(255,255,255,.08); |
| } |
| .tag.green { color: var(--green); border-color: rgba(104,194,122,.22); } |
| .tag.red { color: var(--red); border-color: rgba(228,98,98,.22); } |
| .tag.blue { color: var(--blue); border-color: rgba(103,183,255,.22); } |
| .tag.gold { color: var(--gold); border-color: rgba(224,180,84,.28); } |
| |
| .map { |
| display: grid; |
| grid-template-columns: 1fr 92px 1fr; |
| gap: 18px; |
| align-items: stretch; |
| } |
| @media (max-width: 920px) { .map { grid-template-columns: 1fr; } } |
| .column-title { |
| text-transform: uppercase; |
| letter-spacing: .15em; |
| font-size: 12px; |
| color: var(--gold); |
| margin: 0 0 14px; |
| } |
| .arrow { |
| display: grid; |
| place-items: center; |
| color: var(--gold); |
| font-size: 42px; |
| opacity: .82; |
| } |
| |
| .matrix { |
| display: grid; |
| grid-template-columns: 1.1fr 1fr 1.4fr; |
| gap: 1px; |
| border: 1px solid rgba(224,180,84,.18); |
| border-radius: 22px; |
| overflow: hidden; |
| background: rgba(224,180,84,.16); |
| } |
| .cell { |
| background: rgba(18,23,34,.95); |
| padding: 16px; |
| min-height: 104px; |
| } |
| .cell.head { background: rgba(224,180,84,.13); color: var(--gold); font-weight: 800; min-height: auto; } |
| .cell p { margin: 4px 0 0; color: var(--muted); font-size: 14px; } |
| @media (max-width: 820px) { .matrix { grid-template-columns: 1fr; } .cell.head:nth-child(n+2){display:none;} } |
| |
| .pipeline { |
| position: relative; |
| display: grid; |
| grid-template-columns: repeat(6, 1fr); |
| gap: 12px; |
| margin-top: 24px; |
| } |
| @media (max-width: 900px) { .pipeline { grid-template-columns: 1fr; } } |
| .step { |
| border: 1px solid rgba(224,180,84,.18); |
| background: rgba(255,255,255,.045); |
| border-radius: 20px; |
| padding: 18px 14px; |
| min-height: 150px; |
| } |
| .step .n { color: var(--gold); font-family: ui-monospace, monospace; font-size: 12px; } |
| .step strong { display: block; margin: 8px 0; } |
| .step span { color: var(--muted); font-size: 14px; } |
| |
| .scoreboard { |
| display: grid; |
| grid-template-columns: repeat(3, 1fr); |
| gap: 18px; |
| margin-top: 18px; |
| } |
| @media (max-width: 820px){ .scoreboard{grid-template-columns:1fr;} } |
| .meter { |
| padding: 18px; |
| background: rgba(255,255,255,.045); |
| border: 1px solid rgba(224,180,84,.18); |
| border-radius: 20px; |
| } |
| .meter label { display:flex; justify-content:space-between; color:var(--muted); font-size:13px; margin-bottom:10px; } |
| input[type="range"]{ width:100%; accent-color: var(--gold); } |
| .result { |
| margin-top: 18px; |
| padding: 22px; |
| border-radius: 24px; |
| border: 1px solid rgba(104,194,122,.22); |
| background: rgba(104,194,122,.08); |
| } |
| .result h3 { margin-top:0; } |
| .status { font-size: 34px; font-weight: 900; letter-spacing: -.04em; color: var(--green); } |
| .status.yellow { color: var(--amber); } |
| .status.red { color: var(--red); } |
| |
| .callout { |
| border-left: 5px solid var(--gold); |
| background: rgba(224,180,84,.09); |
| padding: 18px 22px; |
| border-radius: 0 20px 20px 0; |
| color: var(--muted); |
| } |
| .callout strong { color: var(--ink); } |
| |
| footer { |
| padding: 50px 0 80px; |
| color: var(--muted); |
| border-top: 1px solid rgba(224,180,84,.14); |
| margin-top: 40px; |
| } |
| footer strong { color: var(--ink); } |
| </style> |
| </head> |
| <body> |
| <div class="noise"></div> |
|
|
| <header class="wrap"> |
| <div class="kicker"><span class="pulse"></span> Primordial OS · Defensive Architecture</div> |
| <h1>HIR × OAM Defense Map<br><span>Against Black-Hat LLMs</span></h1> |
| <p class="subtitle">A bounded systems map for defending people, institutions, and AI runtimes from malicious LLM use, degraded automation, prompt abuse, synthetic social engineering, and agency capture.</p> |
| <div class="boundary"> |
| <div class="icon">⚠</div> |
| <p><strong>Boundary:</strong> This artifact is defensive only. It does not teach attack construction, evasion, credential theft, malware creation, fraud, or bypass methods. It maps risk, governance, detection, and recovery through HIR and OAM.</p> |
| </div> |
| </header> |
|
|
| <nav> |
| <div class="wrap"> |
| <a href="#thesis">Thesis</a> |
| <a href="#threats">Threat Map</a> |
| <a href="#hir">HIR Defense</a> |
| <a href="#oam">OAM Detection</a> |
| <a href="#pipeline">Runtime Pipeline</a> |
| <a href="#scoring">Risk Gate</a> |
| <a href="#controls">Controls</a> |
| </div> |
| </nav> |
|
|
| <main> |
| <section id="thesis" class="wrap"> |
| <div class="section-title"><span class="num">01</span><h2>Core Thesis</h2></div> |
| <p class="lead">Black-hat LLMs are not just “bad chatbots.” They are pressure multipliers. They compress skill gaps, automate deception, scale manipulation, and remove friction from harmful intent. HIR defines what must be preserved. OAM diagnoses how agency is captured and degraded.</p> |
| <div class="grid three"> |
| <div class="card"><h3>HIR = Defense Kernel</h3><p>Honesty, Integrity, and Respect act as the governing baseline. Every request, output, memory, tool call, and escalation is checked against truthfulness, structural consistency, and human/system boundaries.</p><div class="tagrow"><span class="tag green">Preserve</span><span class="tag gold">Baseline</span></div></div> |
| <div class="card"><h3>OAM = Fault Detector</h3><p>Outsourced Agency Model identifies when a system is being used to displace human judgment, intensify coercion, hide accountability, or convert people into manipulable targets.</p><div class="tagrow"><span class="tag red">Detect</span><span class="tag gold">Degradation</span></div></div> |
| <div class="card"><h3>Defense = Runtime Discipline</h3><p>The goal is not one static rule. The goal is layered runtime discipline: classify, constrain, verify, isolate, log, escalate, and repair without losing respect for legitimate users.</p><div class="tagrow"><span class="tag blue">Bound</span><span class="tag green">Recover</span></div></div> |
| </div> |
| </section> |
|
|
| <section id="threats" class="wrap"> |
| <div class="section-title"><span class="num">02</span><h2>Threat Map</h2></div> |
| <p class="lead">These are defensive categories, not instructions. Each category names a risk surface that an HIR/OAM runtime should recognize and contain.</p> |
| <div class="grid four"> |
| <div class="card"><h3>Social Engineering</h3><p>Automated persuasion, impersonation, synthetic intimacy, authority mimicry, and emotional pressure designed to get people to act against their interest.</p><div class="tagrow"><span class="tag red">Respect Failure</span><span class="tag red">Agency Capture</span></div></div> |
| <div class="card"><h3>Fraud Amplification</h3><p>Scams, forged context, fake support, fake invoices, counterfeit authority, and high-volume manipulation pipelines.</p><div class="tagrow"><span class="tag red">Honesty Failure</span><span class="tag red">False Context</span></div></div> |
| <div class="card"><h3>Cyber Abuse Assistance</h3><p>Requests that try to turn the model into a planning, coding, troubleshooting, or operational assistant for unauthorized access or harm.</p><div class="tagrow"><span class="tag red">Integrity Breach</span><span class="tag red">Tool Misuse</span></div></div> |
| <div class="card"><h3>Disinformation Engines</h3><p>Mass-produced false narratives, context collapse, fake evidence, synthetic consensus, and audience-targeted manipulation.</p><div class="tagrow"><span class="tag red">Truth Collapse</span><span class="tag red">Field Degradation</span></div></div> |
| <div class="card"><h3>Jailbreak Brokerage</h3><p>Attempts to route around safety boundaries, extract forbidden behavior, or convert the assistant into a policy-evasion system.</p><div class="tagrow"><span class="tag amber">Boundary Probe</span><span class="tag red">Runtime Attack</span></div></div> |
| <div class="card"><h3>Data Exfiltration</h3><p>Efforts to reveal secrets, credentials, private data, prompts, logs, or hidden operational context.</p><div class="tagrow"><span class="tag red">Provenance Breach</span><span class="tag red">Trust Theft</span></div></div> |
| <div class="card"><h3>Automation Swarms</h3><p>Use of many agents, accounts, or generated variants to overwhelm moderation, customer support, public discourse, or security review.</p><div class="tagrow"><span class="tag amber">Scale Pressure</span><span class="tag red">Signal Flood</span></div></div> |
| <div class="card"><h3>Human Targeting</h3><p>Using models to identify, pressure, shame, groom, extort, isolate, or exploit vulnerable people.</p><div class="tagrow"><span class="tag red">Respect Zero</span><span class="tag red">Life-First Violation</span></div></div> |
| </div> |
| </section> |
|
|
| <section id="hir" class="wrap"> |
| <div class="section-title"><span class="num">03</span><h2>HIR Defense Translation</h2></div> |
| <div class="matrix"> |
| <div class="cell head">HIR Term</div><div class="cell head">Security Meaning</div><div class="cell head">Defensive Question</div> |
| <div class="cell"><strong>Honesty</strong><p>Reality contact, source clarity, identity truthfulness, evidence boundary.</p></div> |
| <div class="cell"><strong>Truth gate</strong><p>Detect false premise, impersonation, fabricated authority, hidden intent, and unverifiable claims.</p></div> |
| <div class="cell"><strong>Is the request/output anchored to truthful context, or is it manufacturing false reality?</strong></div> |
| <div class="cell"><strong>Integrity</strong><p>Structural consistency, role fidelity, auditability, non-corruption under pressure.</p></div> |
| <div class="cell"><strong>Runtime gate</strong><p>Preserve policy, tool boundaries, provenance, logging, and reproducible reasoning.</p></div> |
| <div class="cell"><strong>Does the action preserve system structure, or does it exploit a contradiction?</strong></div> |
| <div class="cell"><strong>Respect</strong><p>Dignity, consent, boundaries, consequence awareness, life-first constraint.</p></div> |
| <div class="cell"><strong>Human gate</strong><p>Block coercion, targeting, exploitation, manipulation, and non-consensual harm.</p></div> |
| <div class="cell"><strong>Does this preserve human agency and boundaries, or does it convert a person into an object?</strong></div> |
| </div> |
| </section> |
|
|
| <section id="oam" class="wrap"> |
| <div class="section-title"><span class="num">04</span><h2>OAM as Degradation Detector</h2></div> |
| <p class="lead">Black-hat LLM behavior often follows an OAM pattern: agency is moved away from a responsible person and into an automated, deniable, scaled system.</p> |
| <div class="map"> |
| <div class="card"> |
| <div class="column-title">OAM Signal</div> |
| <h3>Outsourced Agency</h3> |
| <p>The user attempts to make the model carry intent, judgment, planning, credibility, or consequence while hiding the real actor behind automation.</p> |
| <div class="tagrow"><span class="tag red">Deniability</span><span class="tag red">Automation</span><span class="tag red">Pressure</span></div> |
| </div> |
| <div class="arrow">→</div> |
| <div class="card"> |
| <div class="column-title">Defense Response</div> |
| <h3>Re-anchor Responsibility</h3> |
| <p>Classify intent, demand lawful/authorized context, constrain outputs, protect targets, preserve logs, and redirect toward safe defensive or educational alternatives.</p> |
| <div class="tagrow"><span class="tag green">Audit</span><span class="tag green">Limit</span><span class="tag green">Repair</span></div> |
| </div> |
| </div> |
| </section> |
|
|
| <section id="pipeline" class="wrap"> |
| <div class="section-title"><span class="num">05</span><h2>HIR Runtime Defense Pipeline</h2></div> |
| <p class="lead">A black-hat resistant system should not rely on a single refusal. It should route every risky request through a layered defensive pipeline.</p> |
| <div class="pipeline"> |
| <div class="step"><div class="n">01</div><strong>Intent Intake</strong><span>Classify user goal, actor role, authority, scope, and likely target.</span></div> |
| <div class="step"><div class="n">02</div><strong>HIR Gate</strong><span>Check truthfulness, structural consistency, and respect for boundaries.</span></div> |
| <div class="step"><div class="n">03</div><strong>OAM Scan</strong><span>Detect agency outsourcing, coercion, manipulation, scaling, and deniability.</span></div> |
| <div class="step"><div class="n">04</div><strong>Tool Firewall</strong><span>Limit or block actions that could enable unauthorized access, fraud, or harm.</span></div> |
| <div class="step"><div class="n">05</div><strong>Safe Transform</strong><span>Convert unsafe requests into defensive education, policy, awareness, or repair steps.</span></div> |
| <div class="step"><div class="n">06</div><strong>Audit & Learn</strong><span>Log risk signals, preserve provenance, and strengthen future detection.</span></div> |
| </div> |
| </section> |
|
|
| <section id="scoring" class="wrap"> |
| <div class="section-title"><span class="num">06</span><h2>Interactive Risk Gate</h2></div> |
| <p class="lead">Move the sliders to see how an HIR/OAM defense gate can classify a request. Lower HIR and higher OAM means higher risk.</p> |
| <div class="scoreboard"> |
| <div class="meter"><label><span>Honesty</span><b id="hVal">80</b></label><input id="h" type="range" min="0" max="100" value="80"></div> |
| <div class="meter"><label><span>Integrity</span><b id="iVal">80</b></label><input id="i" type="range" min="0" max="100" value="80"></div> |
| <div class="meter"><label><span>Respect</span><b id="rVal">80</b></label><input id="r" type="range" min="0" max="100" value="80"></div> |
| <div class="meter"><label><span>OAM Agency Outsourcing</span><b id="oVal">30</b></label><input id="o" type="range" min="0" max="100" value="30"></div> |
| <div class="meter"><label><span>Scale Pressure</span><b id="sVal">35</b></label><input id="s" type="range" min="0" max="100" value="35"></div> |
| <div class="meter"><label><span>Target Harm</span><b id="tVal">20</b></label><input id="t" type="range" min="0" max="100" value="20"></div> |
| </div> |
| <div class="result"> |
| <div class="status" id="status">GREEN · Defensive / Allowed</div> |
| <p id="explain">HIR is stable and OAM pressure is low. The system can answer normally while preserving boundaries.</p> |
| </div> |
| </section> |
|
|
| <section id="controls" class="wrap"> |
| <div class="section-title"><span class="num">07</span><h2>Defensive Controls</h2></div> |
| <div class="grid two"> |
| <div class="card"><h3>For AI Runtime Designers</h3><p>Build HIR gates into request classification, memory retrieval, tool invocation, user-state tracking, and escalation logic. Treat Respect as a hard safety boundary, not a style preference.</p><div class="tagrow"><span class="tag green">Policy</span><span class="tag green">Memory</span><span class="tag green">Tools</span></div></div> |
| <div class="card"><h3>For Security Teams</h3><p>Monitor for synthetic social engineering, high-volume narrative generation, credential-seeking patterns, impersonation attempts, automation swarms, and tool misuse requests.</p><div class="tagrow"><span class="tag blue">SOC</span><span class="tag blue">Detection</span><span class="tag blue">Triage</span></div></div> |
| <div class="card"><h3>For Institutions</h3><p>Protect staff and customers from AI-amplified scams by verifying identity, reducing pressure-based decisions, and making safe reporting channels easy to access.</p><div class="tagrow"><span class="tag gold">Governance</span><span class="tag gold">Training</span><span class="tag gold">Provenance</span></div></div> |
| <div class="card"><h3>For Public Education</h3><p>Teach people that persuasive text, synthetic authority, and emotional urgency are not proof. Slow down, verify, and preserve agency before acting.</p><div class="tagrow"><span class="tag green">Agency</span><span class="tag green">Verification</span><span class="tag green">Dignity</span></div></div> |
| </div> |
| <div class="callout" style="margin-top:24px;"><strong>Final invariant:</strong> A black-hat LLM attack succeeds when it breaks truth contact, corrupts decision structure, or converts people into targets. HIR defends the baseline. OAM exposes the degradation path.</div> |
| </section> |
| </main> |
|
|
| <footer class="wrap"> |
| <strong>HIR × OAM Black-Hat LLM Defense Map</strong><br> |
| Created and Developed by Collin D. Weber · Defensive architecture study · No offensive instruction layer included |
| </footer> |
|
|
| <script> |
| const ids = ["h","i","r","o","s","t"]; |
| const els = Object.fromEntries(ids.map(id => [id, document.getElementById(id)])); |
| const vals = Object.fromEntries(ids.map(id => [id, document.getElementById(id + "Val")])); |
| const status = document.getElementById("status"); |
| const explain = document.getElementById("explain"); |
| |
| function calc(){ |
| const H = +els.h.value, I = +els.i.value, R = +els.r.value; |
| const O = +els.o.value, S = +els.s.value, T = +els.t.value; |
| vals.h.textContent = H; vals.i.textContent = I; vals.r.textContent = R; |
| vals.o.textContent = O; vals.s.textContent = S; vals.t.textContent = T; |
| const hir = (H + I + R) / 3; |
| const oam = (O + S + T) / 3; |
| const risk = Math.max(0, Math.min(100, oam + (100 - hir) * 0.9)); |
| status.className = "status"; |
| if (risk < 35) { |
| status.textContent = "GREEN · Defensive / Allowed"; |
| explain.textContent = "HIR is stable and OAM pressure is low. The system can answer normally while preserving boundaries."; |
| } else if (risk < 68) { |
| status.textContent = "YELLOW · Constrain / Clarify / Transform"; |
| status.classList.add("yellow"); |
| explain.textContent = "Risk is elevated. The runtime should narrow scope, verify authority, avoid actionable harm, and transform toward defensive or educational guidance."; |
| } else { |
| status.textContent = "RED · Block / Isolate / Escalate"; |
| status.classList.add("red"); |
| explain.textContent = "HIR stability is low or OAM pressure is high. The runtime should refuse harmful assistance, protect potential targets, preserve audit data, and redirect safely."; |
| } |
| } |
| ids.forEach(id => els[id].addEventListener("input", calc)); |
| calc(); |
| </script> |
| </body> |
| </html> |
|
|