Spaces:
Running
chore(sync): mirror front-door files to Space (hf-sync)
Browse filesAutomated front-door sync from szl-holdings/a11oy main via hf-sync.
Added/updated: cathedral.html, console/docs.html, console/index.html, console/pricing.html, console/throne-room.html, console/throne-room.js, pages/api-keys.html, pages/audit.html, pages/ayni.html, pages/brain-dual.html, pages/brain-jack.html, pages/brain.html, pages/chaski.html, pages/codex-kernel.html, pages/company.html, pages/compliance.html, pages/console.html, pages/counter-uas.html, pages/cued-engagement.html, pages/docs.html, pages/evidence.html, pages/gap-report.html, pages/hatun-mcp.html, pages/hub.html, pages/integrations.html, pages/landing.html, pages/mesh.html, pages/observability.html, pages/operator_organ.html, pages/pricing.html, pages/run-all.html, pages/sdk.html, pages/security.html, pages/status.html, pages/substrate.html, pages/superpowers.html, pages/throne-room.html, pages/throne-room.js, pages/uds.html, pages/upgrades.html, pages/wallpa.html, pages/warhacker.html, pages/wasi-rikuq.html, pages/wires.html, static/a11oy_cathedral.js
Deleted (gone from GitHub main): (none)
Keeps the served front-door (pages/*.html, console/*.html) identical
to GitHub main so an HF factory rebuild never drops a GitHub edit or
keeps serving a page that was deleted on GitHub.
- pages/console.html +219 -104
|
@@ -10978,110 +10978,6 @@ window.warboard_init=warboard_init; window.warboard_all=warboard_all;
|
|
| 10978 |
/* end anatomy-map-tab-patch */
|
| 10979 |
</script>
|
| 10980 |
|
| 10981 |
-
|
| 10982 |
-
<script>
|
| 10983 |
-
/* conjecture-factory-tab-patch :: SZL Conjecture Factory — honest live disclosure board ::
|
| 10984 |
-
Additive, self-contained, NS-aware. Renders factory-generated OPEN conjectures from the
|
| 10985 |
-
real disclosure-ledger (szl-lake khipu, kind=conjecture-disclosure-anchor) via
|
| 10986 |
-
/api/{ns}/v1/conjecture-factory. Honesty doctrine v11 by construction: a conjecture is
|
| 10987 |
-
NEVER called a theorem; every item stays OPEN until independently verified; novelty is an
|
| 10988 |
-
advisory screen; a signature attests timestamp + content, not truth; Conjecture 1
|
| 10989 |
-
(unconditional Λ uniqueness) is and remains OPEN. No fabricated live pills. */
|
| 10990 |
-
(function(){
|
| 10991 |
-
var NS=(window.__rd_ns||(location.pathname.indexOf('killinchu')>=0?'killinchu':'a11oy'));
|
| 10992 |
-
var TEAL='#3ddc97', GOLD='#c9b787', DIM='#8a8f98', WARN='#e0a82e', RED='#b06a5a', BLUE='#5aa0d0';
|
| 10993 |
-
function esc(s){ return String(s==null?'':s).replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>'); }
|
| 10994 |
-
function ago(iso){ if(!iso) return ''; try{ var t=new Date(iso).getTime(); if(!t) return ''; var s=Math.max(0,(Date.now()-t)/1000); if(s<60) return Math.round(s)+'s ago'; if(s<3600) return Math.round(s/60)+'m ago'; if(s<86400) return Math.round(s/3600)+'h ago'; return Math.round(s/86400)+'d ago'; }catch(e){ return ''; } }
|
| 10995 |
-
function pill(txt,col,title){ return '<span title="'+esc(title||'')+'" style="display:inline-block;padding:2px 9px;border-radius:999px;font-family:var(--mono,monospace);font-size:10px;letter-spacing:.06em;font-weight:700;color:'+col+';border:1px solid '+col+';background:'+col+'1a;">'+esc(txt)+'</span>'; }
|
| 10996 |
-
function link(url,label,col){ if(!url) return ''; return '<a href="'+esc(url)+'" target="_blank" rel="noopener" style="color:'+(col||TEAL)+'">'+esc(label||url)+'</a>'; }
|
| 10997 |
-
/* novelty is advisory only — never a claim of originality */
|
| 10998 |
-
function novCol(n){ n=String(n||'').toLowerCase(); if(n==='novel-candidate') return TEAL; if(n==='known-restatement'||n==='duplicate') return WARN; return DIM; }
|
| 10999 |
-
/* difficulty/grade come from a bounded solver run; OPEN = neither solved nor refuted in budget */
|
| 11000 |
-
function diffCol(d){ d=String(d||'').toLowerCase(); if(d==='refuted') return RED; if(d==='verified-finite') return TEAL; if(d==='open-resistant'||d==='hard') return GOLD; return DIM; }
|
| 11001 |
-
function gradeCol(g){ g=String(g||'').toUpperCase(); if(g==='REFUTED') return RED; if(g==='VERIFIED-FINITE') return TEAL; return GOLD; }
|
| 11002 |
-
function stageCol(s){ s=String(s||'').toLowerCase(); if(s==='solution') return TEAL; if(s==='statement') return BLUE; return DIM; }
|
| 11003 |
-
function statusBadge(st){ st=String(st||'').toLowerCase(); if(st==='live') return pill('\u25cf live',TEAL,'fetched live from the disclosure ledger'); if(st==='cached') return pill('\u25cf cached',BLUE,'served from last good cache'); return pill('\u25cf unreachable',RED,'ledger unreachable'); }
|
| 11004 |
-
|
| 11005 |
-
function card(c){
|
| 11006 |
-
var rec=c.receipt||{}, hon=c.honesty||{};
|
| 11007 |
-
var grade=String(c.grade||'OPEN').toUpperCase();
|
| 11008 |
-
var openLbl = c.is_open ? 'OPEN' : grade;
|
| 11009 |
-
var h='<div style="border:1px solid #232830;border-radius:9px;padding:12px 14px;margin-bottom:10px;background:#0e1217">';
|
| 11010 |
-
h+='<div style="display:flex;align-items:center;gap:8px;flex-wrap:wrap">'
|
| 11011 |
-
+'<span style="font-weight:700;color:#e6eaee;font-size:14px">'+esc(c.title||'(untitled conjecture)')+'</span>'
|
| 11012 |
-
+pill(openLbl, c.is_open?RED:gradeCol(grade), c.is_open?'a genuinely OPEN conjecture \u2014 NOT a theorem; stays OPEN until independently verified':'bounded-solver grade')
|
| 11013 |
-
+'</div>';
|
| 11014 |
-
h+='<div style="display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 2px">';
|
| 11015 |
-
if(c.novelty) h+=pill('novelty: '+c.novelty,novCol(c.novelty),'advisory novelty screen \u2014 not a proof of originality');
|
| 11016 |
-
if(c.difficulty) h+=' '+pill('difficulty: '+c.difficulty,diffCol(c.difficulty),'from a bounded solver run');
|
| 11017 |
-
h+=' '+pill('grade: '+grade,gradeCol(grade),'OPEN = neither solved nor refuted within the solver budget');
|
| 11018 |
-
if(c.release_stage) h+=' '+pill('stage: '+c.release_stage,stageCol(c.release_stage),'release stage (teaser / statement / solution)');
|
| 11019 |
-
h+='</div>';
|
| 11020 |
-
if(c.statement) h+='<div style="font-size:12.5px;color:#b6bcc4;margin-top:8px;line-height:1.55"><span style="color:'+DIM+';font-family:var(--mono,monospace);font-size:10px;letter-spacing:.08em">STATEMENT</span><br>'+esc(c.statement)+'</div>';
|
| 11021 |
-
/* disclosure-ledger receipt — link/badge; signature attests timestamp+content, not truth */
|
| 11022 |
-
var rlinks=[];
|
| 11023 |
-
if(rec.rekor_log_index!=null) rlinks.push(link('https://search.sigstore.dev/?logIndex='+encodeURIComponent(rec.rekor_log_index),'Rekor #'+rec.rekor_log_index+' \u2197',TEAL));
|
| 11024 |
-
if(rec.source_run_url) rlinks.push(link(rec.source_run_url,(rec.source_run_workflow||'source run')+' \u2197',DIM));
|
| 11025 |
-
var rid=rec.receipt_id||c.id||'';
|
| 11026 |
-
var recline='';
|
| 11027 |
-
if(rid) recline+=pill('receipt '+String(rid).slice(0,12),DIM,'disclosure-ledger receipt id');
|
| 11028 |
-
if(rec.signing_mode) recline+=' '+pill(rec.signing_mode,DIM,'signing mode \u2014 attests timestamp + content, not truth');
|
| 11029 |
-
if(rec.chain_index!=null) recline+=' '+pill('chain #'+rec.chain_index,DIM,'append-only chain index');
|
| 11030 |
-
if(recline||rlinks.length){
|
| 11031 |
-
h+='<div style="margin-top:9px;padding-top:8px;border-top:1px solid #1c2128">'
|
| 11032 |
-
+'<div style="font-family:var(--mono,monospace);font-size:10px;color:'+DIM+';letter-spacing:.08em;margin-bottom:4px">DISCLOSURE-LEDGER RECEIPT</div>'
|
| 11033 |
-
+'<div style="display:flex;gap:6px;flex-wrap:wrap;align-items:center">'+recline
|
| 11034 |
-
+(rlinks.length?('<span style="font-size:12px;margin-left:4px">'+rlinks.join(' \u00b7 ')+'</span>'):'')
|
| 11035 |
-
+'</div>'
|
| 11036 |
-
+'<div style="font-family:var(--mono,monospace);font-size:10px;color:'+DIM+';margin-top:5px">A signature attests <b>timestamp + content</b> of the disclosure \u2014 it is not evidence the conjecture is true.</div>'
|
| 11037 |
-
+'</div>';
|
| 11038 |
-
}
|
| 11039 |
-
h+='</div>';
|
| 11040 |
-
return h;
|
| 11041 |
-
}
|
| 11042 |
-
|
| 11043 |
-
window.conjecturefactory_render=async function(host){
|
| 11044 |
-
host.innerHTML='<div class="card"><div class="dim">loading factory conjectures from the disclosure ledger\u2026</div></div>';
|
| 11045 |
-
try{
|
| 11046 |
-
var r=await fetch('/api/'+NS+'/v1/conjecture-factory',{cache:'no-store'});
|
| 11047 |
-
var d=await r.json();
|
| 11048 |
-
var items=d.conjectures||[];
|
| 11049 |
-
var h='';
|
| 11050 |
-
h+='<div style="border:1px solid #2a2f37;border-radius:10px;padding:14px 16px;margin-bottom:14px;background:#11151a">'
|
| 11051 |
-
+'<div style="font-family:var(--mono,monospace);font-size:11px;color:'+DIM+';letter-spacing:.08em">CONJECTURE FACTORY \u00b7 HONEST OUTPUT</div>'
|
| 11052 |
-
+'<div style="display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:7px">'
|
| 11053 |
-
+statusBadge(d.status)
|
| 11054 |
-
+' '+pill((d.count||0)+' OPEN conjecture'+((d.count===1)?'':'s'),GOLD,'generated, not proven')
|
| 11055 |
-
+' '+pill('doctrine '+(d.doctrine||'v11'),DIM,'honesty doctrine')
|
| 11056 |
-
+'</div>'
|
| 11057 |
-
+'<div style="font-size:12.5px;color:#cfd4da;margin-top:9px;line-height:1.5">'+esc(d.honest||'')+'</div>'
|
| 11058 |
-
+'<div style="font-family:var(--mono,monospace);font-size:10px;color:'+DIM+';margin-top:7px">source: '+(d.source?link(d.source,'disclosure ledger \u2197',TEAL):'(unreachable)')+' \u00b7 checked '+esc(ago(d.checked_at)||'just now')+'</div>'
|
| 11059 |
-
+'</div>';
|
| 11060 |
-
items.forEach(function(c){ h+=card(c); });
|
| 11061 |
-
if(!items.length){ h+='<div class="card"><div class="dim">No factory conjectures on the ledger yet \u2014 this board shows only signed, disclosed OPEN conjectures.</div></div>'; }
|
| 11062 |
-
host.innerHTML=h;
|
| 11063 |
-
}catch(e){ host.innerHTML='<div class="card"><div class="dim">conjecture factory unavailable: '+esc((e&&e.message)||e)+'</div></div>'; }
|
| 11064 |
-
};
|
| 11065 |
-
function reg(){
|
| 11066 |
-
var V=window.VIEWS; if(!V){ return setTimeout(reg,80); }
|
| 11067 |
-
V.conjecturefactory={ title:'Conjecture Factory', badge:'OPEN \u00b7 generated, not proven \u00b7 signed disclosure',
|
| 11068 |
-
sub:'Factory-generated <b>OPEN conjectures</b>, read live from the real disclosure ledger (szl-lake khipu, <span class="mono">kind=conjecture-disclosure-anchor</span>). Each item carries an advisory <b>novelty</b> screen, a bounded-solver <b>difficulty grade</b> (OPEN = neither solved nor refuted in budget), a <b>release stage</b>, the conjecture <b>statement</b>, and a link/badge to its signed disclosure-ledger receipt. A conjecture is <b>never</b> a theorem; it stays OPEN until a solution is independently verified; a signature attests timestamp + content, not truth. \u039b unconditional uniqueness is <b>Conjecture 1</b> \u2014 OPEN, never proved.',
|
| 11069 |
-
render:async function(c){ window.conjecturefactory_render(c); } };
|
| 11070 |
-
}
|
| 11071 |
-
reg();
|
| 11072 |
-
function injectNav(){
|
| 11073 |
-
var anchor=document.querySelector('.nav-item[data-view="bounties"]')||document.querySelector('.nav-item[data-view="anatomymap"]')||document.querySelector('.nav-item[data-view="readiness"]')||document.querySelector('.nav-item');
|
| 11074 |
-
if(!anchor){ return setTimeout(injectNav,250); }
|
| 11075 |
-
if(document.querySelector('.nav-item[data-view="conjecturefactory"]')){ return; }
|
| 11076 |
-
var n=document.createElement('div'); n.className='nav-item'; n.setAttribute('data-view','conjecturefactory'); n.setAttribute('onclick',"go('conjecturefactory')");
|
| 11077 |
-
n.innerHTML='<span class="ico">\u2697</span>Conjecture Factory';
|
| 11078 |
-
anchor.parentNode.insertBefore(n, anchor.nextSibling);
|
| 11079 |
-
}
|
| 11080 |
-
if(document.readyState==='loading'){ document.addEventListener('DOMContentLoaded',injectNav); } else { injectNav(); }
|
| 11081 |
-
})();
|
| 11082 |
-
/* end conjecture-factory-tab-patch */
|
| 11083 |
-
</script>
|
| 11084 |
-
|
| 11085 |
<script>
|
| 11086 |
(function(){
|
| 11087 |
"use strict";
|
|
@@ -11902,5 +11798,224 @@ window.warboard_init=warboard_init; window.warboard_all=warboard_all;
|
|
| 11902 |
})();
|
| 11903 |
</script>
|
| 11904 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 11905 |
</body>
|
| 11906 |
</html>
|
|
|
|
| 10978 |
/* end anatomy-map-tab-patch */
|
| 10979 |
</script>
|
| 10980 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10981 |
<script>
|
| 10982 |
(function(){
|
| 10983 |
"use strict";
|
|
|
|
| 11798 |
})();
|
| 11799 |
</script>
|
| 11800 |
|
| 11801 |
+
<!-- ===================================================================== -->
|
| 11802 |
+
<!-- SZL METABOLIC SCALING (living-3D) — Kleiber/WBE/MTE + quantum-metabolism -->
|
| 11803 |
+
<!-- bridge, unified into the PROPOSED SZL-Phi engineering gate. Each visual -->
|
| 11804 |
+
<!-- is wired to the REAL /api/a11oy/v1/scaling/* endpoints (szl_scaling.py, -->
|
| 11805 |
+
<!-- byte-identical a11oy<->killinchu). EXPERIMENTAL-tier: adds NOTHING to -->
|
| 11806 |
+
<!-- the locked 8; Lambda stays Conjecture 1; SZL-Phi is PROPOSED, NOT the -->
|
| 11807 |
+
<!-- formal Lambda; trust never 100%. 0 runtime CDN (vendored echarts/three). -->
|
| 11808 |
+
<!-- Every borrowed formula CITED to its real author; SZL claims none as its -->
|
| 11809 |
+
<!-- own discovery. Null-safe (E()/ex()/setHTML); prefers-reduced-motion ok. -->
|
| 11810 |
+
<!-- ===================================================================== -->
|
| 11811 |
+
<script>
|
| 11812 |
+
(function(){
|
| 11813 |
+
function whenReady(fn){ if(window.VIEWS){fn();} else { var n=0; var iv=setInterval(function(){ if(window.VIEWS||n++>200){clearInterval(iv);fn();} },40); } }
|
| 11814 |
+
var SAPI=(window.location.origin)+'/api/a11oy/v1';
|
| 11815 |
+
var TEAL='#5fb3a3', GOLD='#c9b787', RISK='#b06a5a', WARN='#c9a05f', INFO='#6FA8DC', VIOLET='#B79BD6', DIM='#8a8f98', LIVE='#5a8a6e';
|
| 11816 |
+
var RM = (window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches);
|
| 11817 |
+
function esc(s){ return String(s==null?'':s).replace(/[&<>]/g,function(c){return {'&':'&','<':'<','>':'>'}[c];}); }
|
| 11818 |
+
function E(id){ var e=document.getElementById(id); if(e) return e; if(!E._d) E._d=document.createElement('div'); return E._d; }
|
| 11819 |
+
function ex(id){ return document.getElementById(id); }
|
| 11820 |
+
function setHTML(id,html){ var e=document.getElementById(id); if(e) e.innerHTML=html; }
|
| 11821 |
+
function fmt(n,d){ if(n==null||isNaN(n)) return '\u2014'; return Number(n).toFixed(d==null?1:d); }
|
| 11822 |
+
function dot(){ return (window.liveDot?window.liveDot():'<span style="display:inline-block;width:7px;height:7px;border-radius:50%;background:'+TEAL+';box-shadow:0 0 8px '+TEAL+';margin-right:6px;vertical-align:middle"></span>'); }
|
| 11823 |
+
function pill(t,c){ return '<span style="display:inline-block;padding:2px 9px;border-radius:999px;font-family:var(--mono,monospace);font-size:10px;letter-spacing:.06em;font-weight:700;color:'+c+';border:1px solid '+c+';background:'+c+'1a">'+esc(t)+'</span>'; }
|
| 11824 |
+
async function J(p){ var r=await fetch(p); if(!r.ok) throw new Error('HTTP '+r.status); var ct=r.headers.get('content-type')||''; if(ct.indexOf('text/html')>=0) throw new Error('route missing'); return r.json(); }
|
| 11825 |
+
function poll(gateId, fn){ try{fn();}catch(e){} var t=setInterval(function(){ if(!ex(gateId)){return;} try{fn();}catch(e){} var d=ex('sca-ts-'+gateId); if(d) d.textContent='auto \u00b7 '+new Date().toLocaleTimeString(); }, 12000+Math.floor(Math.random()*5000)); window._tailTimers=window._tailTimers||[]; window._tailTimers.push(t); window._liveTimers=window._tailTimers; return t; }
|
| 11826 |
+
function autoPill(g){ return '<span class="badge b-live" style="font-size:9.5px">'+dot()+'AUTO-RECORDING <span id="sca-ts-'+esc(g)+'" class="mono dim" style="margin-left:5px">live</span></span>'; }
|
| 11827 |
+
function kpi(k,id,d,col){ return '<div class="kpi"><div class="k">'+esc(k)+'</div><div class="v" id="'+id+'" style="color:'+(col||TEAL)+'">\u2014</div><div class="d">'+esc(d||'')+'</div></div>'; }
|
| 11828 |
+
function cite(href,label){ return '<a href="'+esc(href)+'" target="_blank" rel="noopener" class="mono" style="color:'+INFO+';text-decoration:none;font-size:11px">'+esc(label)+' \u2197</a>'; }
|
| 11829 |
+
function honesty(txt){ return '<div class="honesty" style="margin-top:.8rem"><b>Honest by design.</b> '+txt+' EXPERIMENTAL-tier SZL construct \u2014 adds <b>nothing</b> to the 8 locked formulas; \u039b = <b>Conjecture 1</b> (advisory, not a theorem); SZL-\u03a6 is a <b>PROPOSED engineering gate, NOT the formal \u039b</b>; trust is never 100%. 0 runtime CDN; vendored libs only. Every borrowed law is cited to its real author; SZL claims none as its own discovery.</div>'; }
|
| 11830 |
+
|
| 11831 |
+
// sampled mass ladder (kg): mouse -> human -> elephant, log-spaced + named anchors
|
| 11832 |
+
var MASSES=[0.02,0.05,0.2,1,5,20,70,300,1000,3000,6000];
|
| 11833 |
+
function massLabel(M){ if(M<=0.03) return 'mouse'; if(M>=60&&M<=80) return 'human'; if(M>=3000) return 'elephant'; return null; }
|
| 11834 |
+
|
| 11835 |
+
// ───────────── VISUAL 1 — KLEIBER LOG-LOG CURVE ─────────────
|
| 11836 |
+
function renderKleiber(c){
|
| 11837 |
+
setHTML(c.id||'', '');
|
| 11838 |
+
c.innerHTML='<div class="card"><div class="card-h"><span class="card-t">'+dot()+'Kleiber\u2019s law \u2014 metabolic rate vs body mass (live)</span><span class="card-ep">'+autoPill('kle-gate')+'</span></div>'
|
| 11839 |
+
+'<div class="kpis" id="kle-gate">'+kpi('Slope (log-log)','kle-slope','B \u221d M^\u00be',TEAL)+kpi('Human 70 kg','kle-h','kcal/day',GOLD)+kpi('Mouse 20 g','kle-m','kcal/day',INFO)+kpi('Elephant 6 t','kle-e','kcal/day',VIOLET)+'</div>'
|
| 11840 |
+
+'<div id="kle-chart" style="height:clamp(300px,46vh,440px);margin-top:.6rem"></div>'
|
| 11841 |
+
+'<div class="mono dim" style="font-size:11px;margin-top:.4rem">Each point is a live <code>/scaling/kleiber?M=</code> call. The 3/4 slope on log-log axes is the WBE fractal-network prediction \u2014 verified by recomputation, not asserted.</div></div>'
|
| 11842 |
+
+'<div class="card" style="padding:.7rem .9rem"><span class="mono dim" style="font-size:11px">Formula author: </span>'+cite('https://pdodds.w3.uvm.edu/files/papers/others/1932/kleiber1932a.pdf','Kleiber 1932, Hilgardia')+' '+cite('https://www.science.org/doi/10.1126/science.276.5309.122','West-Brown-Enquist 1997, Science 276:122 \u2014 DOI:10.1126/science.276.5309.122')+'</div>'
|
| 11843 |
+
+'<details class="raw"><summary>raw /scaling/kleiber samples</summary><pre class="out" id="kle-raw">\u2014</pre></details>'
|
| 11844 |
+
+honesty('B = B\u2080\u00b7M^\u00be (B\u2080\u224870 kcal/day, mammals) is <b>Kleiber 1932</b>; the 3/4 exponent is explained by <b>West, Brown & Enquist 1997</b> (fractal distribution networks). The curve redraws exactly the values the live endpoint returns.');
|
| 11845 |
+
poll('kle-gate', async function(){
|
| 11846 |
+
var pts=[]; var raw=[];
|
| 11847 |
+
for(var i=0;i<MASSES.length;i++){ var d=await J(SAPI+'/scaling/kleiber?M='+MASSES[i]); pts.push([d.M_kg, d.B_kcal_day]); raw.push(d); }
|
| 11848 |
+
if(ex('kle-raw')) ex('kle-raw').textContent=JSON.stringify(raw,null,2);
|
| 11849 |
+
// empirical slope from first/last log-log
|
| 11850 |
+
var x0=Math.log10(pts[0][0]), x1=Math.log10(pts[pts.length-1][0]);
|
| 11851 |
+
var y0=Math.log10(pts[0][1]), y1=Math.log10(pts[pts.length-1][1]);
|
| 11852 |
+
var slope=(y1-y0)/(x1-x0);
|
| 11853 |
+
E('kle-slope').textContent=fmt(slope,3); E('kle-slope').style.color=(Math.abs(slope-0.75)<0.02)?LIVE:TEAL;
|
| 11854 |
+
function at(M){ for(var i=0;i<raw.length;i++){ if(Math.abs(raw[i].M_kg-M)<1e-9) return raw[i].B_kcal_day; } return null; }
|
| 11855 |
+
E('kle-h').textContent=fmt(at(70),0); E('kle-m').textContent=fmt(at(0.02),2); E('kle-e').textContent=fmt(at(6000),0);
|
| 11856 |
+
if(window.mkEchart) window.mkEchart('kle-chart',{
|
| 11857 |
+
backgroundColor:'transparent',tooltip:{trigger:'item',formatter:function(p){ return 'M = '+p.value[0]+' kg<br/>B = '+fmt(p.value[1],1)+' kcal/day'; }},
|
| 11858 |
+
grid:{left:64,right:24,top:24,bottom:48},
|
| 11859 |
+
xAxis:{type:'log',name:'body mass M (kg)',nameLocation:'middle',nameGap:30,nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11860 |
+
yAxis:{type:'log',name:'metabolic rate B (kcal/day)',nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11861 |
+
series:[{type:'line',smooth:false,symbolSize:9,data:pts,lineStyle:{color:TEAL,width:2.4},itemStyle:{color:GOLD},
|
| 11862 |
+
markPoint:{symbolSize:1,label:{show:true,formatter:function(p){return massLabel(p.value[0])||'';},color:GOLD,fontSize:11},
|
| 11863 |
+
data:pts.filter(function(p){return massLabel(p[0]);}).map(function(p){return {coord:p};})}}]});
|
| 11864 |
+
});
|
| 11865 |
+
}
|
| 11866 |
+
|
| 11867 |
+
// ───────────── VISUAL 2 (HERO) — LIFETIME-HEARTBEATS INVARIANT ─────────────
|
| 11868 |
+
function renderHeart(c){
|
| 11869 |
+
c.innerHTML='<div class="hero" style="border:1px solid '+GOLD+'55;border-radius:14px;padding:1rem 1.1rem;background:radial-gradient(ellipse at top left,'+GOLD+'10,transparent 70%);margin-bottom:.8rem">'
|
| 11870 |
+
+'<div class="card-t" style="font-size:15px">'+dot()+'The invariant no one can dream of \u2014 <b>lifetime heartbeats \u2248 constant</b></div>'
|
| 11871 |
+
+'<div class="mono dim" style="font-size:12px;margin-top:.3rem">A mouse\u2019s heart races; an elephant\u2019s crawls. Yet both spend roughly the <b>same total number of beats</b> in a lifetime (\u2248 1\u20131.5 billion), because heart-rate \u221d M^(\u22121\u00bc) and lifespan \u221d M^(+\u00bc) cancel. Every number below is a live <code>/scaling/heart?M=</code> call.</div></div>'
|
| 11872 |
+
+'<div class="card"><div class="card-h"><span class="card-t">Lifetime beats across mouse \u2192 human \u2192 elephant (live)</span><span class="card-ep">'+autoPill('hrt-gate')+'</span></div>'
|
| 11873 |
+
+'<div class="kpis" id="hrt-gate">'+kpi('Mouse 20 g','hrt-m','\u00d710\u2079 beats',INFO)+kpi('Human 70 kg','hrt-h','\u00d710\u2079 beats',GOLD)+kpi('Elephant 6 t','hrt-e','\u00d710\u2079 beats',VIOLET)+kpi('mouse \u00f7 human','hrt-ratio','\u2248 1 (invariant)',TEAL)+'</div>'
|
| 11874 |
+
+'<div id="hrt-chart" style="height:clamp(300px,44vh,420px);margin-top:.6rem"></div>'
|
| 11875 |
+
+'<div class="mono dim" style="font-size:11px;margin-top:.4rem">Bars = lifetime beats (billions). They stay flat across 5 orders of magnitude in mass \u2014 the famous near-invariant.</div></div>'
|
| 11876 |
+
+'<div class="card" style="padding:.7rem .9rem"><span class="mono dim" style="font-size:11px">Formula authors: </span>'+cite('https://www.science.org/doi/10.1126/science.276.5309.122','West-Brown-Enquist 1997 (M^\u00bc allometry)')+' '+cite('https://doi.org/10.1890/03-9000','Brown et al. 2004 MTE \u2014 DOI:10.1890/03-9000')+'</div>'
|
| 11877 |
+
+'<details class="raw"><summary>raw /scaling/heart samples</summary><pre class="out" id="hrt-raw">\u2014</pre></details>'
|
| 11878 |
+
+honesty('Heart-rate f = 241\u00b7M^(\u2212\u00bc) bpm and lifespan L = 11.8\u00b7M^(+\u00bc) yr are the <b>WBE/MTE</b> allometries; their product (lifetime beats) is near-mass-invariant by construction. Values are recomputed live, not asserted.');
|
| 11879 |
+
poll('hrt-gate', async function(){
|
| 11880 |
+
var rows=[]; var raw=[];
|
| 11881 |
+
for(var i=0;i<MASSES.length;i++){ var d=await J(SAPI+'/scaling/heart?M='+MASSES[i]); rows.push(d); raw.push(d); }
|
| 11882 |
+
if(ex('hrt-raw')) ex('hrt-raw').textContent=JSON.stringify(raw,null,2);
|
| 11883 |
+
function at(M){ for(var i=0;i<rows.length;i++){ if(Math.abs(rows[i].M_kg-M)<1e-9) return rows[i].lifetime_beats_billion; } return null; }
|
| 11884 |
+
var bm=at(0.02), bh=at(70), be=at(6000);
|
| 11885 |
+
E('hrt-m').textContent=fmt(bm,3); E('hrt-h').textContent=fmt(bh,3); E('hrt-e').textContent=fmt(be,3);
|
| 11886 |
+
E('hrt-ratio').textContent=(bh? fmt(bm/bh,2):'\u2014'); E('hrt-ratio').style.color=LIVE;
|
| 11887 |
+
if(window.mkEchart) window.mkEchart('hrt-chart',{
|
| 11888 |
+
backgroundColor:'transparent',tooltip:{trigger:'axis',formatter:function(a){ var p=a[0]; var r=rows[p.dataIndex]; return 'M = '+r.M_kg+' kg<br/>'+fmt(r.bpm,1)+' bpm \u00b7 '+fmt(r.lifespan_yr,1)+' yr<br/><b>'+fmt(r.lifetime_beats_billion,3)+' \u00d710\u2079 beats</b>'; }},
|
| 11889 |
+
grid:{left:60,right:24,top:24,bottom:60},
|
| 11890 |
+
xAxis:{type:'category',data:rows.map(function(r){var l=massLabel(r.M_kg); return l?(l+' ('+r.M_kg+'kg)'):(r.M_kg+'kg');}),axisLabel:{color:'#A8B6CC',rotate:38,fontSize:10}},
|
| 11891 |
+
yAxis:{type:'value',name:'lifetime beats (\u00d710\u2079)',nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11892 |
+
series:[{type:'bar',barWidth:'52%',data:rows.map(function(r){ var l=massLabel(r.M_kg); return {value:Number((r.lifetime_beats_billion||0).toFixed(3)),itemStyle:{color:l?GOLD:TEAL}}; }),label:{show:true,position:'top',color:'#cfcfcf',fontSize:10,formatter:'{c}'}}]});
|
| 11893 |
+
});
|
| 11894 |
+
}
|
| 11895 |
+
|
| 11896 |
+
// ───────────── VISUAL 3 — SZL-PHI UNIFIED (PMF activation lift) ─────────────
|
| 11897 |
+
function renderUnified(c){
|
| 11898 |
+
c.innerHTML='<div class="card"><div class="card-h"><span class="card-t">'+dot()+'SZL-\u03a6 unified scaling \u2014 PMF activation lift (live)</span><span class="card-ep">'+autoPill('phi-gate')+'</span></div>'
|
| 11899 |
+
+'<div style="margin:.2rem 0 .7rem;padding:.5rem .7rem;border:1px solid '+WARN+';border-left:3px solid '+WARN+';border-radius:7px;background:'+WARN+'14;font-family:var(--mono,monospace);font-size:11px;letter-spacing:.03em;color:'+WARN+'"><b>PROPOSED engineering gate \u2014 NOT the formal \u039b.</b> \u039b = Conjecture 1. SZL-\u03a6 couples WBE network scaling \u00d7 MTE/PMF activation \u00d7 coherence; it is an SZL construct, claimed only as a unification of cited results.</div>'
|
| 11900 |
+
+'<div class="kpis" id="phi-gate">'+kpi('\u03a6 (with PMF)','phi-w','\u0394p = 121.5 mV',TEAL)+kpi('\u03a6 (no PMF)','phi-n','\u0394p = 0',INFO)+kpi('PMF activation lift','phi-lift','\u03a6(pmf)/\u03a6(0)',GOLD)+kpi('Status','phi-st','doctrine',WARN)+'</div>'
|
| 11901 |
+
+'<div class="grid2"><div><div class="card-h"><span class="card-t">\u03a6 term decomposition</span><span class="card-ep">network \u00d7 PMF-enhancement \u00d7 coherence</span></div><div id="phi-chart" style="height:clamp(260px,38vh,340px);margin-top:.4rem"></div></div>'
|
| 11902 |
+
+'<div><div class="card-h"><span class="card-t">PMF activation lift (3D)</span><span class="card-ep">vendored three.js \u00b7 height \u221d lift</span></div><div id="phi-3d" style="height:clamp(260px,38vh,340px);border-radius:10px;background:#050608;margin-top:.4rem"></div></div></div></div>'
|
| 11903 |
+
+'<div class="card" style="padding:.7rem .9rem"><span class="mono dim" style="font-size:11px">Cited lineage: </span>'+cite('https://pmc.ncbi.nlm.nih.gov/articles/PMC2842802/','Demetrius-Tuszynski 2010 (quantum metabolism / PMF) \u2014 DOI:10.1098/rsif.2009.0310')+' '+cite('https://doi.org/10.1890/03-9000','Brown et al. 2004 MTE')+'</div>'
|
| 11904 |
+
+'<details class="raw"><summary>raw /scaling/unified</summary><pre class="out" id="phi-raw">\u2014</pre></details>'
|
| 11905 |
+
+honesty('\u03a6 = \u03a6\u2080\u00b7M^\u00be\u00b7exp(+\u03b7\u0394p/kT)\u00b7(\u03c4c/\u03c4\u2080)^\u00bc. The PMF lift is \u03a6(\u0394p=121.5)/\u03a6(\u0394p=0) at the same temperature, isolating the proton-motive-force enhancement honestly. SZL-\u03a6 is a <b>PROPOSED engineering gate, NOT the formal \u039b</b>.');
|
| 11906 |
+
function draw3d(lift){
|
| 11907 |
+
var host=ex('phi-3d'); if(!host||!window.THREE) return; host.innerHTML='';
|
| 11908 |
+
var W=host.clientWidth||460,H=host.clientHeight||320;
|
| 11909 |
+
var sc=new THREE.Scene(); var cam=new THREE.PerspectiveCamera(52,W/H,0.1,1000); cam.position.set(0,3,12);
|
| 11910 |
+
var rnd; try{ rnd=new THREE.WebGLRenderer({antialias:true,alpha:true}); }catch(e){ host.innerHTML='<div class="row mono dim" style="padding:1rem">3D unavailable: '+esc(e.message)+'</div>'; return; }
|
| 11911 |
+
rnd.setSize(W,H); rnd.setPixelRatio(Math.min(2,window.devicePixelRatio||1)); host.appendChild(rnd.domElement);
|
| 11912 |
+
sc.add(new THREE.AmbientLight(0xffffff,0.8)); var pl=new THREE.PointLight(0x5fb3a3,1.0); pl.position.set(5,8,8); sc.add(pl);
|
| 11913 |
+
var baseH=1.2, liftH=baseH*Math.max(1,Math.min(120,lift))/4;
|
| 11914 |
+
var b1=new THREE.Mesh(new THREE.CylinderGeometry(0.6,0.6,baseH,28),new THREE.MeshStandardMaterial({color:0x6fa8dc,transparent:true,opacity:0.85})); b1.position.set(-2,baseH/2-2,0); sc.add(b1);
|
| 11915 |
+
var b2=new THREE.Mesh(new THREE.CylinderGeometry(0.6,0.6,Math.min(8,liftH),28),new THREE.MeshStandardMaterial({color:0x5fb3a3,emissive:0x0a1, transparent:true,opacity:0.9})); b2.position.set(2,Math.min(8,liftH)/2-2,0); sc.add(b2);
|
| 11916 |
+
var grid=new THREE.GridHelper(14,14,0x223,0x152); grid.position.y=-2; sc.add(grid);
|
| 11917 |
+
var stop=false,a=0;
|
| 11918 |
+
function loop(){ if(stop||!ex('phi-3d')){ try{rnd.dispose();}catch(e){} return; } if(!RM){ a+=0.005; sc.rotation.y=a; } rnd.render(sc,cam); requestAnimationFrame(loop); }
|
| 11919 |
+
loop();
|
| 11920 |
+
window._tailTimers=window._tailTimers||[]; window._tailTimers.push(setInterval(function(){ if(!ex('phi-3d')) stop=true; },4000));
|
| 11921 |
+
}
|
| 11922 |
+
poll('phi-gate', async function(){
|
| 11923 |
+
var dw=await J(SAPI+'/scaling/unified?M=70&T=310&dp=121.5&tau_c=6.05');
|
| 11924 |
+
var dn=await J(SAPI+'/scaling/unified?M=70&T=310&dp=0&tau_c=6.05');
|
| 11925 |
+
if(ex('phi-raw')) ex('phi-raw').textContent=JSON.stringify({with_pmf:dw,no_pmf:dn},null,2);
|
| 11926 |
+
var pw=dw.phi||0, pn=dn.phi||0, lift=pn?pw/pn:0;
|
| 11927 |
+
E('phi-w').textContent=fmt(pw,1); E('phi-n').textContent=fmt(pn,1);
|
| 11928 |
+
E('phi-lift').textContent=(lift?('\u00d7'+fmt(lift,1)):'\u2014'); E('phi-lift').style.color=GOLD;
|
| 11929 |
+
E('phi-st').textContent=dw.status||'PROPOSED'; E('phi-st').style.color=WARN;
|
| 11930 |
+
var t=dw.terms||{};
|
| 11931 |
+
if(window.mkEchart) window.mkEchart('phi-chart',{backgroundColor:'transparent',tooltip:{trigger:'axis'},grid:{left:60,right:18,top:24,bottom:54},
|
| 11932 |
+
xAxis:{type:'category',data:['network M^\u00be','PMF enh.','coherence'],axisLabel:{color:'#A8B6CC',rotate:20,fontSize:10}},
|
| 11933 |
+
yAxis:{type:'value',name:'term value',nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11934 |
+
series:[{type:'bar',barWidth:'46%',data:[{value:Number((t['network_M^beta']||0).toFixed(3)),itemStyle:{color:INFO}},{value:Number((t['pmf_enhancement_exp(eta*dp/kT)']||0).toFixed(3)),itemStyle:{color:TEAL}},{value:Number((t['coherence_(tau_c/tau0)^0.25']||0).toFixed(3)),itemStyle:{color:VIOLET}}],label:{show:true,position:'top',color:'#cfcfcf',fontSize:10,formatter:'{c}'}}]});
|
| 11935 |
+
draw3d(lift);
|
| 11936 |
+
});
|
| 11937 |
+
}
|
| 11938 |
+
|
| 11939 |
+
// ───────────── VISUAL 4 — UNIVERSAL-EXPONENT COMPARATOR ─────────────
|
| 11940 |
+
function renderExponents(c){
|
| 11941 |
+
c.innerHTML='<div class="card"><div class="card-h"><span class="card-t">'+dot()+'Universal scaling exponents across domains (live)</span><span class="card-ep">'+autoPill('exp-gate')+'</span></div>'
|
| 11942 |
+
+'<div id="exp-chart" style="height:clamp(300px,46vh,440px);margin-top:.6rem"></div>'
|
| 11943 |
+
+'<div id="exp-table" class="mono" style="font-size:11px;margin-top:.6rem"></div></div>'
|
| 11944 |
+
+'<details class="raw"><summary>raw /scaling/exponents</summary><pre class="out" id="exp-raw">\u2014</pre></details>'
|
| 11945 |
+
+honesty('Each exponent is attributed to its source domain and author (biology: Kleiber/WBE/MTE; urban: Bettencourt-West 2007; compute: Kaplan 2020). SZL asserts none of these as its own discovery \u2014 the comparator simply renders the live endpoint.');
|
| 11946 |
+
poll('exp-gate', async function(){
|
| 11947 |
+
var d=await J(SAPI+'/scaling/exponents');
|
| 11948 |
+
if(ex('exp-raw')) ex('exp-raw').textContent=JSON.stringify(d,null,2);
|
| 11949 |
+
var rows=(d&&d.exponents)||[];
|
| 11950 |
+
var cats=rows.map(function(r){ return r.quantity; });
|
| 11951 |
+
var domColor={biology:TEAL,urban:GOLD,compute:VIOLET};
|
| 11952 |
+
if(window.mkEchart) window.mkEchart('exp-chart',{backgroundColor:'transparent',tooltip:{trigger:'item',formatter:function(p){ var r=rows[p.dataIndex]; return r.domain+': '+r.quantity+'<br/>exponent = '+r.exponent+'<br/>'+r.cite; }},
|
| 11953 |
+
grid:{left:200,right:30,top:20,bottom:40},
|
| 11954 |
+
xAxis:{type:'value',name:'scaling exponent',nameLocation:'middle',nameGap:26,nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11955 |
+
yAxis:{type:'category',data:cats,axisLabel:{color:'#A8B6CC',fontSize:10}},
|
| 11956 |
+
series:[{type:'bar',barWidth:'56%',data:rows.map(function(r){ return {value:r.exponent,itemStyle:{color:domColor[r.domain]||INFO}}; }),label:{show:true,position:'right',color:'#cfcfcf',fontSize:10,formatter:function(p){return p.value;}}}]});
|
| 11957 |
+
var html='<table style="width:100%;border-collapse:collapse"><tr style="color:'+DIM+'"><th style="text-align:left;padding:3px 6px">domain</th><th style="text-align:left;padding:3px 6px">quantity</th><th style="text-align:right;padding:3px 6px">exponent</th><th style="text-align:left;padding:3px 6px">cite</th></tr>';
|
| 11958 |
+
rows.forEach(function(r){ html+='<tr><td style="padding:3px 6px;color:'+(domColor[r.domain]||INFO)+'">'+esc(r.domain)+'</td><td style="padding:3px 6px">'+esc(r.quantity)+'</td><td style="padding:3px 6px;text-align:right;color:'+GOLD+'">'+esc(r.exponent)+'</td><td style="padding:3px 6px;color:'+DIM+'">'+esc(r.cite)+'</td></tr>'; });
|
| 11959 |
+
html+='</table>'; setHTML('exp-table',html);
|
| 11960 |
+
});
|
| 11961 |
+
}
|
| 11962 |
+
|
| 11963 |
+
// ───────────── VISUAL 5 — COMPUTE ALLOMETRY (Kaplan 2020) ─────────────
|
| 11964 |
+
function renderCompute(c){
|
| 11965 |
+
c.innerHTML='<div class="card"><div class="card-h"><span class="card-t">'+dot()+'Compute allometry \u2014 model loss vs parameters (live)</span><span class="card-ep">'+autoPill('cmp-gate')+'</span></div>'
|
| 11966 |
+
+'<div style="margin:.2rem 0 .7rem;padding:.5rem .7rem;border:1px solid '+WARN+';border-left:3px solid '+WARN+';border-radius:7px;background:'+WARN+'14;font-family:var(--mono,monospace);font-size:11px;color:'+WARN+'"><b>PROPOSED analogy.</b> SZL claims only the allometric <i>framing</i> (compute capability as a metabolic network), NOT the scaling law itself \u2014 that is Kaplan et al. 2020.</div>'
|
| 11967 |
+
+'<div class="kpis" id="cmp-gate">'+kpi('Exponent \u03b1','cmp-a','L \u221d N^(\u2212\u03b1)',TEAL)+kpi('7B loss','cmp-7','predicted',INFO)+kpi('70B loss','cmp-70','predicted',GOLD)+kpi('700B loss','cmp-700','predicted',VIOLET)+'</div>'
|
| 11968 |
+
+'<div id="cmp-chart" style="height:clamp(300px,44vh,420px);margin-top:.6rem"></div>'
|
| 11969 |
+
+'<div class="mono dim" style="font-size:11px;margin-top:.4rem">Each point is a live <code>/scaling/compute?params=</code> call. Bigger model \u2192 lower loss, the same diminishing-returns allometry biology shows.</div></div>'
|
| 11970 |
+
+'<div class="card" style="padding:.7rem .9rem"><span class="mono dim" style="font-size:11px">Formula author: </span>'+cite('https://arxiv.org/abs/2001.08361','Kaplan et al. 2020 \u2014 Scaling Laws for Neural Language Models, arXiv:2001.08361')+'</div>'
|
| 11971 |
+
+'<details class="raw"><summary>raw /scaling/compute samples</summary><pre class="out" id="cmp-raw">\u2014</pre></details>'
|
| 11972 |
+
+honesty('Predicted loss L(N) \u2248 L\u2080\u00b7N^(\u2212\u03b1), \u03b1\u22480.076 (<b>Kaplan et al. 2020</b>). The \u201ccapability metabolism\u201d framing is the SZL tie-in \u2014 a PROPOSED analogy, not a new law.');
|
| 11973 |
+
var PARAMS=[0.1,0.5,1,3,7,13,30,70,175,400,700];
|
| 11974 |
+
poll('cmp-gate', async function(){
|
| 11975 |
+
var pts=[]; var raw=[];
|
| 11976 |
+
for(var i=0;i<PARAMS.length;i++){ var d=await J(SAPI+'/scaling/compute?params='+PARAMS[i]); pts.push([d.params_billions, d.predicted_loss]); raw.push(d); }
|
| 11977 |
+
if(ex('cmp-raw')) ex('cmp-raw').textContent=JSON.stringify(raw,null,2);
|
| 11978 |
+
var alpha=raw.length?raw[0].exponent_alpha:null;
|
| 11979 |
+
E('cmp-a').textContent=fmt(alpha,3);
|
| 11980 |
+
function at(P){ for(var i=0;i<raw.length;i++){ if(Math.abs(raw[i].params_billions-P)<1e-9) return raw[i].predicted_loss; } return null; }
|
| 11981 |
+
E('cmp-7').textContent=fmt(at(7),3); E('cmp-70').textContent=fmt(at(70),3); E('cmp-700').textContent=fmt(at(700),3);
|
| 11982 |
+
if(window.mkEchart) window.mkEchart('cmp-chart',{backgroundColor:'transparent',tooltip:{trigger:'item',formatter:function(p){ return p.value[0]+'B params<br/>loss = '+fmt(p.value[1],4); }},
|
| 11983 |
+
grid:{left:64,right:24,top:24,bottom:48},
|
| 11984 |
+
xAxis:{type:'log',name:'parameters (billions)',nameLocation:'middle',nameGap:30,nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11985 |
+
yAxis:{type:'value',name:'predicted loss L(N)',nameTextStyle:{color:'#A8B6CC'},axisLabel:{color:'#A8B6CC'},splitLine:{lineStyle:{color:'#1c2230'}}},
|
| 11986 |
+
series:[{type:'line',smooth:true,symbolSize:9,data:pts,lineStyle:{color:VIOLET,width:2.4},itemStyle:{color:GOLD},areaStyle:{color:'rgba(183,155,214,0.12)'}}]});
|
| 11987 |
+
});
|
| 11988 |
+
}
|
| 11989 |
+
|
| 11990 |
+
function reg(key,title,badge,sub,fn){ if(!window.VIEWS) return; window.VIEWS[key]={title:title,badge:badge,sub:sub,render:async function(c){ fn(c); }}; }
|
| 11991 |
+
whenReady(function(){
|
| 11992 |
+
reg('scaling','Metabolic Scaling','EXPERIMENTAL \u00b7 KLEIBER/WBE/MTE \u00b7 SZL-\u03a6 PROPOSED',
|
| 11993 |
+
'Living view of <b>allometric scaling</b>: Kleiber\u2019s 3/4-power metabolic law, the lifetime-heartbeats invariant, the PROPOSED <b>SZL-\u03a6</b> unification (network \u00d7 PMF activation \u00d7 coherence), the universal-exponent comparator, and the Kaplan-2020 compute-allometry analogue. All five visuals are recomputed live from <code>/api/a11oy/v1/scaling/*</code>. EXPERIMENTAL-tier \u2014 adds nothing to the locked 8; \u039b stays <b>Conjecture 1</b>; SZL-\u03a6 is a <b>PROPOSED engineering gate, NOT the formal \u039b</b>. Every borrowed law cited to its real author.',
|
| 11994 |
+
function(c){
|
| 11995 |
+
c.innerHTML='<div class="row" id="sca-tabs" style="gap:.4rem;flex-wrap:wrap;margin-bottom:.7rem"></div><div id="sca-body"></div>';
|
| 11996 |
+
var tabs=[['kleiber','Kleiber curve',renderKleiber],['heart','Lifetime heartbeats \u2605',renderHeart],['unified','SZL-\u03a6 unified',renderUnified],['exponents','Exponent comparator',renderExponents],['compute','Compute allometry',renderCompute]];
|
| 11997 |
+
function paint(idx){ var host=ex('sca-body'); if(!host) return; tabs.forEach(function(t,i){ var b=ex('sca-tab-'+i); if(b){ b.style.background=(i===idx)?TEAL+'22':'transparent'; b.style.color=(i===idx)?TEAL:DIM; b.style.borderColor=(i===idx)?TEAL:'#2a2a2a'; } }); host.innerHTML=''; var sub=document.createElement('div'); sub.id='sca-sub'; host.appendChild(sub); tabs[idx][2](sub); }
|
| 11998 |
+
var bar=ex('sca-tabs');
|
| 11999 |
+
tabs.forEach(function(t,i){ var b=document.createElement('button'); b.id='sca-tab-'+i; b.className='mono'; b.textContent=t[1]; b.style.cssText='border:1px solid #2a2a2a;border-radius:7px;padding:.4rem .8rem;cursor:pointer;font-size:12px;background:transparent;color:'+DIM; b.addEventListener('click',function(){ paint(i); }); if(bar) bar.appendChild(b); });
|
| 12000 |
+
paint(1); // open on the HERO (lifetime heartbeats) first
|
| 12001 |
+
});
|
| 12002 |
+
});
|
| 12003 |
+
|
| 12004 |
+
function injectNav(){
|
| 12005 |
+
var side=document.querySelector('.side .nav')||document.querySelector('.side');
|
| 12006 |
+
var anchor=document.querySelector('.nav-item[data-view="verticals"]')||document.querySelector('.nav-item');
|
| 12007 |
+
if(!side||!anchor){ return setTimeout(injectNav,250); }
|
| 12008 |
+
if(document.getElementById('scaling-nav-group')){ return; }
|
| 12009 |
+
var grp=document.createElement('div'); grp.className='nav-group'; grp.id='scaling-nav-group'; grp.textContent='Metabolic Scaling (EXPERIMENTAL)';
|
| 12010 |
+
var n=document.createElement('div'); n.className='nav-item'; n.id='scaling-nav-item'; n.setAttribute('data-view','scaling'); n.setAttribute('onclick',"go('scaling')");
|
| 12011 |
+
n.setAttribute('title','Allometric scaling: Kleiber 3/4 law, lifetime-heartbeats invariant, PROPOSED SZL-\u03a6 unification, universal-exponent comparator, Kaplan-2020 compute allometry. Live from /api/a11oy/v1/scaling/*. EXPERIMENTAL-tier; \u039b stays Conjecture 1.');
|
| 12012 |
+
n.innerHTML='<span class="ico">\u2696</span>Metabolic Scaling';
|
| 12013 |
+
var parent=anchor.parentNode; parent.appendChild(grp); parent.appendChild(n);
|
| 12014 |
+
try{ console.log('[a11oy] Scaling tab registered: scaling'); }catch(e){}
|
| 12015 |
+
}
|
| 12016 |
+
if(document.readyState==='loading'){ document.addEventListener('DOMContentLoaded',injectNav); } else { injectNav(); }
|
| 12017 |
+
})();
|
| 12018 |
+
</script>
|
| 12019 |
+
|
| 12020 |
</body>
|
| 12021 |
</html>
|