docs: disclose single-engine-host node distribution + add study site & story slides
Paper (stage-07 lead): add an Apparatus disclosure (§4.3) and a Node-distribution limitation (§7) stating that all relay hops ran as isolated Docker containers on a single engine host and the two phones were consenting endpoints, not forwarders. Containment (engine != local) holds; cross-machine timing is out of scope / future work. Add the self-contained study site (docs/paper-site/: build_site.py, index.html) built straight from the sealed paper markdown, plus a generator + six 1080x1920 Instagram-story teaser slides (make_story_slides.py, story/) using only sealed, audited numbers. Defensive measurement framing throughout; the pre-registered nulls are reported, not spun.
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
<!doctype html><html><head><meta charset=utf-8>
|
||||
<meta name=viewport content="width=1080,height=1920">
|
||||
<style>
|
||||
*{margin:0;padding:0;box-sizing:border-box}
|
||||
html,body{width:1080px;height:1920px;overflow:hidden}
|
||||
body{
|
||||
font-family:-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
|
||||
background:radial-gradient(120% 90% at 50% 0%,#141b2e 0%,#0a0e1a 55%,#05070f 100%);
|
||||
color:#eef2fb; position:relative;
|
||||
}
|
||||
.frame{position:absolute;inset:0;padding:96px 84px;display:flex;flex-direction:column}
|
||||
.kicker{font-size:30px;letter-spacing:.30em;font-weight:700;text-transform:uppercase;color:#63d3ff}
|
||||
.rq{font-size:34px;letter-spacing:.10em;font-weight:800;color:#8b9bc4;text-transform:uppercase}
|
||||
h1{font-size:104px;line-height:1.02;font-weight:850;letter-spacing:-.01em;margin:8px 0}
|
||||
h2{font-size:62px;line-height:1.08;font-weight:800;letter-spacing:-.01em}
|
||||
.sub{font-size:40px;line-height:1.34;color:#c3cce2;font-weight:450}
|
||||
.big{font-family:'SF Mono',ui-monospace,Menlo,monospace;font-weight:800;letter-spacing:-.02em}
|
||||
.mono{font-family:'SF Mono',ui-monospace,Menlo,monospace}
|
||||
.pill{display:inline-block;padding:12px 26px;border-radius:999px;font-size:30px;font-weight:700}
|
||||
.good{background:rgba(52,211,153,.16);color:#59f0b6;border:2px solid rgba(52,211,153,.45)}
|
||||
.bad{background:rgba(248,113,113,.14);color:#ff9b9b;border:2px solid rgba(248,113,113,.4)}
|
||||
.muted{color:#8b9bc4}
|
||||
.foot{position:absolute;left:84px;right:84px;bottom:70px;display:flex;justify-content:space-between;
|
||||
align-items:center;font-size:26px;color:#6b7a9c;font-weight:600;letter-spacing:.04em}
|
||||
.spacer{flex:1}
|
||||
.card{background:rgba(255,255,255,.035);border:2px solid rgba(255,255,255,.08);border-radius:28px;
|
||||
padding:40px 44px}
|
||||
.dim{color:#9aa7c6}
|
||||
</style></head><body>
|
||||
<div class=frame>
|
||||
<div class=kicker>Pre-registered · Defensive measurement</div>
|
||||
<div class=spacer></div>
|
||||
<h1>Can a<br>consent-gated<br>onion relay<br>actually<br><span style="color:#63d3ff">hide who<br>talks to whom?</span></h1>
|
||||
<div style="height:38px"></div>
|
||||
<div class=sub>We built the instrument to <b>measure</b> it —<br>then pre-registered the answer before<br>a single confirmatory packet moved.</div>
|
||||
<div class=spacer></div>
|
||||
<div class=foot><span>SOR‑CONSENT</span><span>lab-only · isolated-engine · sealed</span></div>
|
||||
</div></body></html>
|
||||
Reference in New Issue
Block a user