betterwithage commited on
Commit
9d6ebfb
·
verified ·
1 Parent(s): 2a5fe4a

chore(sync): mirror front-door files to Space (hf-sync)

Browse files

Automated front-door sync from szl-holdings/a11oy main via hf-sync.
Added/updated: cathedral.html, cathedral_genius.html, console/docs.html, console/index.html, console/pricing.html, console/throne-room.html, console/throne-room.js, live_wires.html, pages/api-keys.html, pages/assurance.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/energy-ops.html, pages/evidence.html, pages/fabric.html, pages/gap-report.html, pages/harvest.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/pinn-console.html, pages/pinn.html, pages/pnt.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/verify.html, pages/wallpa.html, pages/warhacker.html, pages/wasi-rikuq.html, pages/wires.html, static/a11oy_cathedral.js, static/cathedral_app.js, static/shared/szl_codename_sanitizer.js, static/shared/szl_holo3d.js, static/shared/szl_label_engine.js, static/shared/szl_receipt_cosign.js, web/agent-loop.html, web/agentic-gpu.html, web/autoreview.html, web/console.html, web/console_index.html, web/constitution.html, web/defense-readiness.html, web/determinacy.html, web/dns.html, web/elite_console.html, web/energy-3d.html, web/energy-harvest.html, web/energy-holographic.html, web/energy.html, web/estate-hologram.html, web/fleet-c2.html, web/formulas.html, web/governance.html, web/holo.html, web/hologram.html, web/immune.html, web/index.html, web/living-anatomy.html, web/materials.html, web/nemo.html, web/operator.html, web/quant.html, web/restraint-bench.html, web/restraint.html, web/sda.html, web/signature-is-not-proof.html, web/v4_fleet_panel.html
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.

Files changed (1) hide show
  1. pages/assurance.html +59 -0
pages/assurance.html CHANGED
@@ -471,6 +471,26 @@
471
  <span class="chip chip-modeled">MODELED</span> model-derived ·
472
  <span class="chip chip-roadmap">ROADMAP</span> planned / not yet delivered
473
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
474
  </section>
475
 
476
  <!-- =====================================================================
@@ -952,6 +972,45 @@ async function checkFit() {
952
  }
953
  }
954
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
955
  /* ---- boot ---- */
956
  window.addEventListener('DOMContentLoaded', function() {
957
  loadMatrix();
 
471
  <span class="chip chip-modeled">MODELED</span> model-derived ·
472
  <span class="chip chip-roadmap">ROADMAP</span> planned / not yet delivered
473
  </div>
474
+
475
+ <!-- Auditor Evidence Pack: one signed, offline-verifiable JSON bundling the
476
+ assurance matrix + khipu organ chain heads + lake health + doctrine snapshot,
477
+ self-hashed (sha3_256) so an auditor can re-verify offline. -->
478
+ <div style="margin-top:20px;border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;background:var(--bg-card);">
479
+ <div style="font-weight:700;font-size:14px;margin-bottom:4px;">Auditor Evidence Pack</div>
480
+ <div style="font-size:12px;color:var(--text-dim);margin-bottom:12px;">
481
+ One signed, offline-verifiable JSON bundling the assurance matrix, khipu chain heads
482
+ (re-walked <code>links_intact</code>), the lake health snapshot, and the doctrine
483
+ snapshot — self-hashed with <strong>sha3_256</strong> so an auditor re-verifies offline.
484
+ Honest: integrity is COMPUTED, not asserted; signature is the demo key (NOT production cosign).
485
+ </div>
486
+ <div class="btn-row">
487
+ <button class="btn btn-primary" id="evidence-pack-btn" onclick="downloadEvidencePack()">
488
+ Download Evidence Pack
489
+ </button>
490
+ <a class="btn" href="/api/a11oy/v1/assurance/evidence-pack" target="_blank">View JSON →</a>
491
+ </div>
492
+ <div id="evidence-pack-status" class="status-line"></div>
493
+ </div>
494
  </section>
495
 
496
  <!-- =====================================================================
 
972
  }
973
  }
974
 
975
+ /* ==================================================================
976
+ SECTION B' — Download Auditor Evidence Pack (sha3_256 self-verifiable)
977
+ ================================================================== */
978
+ async function downloadEvidencePack() {
979
+ var btn = el('evidence-pack-btn');
980
+ if (btn) btn.disabled = true;
981
+ setStatus('evidence-pack-status', 'Assembling evidence pack from live surfaces…', true);
982
+ try {
983
+ var resp = await fetch('/api/a11oy/v1/assurance/evidence-pack');
984
+ var data = await resp.json();
985
+ var text = JSON.stringify(data, null, 2);
986
+
987
+ var blob = new Blob([text], { type: 'application/json' });
988
+ var url = URL.createObjectURL(blob);
989
+ var a = document.createElement('a');
990
+ var stamp = (data.generated_at || new Date().toISOString()).replace(/[:.]/g, '-');
991
+ a.href = url;
992
+ a.download = 'a11oy-evidence-pack-' + stamp + '.json';
993
+ document.body.appendChild(a);
994
+ a.click();
995
+ document.body.removeChild(a);
996
+ setTimeout(function(){ URL.revokeObjectURL(url); }, 4000);
997
+
998
+ // We do NOT recompute sha3_256 in-browser (WebCrypto has no SHA3, and shipping a
999
+ // hand-rolled hash would risk a false result — honesty over a fake green check).
1000
+ // The digest + exact canonicalization are in the pack so an auditor re-verifies
1001
+ // offline with a trusted sha3_256 tool. We only surface what the server reported.
1002
+ var sig = (data.signature || {});
1003
+ var sigMsg = sig.signed ? (' · signed [' + (sig.keyid || 'demo') + ']') : ' · honest-unsigned (DSSE_PLACEHOLDER)';
1004
+ setStatus('evidence-pack-status',
1005
+ '✓ Downloaded. sha3_256=' + String(data.pack_sha3_256 || '').substring(0, 24) + '…' + sigMsg +
1006
+ ' · re-verify offline per the pack’s digest_canonicalization note.', false);
1007
+ } catch(e) {
1008
+ setStatus('evidence-pack-status', '⚠ Could not assemble evidence pack: ' + e.message, false);
1009
+ } finally {
1010
+ if (btn) btn.disabled = false;
1011
+ }
1012
+ }
1013
+
1014
  /* ---- boot ---- */
1015
  window.addEventListener('DOMContentLoaded', function() {
1016
  loadMatrix();