219 lines
12 KiB
HTML
219 lines
12 KiB
HTML
<!doctype html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
<title>IF.emotion Evidence Trace — 702d4607-4b54-45b1-aecf-b6728d80f124</title>
|
||
<style>
|
||
:root {
|
||
--bg: #fffdf7;
|
||
--panel: #ffffff;
|
||
--text: #1f2937;
|
||
--muted: #6b7280;
|
||
--border: #e5e7eb;
|
||
--code: #0b1020;
|
||
--link: #1d4ed8;
|
||
}
|
||
body {
|
||
margin: 0;
|
||
font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji",
|
||
"Segoe UI Emoji";
|
||
background: var(--bg);
|
||
color: var(--text);
|
||
line-height: 1.45;
|
||
}
|
||
header {
|
||
padding: 20px 18px 10px;
|
||
border-bottom: 1px solid var(--border);
|
||
background: #fff9e6;
|
||
}
|
||
header h1 {
|
||
margin: 0;
|
||
font-size: 18px;
|
||
font-weight: 700;
|
||
letter-spacing: 0.2px;
|
||
}
|
||
header .sub {
|
||
margin-top: 4px;
|
||
color: var(--muted);
|
||
font-size: 13px;
|
||
}
|
||
main {
|
||
max-width: 980px;
|
||
margin: 0 auto;
|
||
padding: 18px;
|
||
}
|
||
a {
|
||
color: var(--link);
|
||
text-decoration: none;
|
||
}
|
||
a:hover {
|
||
text-decoration: underline;
|
||
}
|
||
.card {
|
||
background: var(--panel);
|
||
border: 1px solid var(--border);
|
||
border-radius: 12px;
|
||
padding: 14px 14px;
|
||
margin: 12px 0;
|
||
box-shadow: 0 1px 0 rgba(0,0,0,0.02);
|
||
}
|
||
.meta {
|
||
display: grid;
|
||
grid-template-columns: 160px 1fr;
|
||
gap: 6px 12px;
|
||
font-size: 13px;
|
||
}
|
||
.meta .k {
|
||
color: var(--muted);
|
||
}
|
||
pre {
|
||
background: #0b1020;
|
||
color: #e5e7eb;
|
||
padding: 12px;
|
||
border-radius: 10px;
|
||
overflow: auto;
|
||
font-size: 12px;
|
||
line-height: 1.4;
|
||
}
|
||
code {
|
||
background: #f3f4f6;
|
||
padding: 2px 6px;
|
||
border-radius: 6px;
|
||
font-size: 12px;
|
||
}
|
||
table {
|
||
width: 100%;
|
||
border-collapse: collapse;
|
||
font-size: 13px;
|
||
}
|
||
th, td {
|
||
text-align: left;
|
||
border-bottom: 1px solid var(--border);
|
||
padding: 8px 6px;
|
||
vertical-align: top;
|
||
}
|
||
th {
|
||
color: var(--muted);
|
||
font-weight: 600;
|
||
}
|
||
.badge {
|
||
display: inline-block;
|
||
padding: 2px 8px;
|
||
border-radius: 999px;
|
||
border: 1px solid var(--border);
|
||
color: var(--muted);
|
||
font-size: 12px;
|
||
white-space: nowrap;
|
||
}
|
||
.warn {
|
||
border-color: #f59e0b;
|
||
color: #92400e;
|
||
background: #fff7ed;
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<header>
|
||
<h1>IF.emotion Evidence Trace — 702d4607-4b54-45b1-aecf-b6728d80f124</h1>
|
||
<div class="sub">Public, static evidence pages built from IF.emotion trace bundles (no auth; no live API calls).</div>
|
||
</header>
|
||
<main>
|
||
|
||
<div class="card">
|
||
<div class="meta">
|
||
<div class="k">Trace ID</div><div><code>702d4607-4b54-45b1-aecf-b6728d80f124</code> </div>
|
||
<div class="k">Timestamp (UTC)</div><div><code>2025-12-22T15:01:18Z</code></div>
|
||
<div class="k">Provider</div><div><code>codex</code></div>
|
||
<div class="k">Model</div><div><code>gpt-5.2</code></div>
|
||
<div class="k">Bundle</div><div><a href="https://infrafabric.io/static/hosted/emo_trace_payload_702d4607-4b54-45b1-aecf-b6728d80f124.tar.gz">emo_trace_payload_702d4607-4b54-45b1-aecf-b6728d80f124.tar.gz</a> (SHA256: <code>d2033ff48594b99a9e049166b7a6393ed37d97f510def5f08b452f7f54885641</code>)</div>
|
||
<div class="k">SHA sidecar</div><div><a href="https://infrafabric.io/static/hosted/emo_trace_payload_702d4607-4b54-45b1-aecf-b6728d80f124.tar.gz.sha256">emo_trace_payload_702d4607-4b54-45b1-aecf-b6728d80f124.tar.gz.sha256</a></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2 style="margin:0 0 8px;font-size:15px;">Independent verification</h2>
|
||
<pre># Download the evidence bundle
|
||
curl -fsSL -o emo.tar.gz 'https://infrafabric.io/static/hosted/emo_trace_payload_702d4607-4b54-45b1-aecf-b6728d80f124.tar.gz'
|
||
|
||
# Verify transport integrity
|
||
sha256sum emo.tar.gz
|
||
# Expected: d2033ff48594b99a9e049166b7a6393ed37d97f510def5f08b452f7f54885641
|
||
|
||
# Download verifier (single-file)
|
||
curl -fsSL -o iftrace.py 'https://infrafabric.io/static/hosted/iftrace.py'
|
||
python3 iftrace.py verify emo.tar.gz --expected-sha256 d2033ff48594b99a9e049166b7a6393ed37d97f510def5f08b452f7f54885641
|
||
</pre>
|
||
<div style="color:var(--muted);font-size:13px;">
|
||
These pages are static. Verification does not require logging into this server.
|
||
</div>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2 style="margin:0 0 8px;font-size:15px;">User request (captured)</h2>
|
||
<pre>In English: Do therapists need therapy? Answer briefly and practically.</pre>
|
||
<h2 style="margin:12px 0 8px;font-size:15px;">Model output (captured)</h2>
|
||
<pre>Yeah, therapists need therapy. That’s not weird; it’s basic maintenance.
|
||
|
||
Mira—your emotional instinct here is right: if your job is to sit in other people’s pain all day, it will get on you. The part I’ll challenge is any mystical framing like “healers must be healed” because it’s unfalsifiable and useless; a vacuum cleaner doesn’t need 50 labels for dirt, it needs one question: is there dirt in the system, yes or no? The practical, testable reason is that therapists are humans with blind spots and stress responses, and “behavioral principles are universal: they affect therapists no less than their patients.” [1]
|
||
|
||
The problem isn’t that therapists are “broken.” The problem is that their work reliably creates load—emotional, cognitive, relational—and without a place to process it, it leaks into judgment, boundaries, and burnout. Clean mechanism, no spirituality.
|
||
|
||
What specific behavior in the next 30 minutes?
|
||
|
||
Sources:
|
||
[1] Linehan_Cognitive-Behavioral_Treatment_of_Borderline_Persona__41191410.pdf — Full text of Linehan_Cognitive-Behavioral_Treatment_of_Borderline_Persona__41191410.pdf (if://citation/61eb2bfe-4bad-4e60-b9e6-5df12de64bce/v1) — TTT verified (hybrid-fips204)
|
||
|
||
Trace: 702d4607-4b54-45b1-aecf-b6728d80f124
|
||
</pre>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2 style="margin:0 0 8px;font-size:15px;">TTT child artifacts</h2>
|
||
<table><thead><tr><th>Artifact</th><th>SHA256</th><th>if:// citation</th><th>PQ status</th></tr></thead><tbody><tr><td><code>payload/headers.txt</code></td><td><code>0f6252f4e5016ad405a5214cc07bc33c8d77fbe2b203b6cc03d117a0b3f401c7</code></td><td><code>if://citation/0e83c851-df9c-4709-b577-b12011ae19d4/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/response.json</code></td><td><code>8a863122bbe977de66520d3944770def27c6933f6aee16e1c48ec433e2c9324e</code></td><td><code>if://citation/909fc592-c5e6-4037-8c08-46d1f7c4b19d/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/trace_payload.json</code></td><td><code>bdf09c270b047945b1591540f63d977e13869eee4d21d2d0632f46215b9b30f0</code></td><td><code>if://citation/7ef2ccb4-288e-4611-a92f-abafe8670bd7/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/trace_events.jsonl</code></td><td><code>406ec9958a67d98a188114a4caf9b7e6a8c990ddfbcb9bf6f4f600a150c50690</code></td><td><code>if://citation/d705b943-7e1c-464a-9549-953a6a24975b/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/ttt_signed_record.json</code></td><td><code>a4563be1f2781a19a3ea777b736557d9bc5b45b96c2d730c9db253ad9b845c5c</code></td><td><code>if://citation/a4785ea4-f5fd-4f02-a217-5b660d53d1da/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/api_trace.json</code></td><td><code>7deed9e6dfdd3d9c9b7d2b908a7f8c29e412810c701a66ea6f9b0ab1c5328f54</code></td><td><code>if://citation/54c17185-dbaf-4e0a-88ad-d7f08b659019/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/api_events.json</code></td><td><code>d8fdd4bcca78b350231ed338608fbc85a08564f52acdc599fd58a381c9b5b851</code></td><td><code>if://citation/7f3c4adc-b04e-454c-941b-b85cbb2201a4/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/if_story.md</code></td><td><code>7df089a4ddfb88ec92899d9259893b3afe2fb7637993e95f8c41e43ca5c6ecd4</code></td><td><code>if://citation/58d89a06-ec10-4294-bb6a-8fec8ad72e7f/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/trace_ed25519.pub</code></td><td><code>72f2b5f2830b6e0f932c3071e9921ae083d6d76c69ce8720ea09e4473aee5e36</code></td><td><code>if://citation/a450784a-3428-466f-b7e8-69b09bf2fb5d/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/req_seen_20251222T15.jsonl</code></td><td><code>120c2a3c0898c2e06ba9a4e4a6dd397e8f219ac5c94496f58da20b89417f7b5a</code></td><td><code>if://citation/ddda3904-1478-46f2-9369-f8b9f3d3a550/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/req_seen_head_20251222T15.json</code></td><td><code>d8485f7e9dec3e59ae4bd07dfead63d0b160f116512eae6eb450e93fe5ce2b96</code></td><td><code>if://citation/faf60f42-3416-4781-b382-401270a42e39/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr>
|
||
<tr><td><code>payload/req_seen_inclusion_proof.json</code></td><td><code>8acb86a7db2fb2fe9911ebd61c92c5efa14be6a907915e67d6207c906c8d80cb</code></td><td><code>if://citation/bc3ba1f9-b909-42d4-8704-47645942f3af/v1</code></td><td><span class="badge">hybrid-fips204</span></td></tr></tbody></table>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2 style="margin:0 0 8px;font-size:15px;">IF.STORY (human-readable narrative)</h2>
|
||
<div style="color:var(--muted);font-size:13px;margin-bottom:8px;">
|
||
IF.STORY is a projection/view; the tarball contains the raw JSONL/JSON artifacts for evidence-grade verification.
|
||
</div>
|
||
<pre># IF.story — contextual narrative log
|
||
|
||
Trace: `702d4607-4b54-45b1-aecf-b6728d80f124`
|
||
|
||
Deterministic narrative projection of `trace_events.jsonl`. Each line includes the `event_hash` anchor.
|
||
|
||
- 2025-12-22T15:01:09Z (+0ms) | `request_commit` | Request body commitment; commit_ok=False client_trace_id= | event_hash=dd4d7ef945762571194c85a1b93d5d6debed62d670923dde99459be056d151c7
|
||
- 2025-12-22T15:01:09Z (+2ms) | `req_seen` | REQ_SEEN witnessed; hour=20251222T15 count=1 merkle_root=349c583a0e370c67d81b00b2c4d2162661a6ab2cc84788635a8b4c42cd638e82 | event_hash=e293e0fb903996239a1e3789fcf8d53249c1564bfa4dc7955dba010d29fc35e9
|
||
- 2025-12-22T15:01:09Z (+7ms) | `request_received` | Auth+quota succeeded; provider=codex model=gpt-5.2 stream=False user_len=71 auth_ms=8 | event_hash=87de94783471da242ddefbfa6e4f0a8b387a6e7389bcb3cfe98b5d3d5d0d06dc
|
||
- 2025-12-22T15:01:10Z (+873ms) | `retrieval_done` | Event data keys=['rag_ms', 'retrieval_event_id', 'retrieved_citation_ids', 'retrieved_count'] | event_hash=0cebfa3c693b9d1556cb529e5c79096d22c51f0f438ecefa37f3b358dc6b245a
|
||
- 2025-12-22T15:01:10Z (+873ms) | `prompt_built` | Event data keys=['prompt_ms', 'prompt_sha256'] | event_hash=b4e423e17039b97bc79a9a5de50f8523c62e30c052612fbe4805e2500b4e19a0
|
||
- 2025-12-22T15:01:18Z (+8251ms) | `model_done` | Event data keys=['llm_ms', 'model', 'provider'] | event_hash=25ee1ff385d2341a6ab44fc929b46f7ebcb34d92fb1bf0a326a3afd9ee0959ca
|
||
- 2025-12-22T15:01:18Z (+8263ms) | `replacement_applied` | Event data keys=['citation_id', 'from_preview', 'kind', 'n', 'to_preview'] | event_hash=515b2792d5e6657eda38ab744859d5e5700c1bc96b6bcb9bc6b79865e9c66748
|
||
- 2025-12-22T15:01:18Z (+8263ms) | `trace_finalizing` | Trace finalizing; ok=True provider=codex | event_hash=efbfa181fd0f95028666efbd257317d926269a878787bb0990f8cc4d0ebf927a
|
||
|
||
Notes:
|
||
- Ground truth remains `trace_events.jsonl` + `ttt_signed_record.json`.
|
||
- REQ_SEEN ledger+head are included; public key is `trace_ed25519.pub`.
|
||
</pre>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<a href="index.html">← Back to evidence index</a>
|
||
</div>
|
||
|
||
</main>
|
||
</body>
|
||
</html>
|