betterwithage Claude Opus 4.7 commited on
Commit
b06fb50
·
verified ·
1 Parent(s): 997cdd7

deploy(hf): sync szl-holdings/a11oy@51cc3a8bc33ee38facb5b208d5f9f933af73838c derived COPY set

Browse files

Reusable Dockerfile-COPY-derived deploy from szl-holdings/a11oy 51cc3a8bc33ee38facb5b208d5f9f933af73838c.
Files: 1361 Pruned: 0
Derived from Dockerfile COPY sources (NO hand-maintained allowlist).

Signed-off-by: SZL Holdings <noreply@szlholdings.ai>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

a11oy_command_center.py CHANGED
@@ -6,6 +6,10 @@
6
  Product host: a-11-oy.com (this surface)
7
  Proof host: a11oy.net (do not serve this surface there)
8
 
 
 
 
 
9
  Additive routes:
10
  GET+HEAD /command
11
  GET+HEAD /command-v2
@@ -17,7 +21,7 @@ Additive routes:
17
  GET+HEAD /command/{rest}
18
 
19
  The additive router does not steal /console or the host-root /brain route.
20
- /command remains on elite_console.html; /command-v2 is an independently
21
  reviewable skin until an explicit, evidence-backed promotion changes that.
22
  """
23
  from pathlib import Path
@@ -37,10 +41,9 @@ REQUIRED_PAGES = {"command-v2.html"}
37
 
38
 
39
  def _spa_path() -> Path:
 
40
  here = Path(__file__).resolve().parent
41
  candidates = (
42
- here / "web" / "elite_console.html",
43
- Path("/app/web/elite_console.html"),
44
  here / "pages" / "command-center.html",
45
  Path("/app/pages/command-center.html"),
46
  here / "command-center.html",
@@ -48,7 +51,7 @@ def _spa_path() -> Path:
48
  for candidate in candidates:
49
  if candidate.is_file():
50
  return candidate
51
- return here / "web" / "elite_console.html"
52
 
53
 
54
  def _page(name: str) -> Path:
@@ -153,7 +156,7 @@ def register(app, ns: str = "a11oy") -> List[str]:
153
  _add(CATCHALL, _spa, ["GET", "HEAD"])
154
  _front_move(app, [path for path, _name in SPECIFIC] + list(MOUNTS))
155
  registered.append(
156
- "command-center on /command; /command-v2 additive; "
157
  "constellation/brain/ops beat catch-all; /console and host-root /brain untouched"
158
  )
159
  return registered
@@ -168,11 +171,8 @@ def _selftest() -> None:
168
  spa = _spa_path()
169
  assert spa.is_file(), spa
170
  html = spa.read_text(encoding="utf-8")
171
- assert ("Elite Console" in html) or ("a11oy Command Center" in html)
172
- if spa.name == "elite_console.html":
173
- assert "20 fully-functional tabs" in html
174
- assert "/api/a11oy/" in html
175
- assert "zero mocks" in html.lower()
176
  assert "cdnjs" not in html and "googleapis" not in html and "jsdelivr" not in html
177
  assert "Conjecture 1" in html
178
 
@@ -191,6 +191,8 @@ def _selftest() -> None:
191
  for path in ("/command", "/command/anatomy", "/command/honest"):
192
  response = client.get(path)
193
  assert response.status_code == 200, (path, response.status_code)
 
 
194
 
195
  command_v2 = _page("command-v2.html")
196
  if command_v2.is_file():
 
6
  Product host: a-11-oy.com (this surface)
7
  Proof host: a11oy.net (do not serve this surface there)
8
 
9
+ The canonical /command surface serves the reviewed public Command Center SPA.
10
+ The dormant Elite Console is deliberately not a candidate: its browser-safety,
11
+ API-schema, evidence-source, and canonical-number contracts are not release-ready.
12
+
13
  Additive routes:
14
  GET+HEAD /command
15
  GET+HEAD /command-v2
 
21
  GET+HEAD /command/{rest}
22
 
23
  The additive router does not steal /console or the host-root /brain route.
24
+ /command-v2 is an independently
25
  reviewable skin until an explicit, evidence-backed promotion changes that.
26
  """
27
  from pathlib import Path
 
41
 
42
 
43
  def _spa_path() -> Path:
44
+ """Resolve only the reviewed public Command Center asset."""
45
  here = Path(__file__).resolve().parent
46
  candidates = (
 
 
47
  here / "pages" / "command-center.html",
48
  Path("/app/pages/command-center.html"),
49
  here / "command-center.html",
 
51
  for candidate in candidates:
52
  if candidate.is_file():
53
  return candidate
54
+ return here / "pages" / "command-center.html"
55
 
56
 
57
  def _page(name: str) -> Path:
 
156
  _add(CATCHALL, _spa, ["GET", "HEAD"])
157
  _front_move(app, [path for path, _name in SPECIFIC] + list(MOUNTS))
158
  registered.append(
159
+ "command-center reviewed-public on /command (dormant elite excluded); /command-v2 additive; "
160
  "constellation/brain/ops beat catch-all; /console and host-root /brain untouched"
161
  )
162
  return registered
 
171
  spa = _spa_path()
172
  assert spa.is_file(), spa
173
  html = spa.read_text(encoding="utf-8")
174
+ assert spa.name == "command-center.html"
175
+ assert "a11oy Command Center" in html
 
 
 
176
  assert "cdnjs" not in html and "googleapis" not in html and "jsdelivr" not in html
177
  assert "Conjecture 1" in html
178
 
 
191
  for path in ("/command", "/command/anatomy", "/command/honest"):
192
  response = client.get(path)
193
  assert response.status_code == 200, (path, response.status_code)
194
+ assert "a11oy Command Center" in response.text
195
+ assert client.head(path).status_code == 200, path
196
 
197
  command_v2 = _page("command-v2.html")
198
  if command_v2.is_file():
a11oy_khipu_chat.py CHANGED
@@ -12,11 +12,12 @@ proxies:
12
 
13
  Auth is the publicly documented dummy Bearer not-a-secret. HF_TOKEN is never
14
  read or forwarded. GET does not mint a receipt. POST passes through the lab's
15
- UNSIGNED record_sha256 when present; missing fields are UNKNOWN.
 
16
 
17
  GPU Inference Endpoint remains ROADMAP. Forge lab is SNAPSHOT — not a
18
- trainer, not Serve Studio. Energy-attested-runs 8/8 is SIMULATED. Ask & Act
19
- is not a live control plane. killinchu detector stays SIMULATED.
20
  Λ = Conjecture 1.
21
  """
22
  import hashlib
@@ -36,7 +37,6 @@ from packages.inference.src.voters.khipu_gguf import (
36
  KHIPU_LAB_DUMMY_BEARER,
37
  KHIPU_LAB_V1,
38
  KHIPU_MAX_TOKENS,
39
- KHIPU_MEASURED_PROBE_2026_08_28,
40
  KHIPU_TEMPERATURE,
41
  clamp_max_tokens,
42
  extract_lab_receipt,
@@ -44,24 +44,59 @@ from packages.inference.src.voters.khipu_gguf import (
44
  khipu_lab_v1,
45
  khipu_pin,
46
  )
 
47
 
48
  _STATUS_PATH = "/api/a11oy/v1/khipu/status"
49
  _CHAT_PATH = "/api/a11oy/v1/khipu/chat"
50
  _PROMPT_CHAR_CAP = 4000
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
51
 
52
 
53
  def _honesty() -> dict:
54
  return {
55
- "lab": "MEASURED this request when /healthz returns READY; else FAILED",
 
 
 
56
  "lab_v1": KHIPU_LAB_V1,
57
  "gpu_inference_endpoint": "ROADMAP",
58
  "forge_lab": "SNAPSHOT — not a trainer, not Serve Studio",
59
- "energy_attested_runs": "8/8 SIMULATED",
60
  "ask_and_act": "not a live control plane",
61
  "killinchu_detector": "SIMULATED",
62
  "lambda": "Conjecture 1",
63
  "tokens_per_second": "not reported",
64
- "signing": "UNSIGNED unless the lab returns a signature; never fabricated",
65
  }
66
 
67
 
@@ -86,7 +121,7 @@ async def _healthz() -> tuple[str, dict | None, str | None]:
86
  return "READY", body, None
87
  return "FAILED", body, "healthz HTTP %s status=%s" % (resp.status_code, status or "UNKNOWN")
88
  except Exception as exc:
89
- return "FAILED", None, "%s: %s" % (type(exc).__name__, exc)
90
 
91
 
92
  async def _handle_status(request: Request) -> JSONResponse:
@@ -97,12 +132,8 @@ async def _handle_status(request: Request) -> JSONResponse:
97
  "error": err,
98
  "pin": khipu_pin(),
99
  "honesty": _honesty(),
100
- "measured_probe_2026_08_28": KHIPU_MEASURED_PROBE_2026_08_28,
101
- "doctrine": {
102
- "version": "v11",
103
- "locked_formulas": 8,
104
- "lambda": "Conjecture 1",
105
- },
106
  }
107
  return JSONResponse(payload)
108
 
@@ -155,8 +186,8 @@ async def _handle_chat(request: Request) -> JSONResponse:
155
  extracted = extract_lab_receipt(data)
156
  ok = resp.status_code == 200 and bool(extracted["text"])
157
  lab_status = "READY" if ok else "FAILED"
158
- # Prefer the lab's elapsed_ms when present; otherwise this proxy's wall.
159
- elapsed = extracted["elapsed_ms"] if extracted["elapsed_ms"] is not None else wall_ms
160
  out = {
161
  "ok": ok,
162
  "lab_status": lab_status,
@@ -167,7 +198,14 @@ async def _handle_chat(request: Request) -> JSONResponse:
167
  "usage": extracted["usage"] if ok else {},
168
  "usage_label": "REPORTED" if (ok and extracted["usage"]) else "UNKNOWN",
169
  "elapsed_ms": elapsed,
 
170
  "elapsed_ms_label": "MEASURED",
 
 
 
 
 
 
171
  "wall_ms": wall_ms,
172
  "model": extracted["model"],
173
  "pin": pin,
@@ -182,14 +220,19 @@ async def _handle_chat(request: Request) -> JSONResponse:
182
  return JSONResponse(
183
  {
184
  "ok": False,
185
- "lab_status": "FAILED",
186
  "text": None,
187
  "signature": "UNKNOWN",
188
  "record_sha256": "UNKNOWN",
189
  "usage": {},
190
  "usage_label": "UNKNOWN",
191
  "elapsed_ms": wall_ms,
 
192
  "elapsed_ms_label": "MEASURED",
 
 
 
 
193
  "pin": pin,
194
  "honesty": _honesty(),
195
  "error": "%s: %s" % (type(exc).__name__, exc),
 
12
 
13
  Auth is the publicly documented dummy Bearer not-a-secret. HF_TOKEN is never
14
  read or forwarded. GET does not mint a receipt. POST passes through the lab's
15
+ reported signature state and record_sha256 when present; missing fields are
16
+ UNKNOWN, and receipt verification stays UNAVAILABLE without payload/key/chain.
17
 
18
  GPU Inference Endpoint remains ROADMAP. Forge lab is SNAPSHOT — not a
19
+ trainer, not Serve Studio. Energy-attested runs remain UNAVAILABLE until a
20
+ canonical runtime source is wired. Ask & Act is not a live control plane.
21
  Λ = Conjecture 1.
22
  """
23
  import hashlib
 
37
  KHIPU_LAB_DUMMY_BEARER,
38
  KHIPU_LAB_V1,
39
  KHIPU_MAX_TOKENS,
 
40
  KHIPU_TEMPERATURE,
41
  clamp_max_tokens,
42
  extract_lab_receipt,
 
44
  khipu_lab_v1,
45
  khipu_pin,
46
  )
47
+ from szl_be_hardening import DOCTRINE_LOCK
48
 
49
  _STATUS_PATH = "/api/a11oy/v1/khipu/status"
50
  _CHAT_PATH = "/api/a11oy/v1/khipu/chat"
51
  _PROMPT_CHAR_CAP = 4000
52
+ _CANONICAL_LOCKED_FORMULA_IDS = frozenset({"F1", "F4", "F7", "F11", "F12", "F18", "F19", "F22"})
53
+ _CANONICAL_LOCKED_FORMULA_COUNT = len(_CANONICAL_LOCKED_FORMULA_IDS)
54
+
55
+
56
+ def _doctrine_status() -> dict:
57
+ """Copy the lock only when it is exactly the canonical locked-eight set."""
58
+ doctrine = DOCTRINE_LOCK if isinstance(DOCTRINE_LOCK, dict) else {}
59
+ raw_ids = doctrine.get("locked_formula_ids")
60
+ ids = list(raw_ids) if isinstance(raw_ids, list) else []
61
+ count = doctrine.get("locked_formula_count")
62
+ lambda_value = doctrine.get("lambda")
63
+ valid = (
64
+ doctrine.get("doctrine") == "v11"
65
+ and doctrine.get("state") == "LOCKED"
66
+ and count == _CANONICAL_LOCKED_FORMULA_COUNT
67
+ and not isinstance(count, bool)
68
+ and len(ids) == count
69
+ and all(isinstance(item, str) for item in ids)
70
+ and frozenset(ids) == _CANONICAL_LOCKED_FORMULA_IDS
71
+ )
72
+ if not valid:
73
+ count = None
74
+ ids = []
75
+ return {
76
+ "version": doctrine.get("doctrine") if valid else "UNAVAILABLE",
77
+ "state": "LOCKED" if valid else "UNAVAILABLE",
78
+ "source": "szl_be_hardening.DOCTRINE_LOCK",
79
+ "locked_formula_count": count,
80
+ "locked_formula_ids": ids,
81
+ "lambda": lambda_value if isinstance(lambda_value, str) else "UNAVAILABLE",
82
+ }
83
 
84
 
85
  def _honesty() -> dict:
86
  return {
87
+ "lab": (
88
+ "MEASURED health HTTP response only; FAILED on resolved non-READY; "
89
+ "UNAVAILABLE on transport failure"
90
+ ),
91
  "lab_v1": KHIPU_LAB_V1,
92
  "gpu_inference_endpoint": "ROADMAP",
93
  "forge_lab": "SNAPSHOT — not a trainer, not Serve Studio",
94
+ "energy_attested_runs": "UNAVAILABLE",
95
  "ask_and_act": "not a live control plane",
96
  "killinchu_detector": "SIMULATED",
97
  "lambda": "Conjecture 1",
98
  "tokens_per_second": "not reported",
99
+ "signing": "UNAVAILABLE upstream signature state is not verified by this proxy",
100
  }
101
 
102
 
 
121
  return "READY", body, None
122
  return "FAILED", body, "healthz HTTP %s status=%s" % (resp.status_code, status or "UNKNOWN")
123
  except Exception as exc:
124
+ return "UNAVAILABLE", None, "%s: %s" % (type(exc).__name__, exc)
125
 
126
 
127
  async def _handle_status(request: Request) -> JSONResponse:
 
132
  "error": err,
133
  "pin": khipu_pin(),
134
  "honesty": _honesty(),
135
+ "measured_probe": {"label": "UNAVAILABLE", "reason": "no generated benchmark receipt is wired"},
136
+ "doctrine": _doctrine_status(),
 
 
 
 
137
  }
138
  return JSONResponse(payload)
139
 
 
186
  extracted = extract_lab_receipt(data)
187
  ok = resp.status_code == 200 and bool(extracted["text"])
188
  lab_status = "READY" if ok else "FAILED"
189
+ # Measure at the proxy boundary; never relabel an untrusted upstream duration.
190
+ elapsed = wall_ms
191
  out = {
192
  "ok": ok,
193
  "lab_status": lab_status,
 
198
  "usage": extracted["usage"] if ok else {},
199
  "usage_label": "REPORTED" if (ok and extracted["usage"]) else "UNKNOWN",
200
  "elapsed_ms": elapsed,
201
+ "elapsed_ms_source": "PROXY_WALL",
202
  "elapsed_ms_label": "MEASURED",
203
+ "receipt_evidence_label": "UNAVAILABLE",
204
+ "receipt_evidence_reason": (
205
+ "the proxy does not receive a receipt payload, verification key, or chain proof"
206
+ ),
207
+ "signature_evidence_label": "UNAVAILABLE",
208
+ "record_hash_evidence_label": "UNAVAILABLE",
209
  "wall_ms": wall_ms,
210
  "model": extracted["model"],
211
  "pin": pin,
 
220
  return JSONResponse(
221
  {
222
  "ok": False,
223
+ "lab_status": "UNAVAILABLE",
224
  "text": None,
225
  "signature": "UNKNOWN",
226
  "record_sha256": "UNKNOWN",
227
  "usage": {},
228
  "usage_label": "UNKNOWN",
229
  "elapsed_ms": wall_ms,
230
+ "elapsed_ms_source": "PROXY_WALL",
231
  "elapsed_ms_label": "MEASURED",
232
+ "receipt_evidence_label": "UNAVAILABLE",
233
+ "receipt_evidence_reason": "no upstream response was available to verify",
234
+ "signature_evidence_label": "UNAVAILABLE",
235
+ "record_hash_evidence_label": "UNAVAILABLE",
236
  "pin": pin,
237
  "honesty": _honesty(),
238
  "error": "%s: %s" % (type(exc).__name__, exc),
console/assets/brain-frontier-v7.js CHANGED
@@ -13,11 +13,28 @@
13
  const SOURCE_REPOSITORIES = new Set([
14
  "szl-holdings/szl-formulas",
15
  "szl-holdings/anatomy",
16
- "szl-holdings/ouroboros",
17
  "szl-holdings/a11oy",
18
  "szl-holdings/szl-forge",
19
  "szl-holdings/szl-nemo",
 
20
  ]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  const REDUCED_MOTION = window.matchMedia("(prefers-reduced-motion: reduce)");
22
  const state = {
23
  open: false,
@@ -48,12 +65,28 @@
48
  return text.startsWith("szl-holdings/") ? text.slice(13) : text;
49
  };
50
 
 
 
 
 
 
 
 
 
 
 
 
51
  function validateHandle(handle) {
52
- if (!handle || typeof handle !== "object") return false;
53
- if (!HANDLE_ID.test(String(handle.nodeId ?? ""))) return false;
54
- if (!DIGEST.test(String(handle.sha256 ?? ""))) return false;
55
- if (!REVISION.test(String(handle.revision ?? ""))) return false;
56
  if (!SOURCE_REPOSITORIES.has(handle.repository)) return false;
 
 
 
 
 
57
  if (handle.candidateState !== "DISCOVERED_REVIEW_REQUIRED") return false;
58
  if (handle.contentAccess !== "HANDLES_ONLY") return false;
59
  if (handle.authority !== "NONE") return false;
@@ -62,30 +95,61 @@
62
  }
63
 
64
  function validatePayload(payload) {
65
- if (!payload || typeof payload !== "object" || Array.isArray(payload)) return false;
 
66
  if (payload.schema !== "szl.a11oy.brain-frontier-holographic-v7/v1") return false;
67
  if (payload.state !== "SOURCE_BOUND_REVIEW_MEMORY") return false;
68
  if (payload.surface !== "A11OY_HOLOGRAPHIC_V7_BRAIN_FRONTIER") return false;
69
- if (!DIGEST.test(String(payload.snapshot_sha256 ?? ""))) return false;
70
  if (!Array.isArray(payload.handles) || payload.handles.length !== 72) return false;
71
  if (!payload.handles.every(validateHandle)) return false;
 
72
  const repositories = new Set(payload.handles.map((handle) => handle.repository));
73
  if (![...SOURCE_REPOSITORIES].every((repository) => repositories.has(repository))) return false;
74
  if (payload.selected_handle_count !== payload.handles.length) return false;
 
 
 
 
 
 
 
 
 
 
75
  const brain = payload.sources?.second_brain;
76
  const anatomy = payload.sources?.anatomy;
77
  const formula = payload.formula_atlas;
78
  const authority = payload.authority;
79
- if (!brain || !REVISION.test(String(brain.revision ?? ""))) return false;
80
- if (!DIGEST.test(String(brain.candidate_set_sha256 ?? ""))) return false;
81
- if (!anatomy || anatomy.repository !== "szl-holdings/anatomy") return false;
82
- if (!REVISION.test(String(anatomy.revision ?? ""))) return false;
83
- if (!formula || formula.attributed_formula_count !== 30) return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  if (formula.executable_formula_count !== 21 || formula.quant_domain_count !== 9) return false;
85
  if (formula.locked_proven_formula_count !== 8) return false;
86
  if (formula.f_number_to_executable_mapping !== "UNKNOWN_NOT_INFERRED") return false;
87
  if (formula.lambda !== "CONJECTURE_1") return false;
88
- if (!authority || authority.public_content_access !== "HANDLES_ONLY") return false;
 
 
 
 
89
  if (authority.training !== "NONE" || authority.promotion !== "NONE") return false;
90
  if (authority.execution !== "NONE" || authority.merge !== "NONE") return false;
91
  if (authority.provider_mutation !== "NONE" || authority.private_graph_present !== false) return false;
@@ -94,10 +158,65 @@
94
  return true;
95
  }
96
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97
  async function loadSnapshot() {
98
  if (state.loading) return;
99
  state.loading = true;
100
- renderCards();
 
101
  const controller = new AbortController();
102
  const timer = window.setTimeout(() => controller.abort(), 9000);
103
  try {
@@ -112,8 +231,8 @@
112
  signal: controller.signal,
113
  });
114
  if (!response.ok) throw new Error(`HTTP_${response.status}`);
115
- const payload = await response.json();
116
- if (!validatePayload(payload)) throw new Error("SNAPSHOT_CONTRACT_REJECTED");
117
  state.payload = payload;
118
  } catch (_error) {
119
  state.payload = null;
@@ -325,7 +444,7 @@
325
  const kind = String(handle.kind || "");
326
  const root = kind.includes("formula") || kind === "quant-domain"
327
  ? rootPositions.get("formula")
328
- : handle.repository === "szl-holdings/ouroboros"
329
  ? rootPositions.get("loop")
330
  : handle.repository === "szl-holdings/anatomy"
331
  ? rootPositions.get("anatomy")
 
13
  const SOURCE_REPOSITORIES = new Set([
14
  "szl-holdings/szl-formulas",
15
  "szl-holdings/anatomy",
16
+ "szl-holdings/szl-ouroboros",
17
  "szl-holdings/a11oy",
18
  "szl-holdings/szl-forge",
19
  "szl-holdings/szl-nemo",
20
+ "szl-holdings/szl-kernels",
21
  ]);
22
+ const HANDLE_KINDS = new Set([
23
+ "formula-authority", "quant-domain", "attributed-formula", "executable-formula",
24
+ "python-contract", "estate-authority", "estate-surface", "source-document",
25
+ ]);
26
+ const HANDLE_ADMISSIONS = new Set([
27
+ "DISCOVERED_REVIEW_REQUIRED",
28
+ "EXECUTABLE_CONSTRAINT_REVIEW_REQUIRED",
29
+ "OPEN_NOT_EXECUTION_AUTHORITY",
30
+ "REFERENCE_AND_CONSTRAINT_INPUT_ONLY",
31
+ "REFERENCE_ONLY_EXECUTION_AUTHORITY_NONE",
32
+ "REFERENCE_ONLY_NO_PROVIDER_MUTATION",
33
+ "REFERENCE_ONLY_UNLESS_EXECUTABLE_MATCH_IS_EXPLICIT",
34
+ "SOURCE_RECEIPT_REQUIRED_FOR_CURRENT_CLAIM",
35
+ ]);
36
+ const LOOP = ["OBSERVE", "ORIENT", "PROPOSE", "VERIFY", "HOLD"];
37
+ const MAX_SNAPSHOT_BYTES = 256 * 1024;
38
  const REDUCED_MOTION = window.matchMedia("(prefers-reduced-motion: reduce)");
39
  const state = {
40
  open: false,
 
65
  return text.startsWith("szl-holdings/") ? text.slice(13) : text;
66
  };
67
 
68
+ const record = (value) => Boolean(value) && typeof value === "object" && !Array.isArray(value);
69
+ const matches = (value, pattern) => typeof value === "string" && pattern.test(value);
70
+ const exactKeys = (value, required, optional = []) => record(value)
71
+ && required.every((key) => Object.hasOwn(value, key))
72
+ && Object.keys(value).every((key) => required.includes(key) || optional.includes(key));
73
+ const safeTitle = (value) => typeof value === "string" && value.trim().length > 0
74
+ && [...value].length <= 180 && !/[\u0000-\u001f\u007f-\u009f\ud800-\udfff]/u.test(value);
75
+ const safePath = (value) => typeof value === "string" && value.length <= 512
76
+ && value.split("/").every((part) => /^[A-Za-z0-9_.-]+$/.test(part) && part !== "." && part !== "..");
77
+ const safeDomain = (value) => matches(value, /^[a-z0-9][a-z0-9_-]{0,79}$/);
78
+
79
  function validateHandle(handle) {
80
+ if (!exactKeys(handle, ["nodeId", "title", "sha256", "repository", "revision", "path",
81
+ "kind", "admission", "candidateState", "contentAccess", "authority"], ["quantDomain"])) return false;
82
+ if (!matches(handle.nodeId, HANDLE_ID)) return false;
83
+ if (!matches(handle.sha256, DIGEST) || !matches(handle.revision, REVISION)) return false;
84
  if (!SOURCE_REPOSITORIES.has(handle.repository)) return false;
85
+ if (!HANDLE_KINDS.has(handle.kind)) return false;
86
+ if (!safeTitle(handle.title) || !safePath(handle.path)) return false;
87
+ if (!HANDLE_ADMISSIONS.has(handle.admission)) return false;
88
+ if (Object.hasOwn(handle, "quantDomain") && !safeDomain(handle.quantDomain)) return false;
89
+ if (handle.kind === "quant-domain" && !safeDomain(handle.quantDomain)) return false;
90
  if (handle.candidateState !== "DISCOVERED_REVIEW_REQUIRED") return false;
91
  if (handle.contentAccess !== "HANDLES_ONLY") return false;
92
  if (handle.authority !== "NONE") return false;
 
95
  }
96
 
97
  function validatePayload(payload) {
98
+ if (!exactKeys(payload, ["schema", "state", "surface", "snapshot_sha256", "handles",
99
+ "selected_handle_count", "sources", "formula_atlas", "authority", "loop"])) return false;
100
  if (payload.schema !== "szl.a11oy.brain-frontier-holographic-v7/v1") return false;
101
  if (payload.state !== "SOURCE_BOUND_REVIEW_MEMORY") return false;
102
  if (payload.surface !== "A11OY_HOLOGRAPHIC_V7_BRAIN_FRONTIER") return false;
103
+ if (!matches(payload.snapshot_sha256, DIGEST)) return false;
104
  if (!Array.isArray(payload.handles) || payload.handles.length !== 72) return false;
105
  if (!payload.handles.every(validateHandle)) return false;
106
+ if (new Set(payload.handles.map((handle) => handle.nodeId)).size !== 72) return false;
107
  const repositories = new Set(payload.handles.map((handle) => handle.repository));
108
  if (![...SOURCE_REPOSITORIES].every((repository) => repositories.has(repository))) return false;
109
  if (payload.selected_handle_count !== payload.handles.length) return false;
110
+ const kindCount = (kind) => payload.handles.filter((handle) => handle.kind === kind).length;
111
+ if (kindCount("formula-authority") !== 1 || kindCount("attributed-formula") !== 30
112
+ || kindCount("executable-formula") !== 21 || kindCount("quant-domain") !== 9) return false;
113
+ const domains = new Set(payload.handles.filter((handle) => handle.kind === "quant-domain")
114
+ .map((handle) => handle.quantDomain));
115
+ if (domains.size !== 9 || payload.handles.some((handle) => handle.quantDomain
116
+ && !domains.has(handle.quantDomain))) return false;
117
+ if (!Array.isArray(payload.loop) || payload.loop.length !== LOOP.length
118
+ || !payload.loop.every((step, index) => step === LOOP[index])) return false;
119
+ if (!exactKeys(payload.sources, ["second_brain", "anatomy", "formulas", "ouroboros"])) return false;
120
  const brain = payload.sources?.second_brain;
121
  const anatomy = payload.sources?.anatomy;
122
  const formula = payload.formula_atlas;
123
  const authority = payload.authority;
124
+ if (!exactKeys(brain, ["repository", "revision", "candidate_set_sha256", "candidate_count",
125
+ "state_sha256", "candidate_file_sha256"])) return false;
126
+ if (brain.repository !== "szl-holdings/szl-second-brain" || !matches(brain.revision, REVISION)) return false;
127
+ if (![brain.candidate_set_sha256, brain.state_sha256, brain.candidate_file_sha256]
128
+ .every((digest) => matches(digest, DIGEST))) return false;
129
+ if (!Number.isSafeInteger(brain.candidate_count) || brain.candidate_count < 72) return false;
130
+ if (!exactKeys(anatomy, ["repository", "revision", "live_origin", "holographic_v7_path"])) return false;
131
+ if (anatomy.repository !== "szl-holdings/anatomy" || !matches(anatomy.revision, REVISION)) return false;
132
+ if (anatomy.live_origin !== "https://betterwithage-anatomy.hf.space"
133
+ || anatomy.holographic_v7_path !== "/api/anatomy/v1/holographic-v7") return false;
134
+ const formulas = payload.sources.formulas;
135
+ const ouroboros = payload.sources.ouroboros;
136
+ if (!exactKeys(formulas, ["repository", "revision"]) || formulas.repository !== "szl-holdings/szl-formulas"
137
+ || !matches(formulas.revision, REVISION)) return false;
138
+ if (!exactKeys(ouroboros, ["repository", "revision", "review_workflow"])
139
+ || ouroboros.repository !== "szl-holdings/szl-ouroboros" || !matches(ouroboros.revision, REVISION)
140
+ || ouroboros.review_workflow !== ".github/workflows/codex-frontier-review.yml") return false;
141
+ if (!exactKeys(formula, ["attributed_formula_count", "executable_formula_count", "quant_domain_count",
142
+ "locked_proven_formula_count", "f_number_to_executable_mapping", "lambda"])) return false;
143
+ if (formula.attributed_formula_count !== 30) return false;
144
  if (formula.executable_formula_count !== 21 || formula.quant_domain_count !== 9) return false;
145
  if (formula.locked_proven_formula_count !== 8) return false;
146
  if (formula.f_number_to_executable_mapping !== "UNKNOWN_NOT_INFERRED") return false;
147
  if (formula.lambda !== "CONJECTURE_1") return false;
148
+ if (!exactKeys(authority, ["public_content_access", "controller_content_access", "training", "promotion",
149
+ "execution", "merge", "provider_mutation", "private_graph_present", "raw_graph_nodes_admitted_to_gradients",
150
+ "human_review_required"])) return false;
151
+ if (authority.public_content_access !== "HANDLES_ONLY"
152
+ || authority.controller_content_access !== "NOT_EXPOSED_BY_A11OY_HOLOGRAPHIC") return false;
153
  if (authority.training !== "NONE" || authority.promotion !== "NONE") return false;
154
  if (authority.execution !== "NONE" || authority.merge !== "NONE") return false;
155
  if (authority.provider_mutation !== "NONE" || authority.private_graph_present !== false) return false;
 
158
  return true;
159
  }
160
 
161
+ function canonicalJson(value) {
162
+ // The validated schema has ASCII keys, Unicode scalar strings and safe integers only.
163
+ // This matches the materializer's sorted compact JSON encoded as UTF-8.
164
+ if (Array.isArray(value)) return `[${value.map(canonicalJson).join(",")}]`;
165
+ if (record(value)) return `{${Object.keys(value).sort().map((key) =>
166
+ `${JSON.stringify(key)}:${canonicalJson(value[key])}`).join(",")}}`;
167
+ return JSON.stringify(value);
168
+ }
169
+
170
+ async function verifySnapshot(payload) {
171
+ if (!validatePayload(payload) || !window.crypto?.subtle) return false;
172
+ const { snapshot_sha256: expected, ...body } = payload;
173
+ try {
174
+ const bytes = new TextEncoder().encode(canonicalJson(body));
175
+ if (bytes.byteLength > MAX_SNAPSHOT_BYTES) return false;
176
+ const digest = await window.crypto.subtle.digest("SHA-256", bytes);
177
+ const measured = [...new Uint8Array(digest)].map((byte) => byte.toString(16).padStart(2, "0")).join("");
178
+ return measured === expected;
179
+ } catch (_error) {
180
+ return false;
181
+ }
182
+ }
183
+
184
+ async function readSnapshot(response) {
185
+ if (!response.headers.get("content-type")?.split(";", 1)[0].trim().match(/^application\/json$/i)) {
186
+ throw new Error("SNAPSHOT_CONTENT_TYPE_REJECTED");
187
+ }
188
+ if (!response.body) throw new Error("SNAPSHOT_BODY_UNAVAILABLE");
189
+ const reader = response.body.getReader();
190
+ const chunks = [];
191
+ let size = 0;
192
+ try {
193
+ while (true) {
194
+ const { done, value } = await reader.read();
195
+ if (done) break;
196
+ size += value.byteLength;
197
+ if (size > MAX_SNAPSHOT_BYTES) throw new Error("SNAPSHOT_SIZE_REJECTED");
198
+ chunks.push(value);
199
+ }
200
+ } catch (error) {
201
+ await reader.cancel().catch(() => {});
202
+ throw error;
203
+ } finally {
204
+ reader.releaseLock();
205
+ }
206
+ const bytes = new Uint8Array(size);
207
+ let offset = 0;
208
+ for (const chunk of chunks) {
209
+ bytes.set(chunk, offset);
210
+ offset += chunk.byteLength;
211
+ }
212
+ return JSON.parse(new TextDecoder("utf-8", { fatal: true }).decode(bytes));
213
+ }
214
+
215
  async function loadSnapshot() {
216
  if (state.loading) return;
217
  state.loading = true;
218
+ state.payload = null;
219
+ renderAll();
220
  const controller = new AbortController();
221
  const timer = window.setTimeout(() => controller.abort(), 9000);
222
  try {
 
231
  signal: controller.signal,
232
  });
233
  if (!response.ok) throw new Error(`HTTP_${response.status}`);
234
+ const payload = await readSnapshot(response);
235
+ if (!await verifySnapshot(payload)) throw new Error("SNAPSHOT_CONTRACT_REJECTED");
236
  state.payload = payload;
237
  } catch (_error) {
238
  state.payload = null;
 
444
  const kind = String(handle.kind || "");
445
  const root = kind.includes("formula") || kind === "quant-domain"
446
  ? rootPositions.get("formula")
447
+ : handle.repository === "szl-holdings/szl-ouroboros"
448
  ? rootPositions.get("loop")
449
  : handle.repository === "szl-holdings/anatomy"
450
  ? rootPositions.get("anatomy")
packages/inference/src/voters/khipu_gguf.py CHANGED
@@ -124,7 +124,7 @@ def khipu_pin() -> Dict[str, Any]:
124
  "gpu_inference_endpoint": "ROADMAP",
125
  "forge_lab": "SNAPSHOT",
126
  "forge_lab_role": "not a trainer, not Serve Studio",
127
- "energy_attested_runs": "8/8 SIMULATED",
128
  "killinchu_detector": "SIMULATED",
129
  "lambda": "Conjecture 1",
130
  }
@@ -169,7 +169,6 @@ def extract_lab_receipt(data: Dict[str, Any]) -> Dict[str, Any]:
169
  or receipt.get("sha256")
170
  or receipt.get("record_sha256")
171
  or provenance.get("record_sha256")
172
- or data.get("id")
173
  )
174
  if not sha:
175
  sha = "UNKNOWN"
 
124
  "gpu_inference_endpoint": "ROADMAP",
125
  "forge_lab": "SNAPSHOT",
126
  "forge_lab_role": "not a trainer, not Serve Studio",
127
+ "energy_attested_runs": "UNAVAILABLE",
128
  "killinchu_detector": "SIMULATED",
129
  "lambda": "Conjecture 1",
130
  }
 
169
  or receipt.get("sha256")
170
  or receipt.get("record_sha256")
171
  or provenance.get("record_sha256")
 
172
  )
173
  if not sha:
174
  sha = "UNKNOWN"
pages/console.html CHANGED
@@ -6564,8 +6564,8 @@ window.warboard_init=warboard_init; window.warboard_all=warboard_all;
6564
  +'<div class="hero-inner">'
6565
  +'<p class="hero-eyebrow mono">GOVERNED-AI SUBSTRATE \u00b7 SZL HOLDINGS</p>'
6566
  +'<h1 class="hero-h1">AI that <span class="hero-accent">signs its work</span><br>and refuses to lie.</h1>'
6567
- +'<p class="hero-sub">The auditable AI substrate for counter-UAS, maritime threat-intel, supply-chain and governance — built on measured-energy sovereign compute.</p>'
6568
- +'<div class="hero-counters" role="group" aria-label="live measured platform receipts">'
6569
  +'<div class="hctr"><span class="hctr-k mono">ENERGY <em class="mlabel" id="hero-joules-tag">SAMPLE</em></span>'
6570
  +'<span class="hctr-v mono" id="hero-joules" data-maturity="sample">\u2014 J/tok</span>'
6571
  +'<span class="hctr-d">per-token energy \u00b7 NVML</span></div>'
@@ -15298,36 +15298,53 @@ window.warboard_init=warboard_init; window.warboard_all=warboard_all;
15298
  };
15299
  V['energyReceipts']={
15300
  title:'Energy Receipts',
15301
- badge:'DSSE-SIGNED · KHIPU LAKE · UNAVAILABLE until GPU online',
15302
- sub:'Every governed inference through a11oy produces a signed energy receipt: '
15303
- +'measured_joules (or UNAVAILABLE), carbon_gco2eq, sci_score_gco2_per_call, '
15304
- +'methodology: GSF_SCI_ISO_21031_2024. All fields included in the DSSE-signed '
15305
- +'payload offline verifiable. When GPU + meter offline: fields are present but '
15306
- +'null, labeled UNAVAILABLE. Never fabricated. Λ = Conjecture 1.',
 
15307
  render: function(c){
15308
  c.innerHTML='<div style="padding:1.5rem 2rem">';
15309
- _szlFetch('/api/a11oy/v1/energy/ledger').then(function(d){
15310
- var receipts=d.receipts||[];
 
 
 
15311
  var html='<h2 style="font-family:var(--display);color:var(--teal);margin:0 0 .5rem">Energy Receipts</h2>';
15312
  html+='<p style="color:var(--muted);font-size:.8rem;font-family:var(--mono);margin:0 0 1rem">'
15313
- +receipts.length+' receipts in Khipu lake · chain integrity: '+(d.chain&&d.chain.ok?'<span style="color:var(--teal)">OK</span>':'<span style="color:var(--err)">FAIL</span>')+'</p>';
15314
  if(!receipts.length){
15315
  html+='<div style="border:1px solid var(--gold-line);border-radius:8px;padding:1.2rem;color:var(--muted);font-family:var(--mono);font-size:.85rem">';
15316
- html+='<b style="color:var(--cream)">0 receipts</b> — sovereign GPU + meter are offline.<br>';
15317
- html+='When the meter is running, every inference turn mints a signed energy receipt here.';
15318
  html+='</div>';
15319
  } else {
15320
  receipts.slice(0,10).forEach(function(r){
15321
  html+='<div style="border:1px solid var(--gold-line);border-radius:6px;padding:.7rem;margin-bottom:.5rem;font-family:var(--mono);font-size:.78rem">';
15322
- html+='<div style="display:flex;justify-content:space-between"><span style="color:var(--gold)">'+( r.receipt_id||r.digest||'receipt')+'</span>';
15323
- var lc=r.joules_label==='MEASURED'?'var(--teal)':r.joules_label==='UNAVAILABLE'?'var(--err)':'var(--warn)';
15324
- html+='<span style="color:'+lc+'">'+( r.joules_label||'UNAVAILABLE')+'</span></div>';
15325
- html+='<div style="color:var(--muted)">joules: '+(r.joules_measured_billable||r.measured_joules||'null')+' · gCO₂: '+(r.carbon_gco2eq||'null')+'</div>';
 
 
 
 
 
 
 
 
 
 
 
 
 
15326
  html+='</div>';
15327
  });
15328
  }
15329
  c.innerHTML='<div style="padding:1.5rem 2rem">'+html+'</div>';
15330
- }).catch(function(e){ c.innerHTML='<div style="padding:1.5rem 2rem;color:var(--err);font-family:var(--mono)">'+e+'</div>'; });
15331
  }
15332
  };
15333
  V['energyGrid']={
@@ -16000,7 +16017,7 @@ window.warboard_init=warboard_init; window.warboard_all=warboard_all;
16000
  nav groups/items into .side at load (Investor WOW, Organ Substrate,
16001
  Counter-UAS, Sovereignty, Formula Atlas, vertical packs, etc.). Rather
16002
  than patch ~28 injectors, this ONE block runs LAST and rebuilds the
16003
- sidebar to a tight, decision-grade menu: 5 groups / 18 items.
16004
 
16005
  Every removed view stays registered in window.VIEWS and remains reachable
16006
  via deep-link (/console#<viewkey>) — only the visible menu is slimmed.
@@ -16018,26 +16035,7 @@ window.warboard_init=warboard_init; window.warboard_all=warboard_all;
16018
  ["investor","\u25c7","Investor View"],
16019
  ["mesh","\u22b9","Live System Map"]
16020
  ]],
16021
- ["Operate", [
16022
- ["launcher","\u25a6","App Launcher"],
16023
- ["ask","\u2726","Ask & Act"],
16024
- ["demo","\u229e","Run a Demo"],
16025
- ["decision","\u25c8","Governed Decision"]
16026
- ]],
16027
- ["Build", [
16028
- ["llm","\u2687","Model Router"],
16029
- ["alloy","\u2697","Open-Weight Mesh"],
16030
- ["mcp","\u2699","Agent Tools"],
16031
- ["knowledge","\u2b21","Knowledge Ontology"],
16032
- ["genome","\u2b22","Genome"],
16033
- ["kbformulas","\u2211","Formulas"]
16034
- ]],
16035
- ["Observe", [
16036
- ["chain","\u26d3","Receipt Chain"],
16037
- ["evidence","\u2b21","Evidence Ledger"],
16038
- ["replay","\u25f7","Reasoning Replay"],
16039
- ["arena","\u229c","Eval Arena"]
16040
- ]],
16041
  ["Operate", [
16042
  ["launcher","\u25a6","App Launcher"],
16043
  ["ask","\u2726","Ask & Act (demo)"],
@@ -16771,15 +16769,21 @@ window.a11oyInvestor = (function(){
16771
  V.investor={
16772
  title:'Investor View',
16773
  badge:'DOCTRINE v11 · LOCKED',
16774
- sub:'Doctrine, the locked-8, one receipt you can verify, then diligence on a11oy.net. Λ = Conjecture 1 (advisory, gray, never a theorem, never a gate).',
16775
  render:async function(c){
16776
  var empty = (window.emptyUnknownBlock||function(k,d){ return '<div class="empty-unknown"><span class="empty-unknown-k">'+k+'</span><span class="empty-unknown-d">'+d+'</span></div>'; });
 
 
 
 
 
 
16777
  c.innerHTML='<div class="card"><div class="card-h"><span class="card-t">Doctrine</span><span class="card-ep mono">v11 LOCKED</span></div>'
16778
  +'<p>Every governed state change produces a hash-chained receipt. Signing is claimed only when persistent signer evidence is active and verification passes. Read paths never mint receipts.</p>'
16779
  +'<p class="szl-lambda mono">Λ = Conjecture 1 · advisory, never green, never a theorem, never a gate.</p></div>'
16780
- +'<div class="card"><div class="card-h"><span class="card-t">Locked-proven</span><span class="card-ep mono">exactly 8</span></div>'
16781
- +'<p class="mono">{F1, F4, F7, F11, F12, F18, F19, F22}</p>'
16782
- +'<p class="muted">A proof of rigor, not a traction number. The locked count is not inflated.</p></div>'
16783
  +'<div class="card"><div class="card-h"><span class="card-t">One receipt</span><span class="card-ep" id="inv-one-ep">probing</span></div>'
16784
  +'<div id="inv-one-receipt">'+empty('UNKNOWN','live source unavailable')+'</div></div>'
16785
  +'<div class="btns">'
@@ -16787,17 +16791,31 @@ window.a11oyInvestor = (function(){
16787
  +'<a class="btn" href="https://a11oy.net" target="_blank" rel="noopener noreferrer">Open diligence on a11oy.net ↗</a>'
16788
  +'</div>';
16789
  try{
16790
- var L = await (window.getJSON||window.gjFast||fetch)('/api/a11oy/v1/wow/ledger?limit=1');
16791
- if(L && L.then) L = await L;
16792
- if(L && L.data) L = L.data;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16793
  var rec=((L&&(L.receipts||L.items))||[])[0];
16794
  var host=document.getElementById('inv-one-receipt');
16795
  var ep=document.getElementById('inv-one-ep');
16796
  if(rec && host){
16797
  var id=rec.receipt_id||rec.hash||rec.id||'';
16798
- var st=rec.unsigned?'UNSIGNED':((rec.hash||rec.prev_hash)?'HASH-LINKED':'UNSIGNED');
16799
- host.innerHTML='<div class="row mono"><span class="badge b-teal">'+st+'</span><span>'+String(id).slice(0,48)+'</span></div>';
16800
- if(ep) ep.textContent='live ledger';
16801
  } else {
16802
  if(ep) ep.textContent='UNAVAILABLE';
16803
  }
@@ -17118,7 +17136,7 @@ window.a11oyInvestor = (function(){
17118
 
17119
  <script>
17120
  /* try-khipu-panel — additive, Command-Center-ONLY "Try Khipu" panel.
17121
- Doctrine v11. Adds NO nav entry (tabs.json 139-tab gate is untouched) and no
17122
  new view key: it wraps V.command.render and appends itself to the Command
17123
  Center body only. Deep links (?view=) are honored so it never mounts on a
17124
  non-command surface (e.g. Investor View).
@@ -17128,13 +17146,13 @@ window.a11oyInvestor = (function(){
17128
  Honesty rules enforced here:
17129
  - lab_status is shown verbatim: READY / FAILED / UNAVAILABLE (probe did not
17130
  resolve THIS request). Never a fabricated READY.
17131
- - elapsed_ms is MEASURED (server-side wall clock). Token counts are shown
17132
- only as the lab's own REPORTED usage. No throughput marketing number is
17133
- computed or displayed anywhere in this panel.
17134
- - signature is UNSIGNED unless the lab returns a real signature; the
17135
- receipt hash is shown as record_sha256, UNKNOWN when absent.
17136
- - the pinned GGUF digest is a SNAPSHOT (pin), GPU inference is ROADMAP,
17137
- energy attestation is 8/8 SIMULATED (never MEASURED without a live meter).
17138
  - the inference lab is a CPU inference lab: not a trainer, not Serve Studio,
17139
  and Ask & Act is not a live control plane.
17140
  - the proxy authenticates to the lab with the dummy Bearer not-a-secret;
@@ -17198,13 +17216,13 @@ window.a11oyInvestor = (function(){
17198
  +'#'+HOST_ID+' .tk-note{font-family:ui-monospace,Menlo,monospace;font-size:10px;line-height:1.7;color:#8f8a7e;margin-top:.55rem}'
17199
  +'#'+HOST_ID+' pre{white-space:pre-wrap;font-size:12px;line-height:1.6;color:#e8e2d4;margin:.4rem 0 0}'
17200
  +'</style>'
17201
- +'<h2>Try Khipu <span id="tk-state">'+chip('PROBING','PROBING')+'</span></h2>'
17202
  +'<p class="tk-sub">A same-origin proxy to the pinned CPU inference lab '
17203
  +'(<code>'+esc(LOCKED_LAB_V1)+'</code>). This is an inference lab: '
17204
  +'<b>not a trainer</b>, <b>not Serve Studio</b>, and Ask &amp; Act on this console is '
17205
  +'<b>not a live control plane</b>. Prompts go to '
17206
  +'<code>'+esc(CHAT_URL)+'</code>; posture comes from <code>'+esc(STATUS_URL)+'</code>. '
17207
- +'Throughput is not reported — we publish only what the lab measures.</p>'
17208
  +'<div class="tk-grid" id="tk-pin"></div>'
17209
  +'<label class="tk-k" for="tk-prompt">PROMPT · CLAMPED SERVER-SIDE (max_tokens 32 · temperature 0)</label>'
17210
  +'<textarea id="tk-prompt" placeholder="What is a khipu receipt?"></textarea>'
@@ -17215,15 +17233,23 @@ window.a11oyInvestor = (function(){
17215
 
17216
  function renderPin(d){
17217
  var pin=(d&&d.pin)||{}, hon=(d&&d.honesty)||{}, doc=(d&&d.doctrine)||{};
17218
- var st=(d&&d.lab_status)||'UNAVAILABLE';
 
 
 
 
 
 
 
 
17219
  H('tk-state',chip(st,st,'lab posture read from '+STATUS_URL+' this request'));
17220
  var cells=[
17221
  ['LAB POSTURE',chip(st,st)+' '+chip(st==='READY'?'probe resolved':'no live probe','')],
17222
  ['PINNED GGUF sha256','<span class="tk-v">'+esc(pin.gguf_sha256||'UNKNOWN')+'</span> '+chip('SNAPSHOT','SNAPSHOT')],
17223
  ['GPU INFERENCE ENDPOINT',chip(pin.gpu_inference_endpoint||'ROADMAP','ROADMAP')+' '+chip('CPU lab only today','')],
17224
- ['ENERGY ATTESTED RUNS','<span class="tk-v">'+esc(hon.energy_attested_runs||pin.energy_attested_runs||'8/8 SIMULATED')+'</span> '+chip('SIMULATED','SIMULATED')+chip('not MEASURED — no live meter','')],
17225
  ['LOCKED LAB v1','<span class="tk-v">'+esc(pin.locked_lab_v1||LOCKED_LAB_V1)+'</span>'],
17226
- ['DOCTRINE','<span class="tk-v">locked-'+esc(doc.locked_formulas!=null?doc.locked_formulas:8)+' &middot; \u039b='+esc(doc.lambda||'Conjecture 1')+'</span> '+chip('Conjecture 1','')]
17227
  ];
17228
  H('tk-pin',cells.map(function(c){
17229
  return '<div class="tk-cell"><div class="tk-k">'+esc(c[0])+'</div><div>'+c[1]+'</div></div>';
@@ -17231,7 +17257,7 @@ window.a11oyInvestor = (function(){
17231
  H('tk-honesty','Lab role: '+esc(hon.forge_lab||pin.forge_lab_role||'CPU inference lab \u2014 not a trainer, not Serve Studio')
17232
  +'<br>Ask &amp; Act: '+esc(hon.ask_and_act||'not a live control plane')
17233
  +'<br>Auth: the proxy calls the lab with the dummy header <code>Bearer not-a-secret</code>; no repo or user token reaches the browser.'
17234
- +'<br>Throughput: not reported \u2014 token counts below are the lab\u2019s own REPORTED usage, elapsed time is MEASURED server-side.');
17235
  }
17236
 
17237
  function renderUnavailable(msg){
@@ -17243,7 +17269,7 @@ window.a11oyInvestor = (function(){
17243
  +'<div class="tk-cell"><div class="tk-k">PINNED GGUF sha256</div><div>'+chip('SNAPSHOT','SNAPSHOT')
17244
  +' '+chip('UNKNOWN','UNKNOWN')+'</div></div>'
17245
  +'<div class="tk-cell"><div class="tk-k">GPU INFERENCE ENDPOINT</div><div>'+chip('ROADMAP','ROADMAP')+'</div></div>'
17246
- +'<div class="tk-cell"><div class="tk-k">ENERGY ATTESTED RUNS</div><div class="tk-v">8/8 SIMULATED</div></div>');
17247
  H('tk-honesty','Lab role: CPU inference lab \u2014 not a trainer, not Serve Studio.'
17248
  +'<br>Ask &amp; Act: not a live control plane.'
17249
  +'<br>Auth: dummy header <code>Bearer not-a-secret</code> is used server-side only.'
@@ -17254,7 +17280,9 @@ window.a11oyInvestor = (function(){
17254
  try{
17255
  var r=await fetch(STATUS_URL,{headers:{accept:'application/json'}});
17256
  if(!r.ok) throw new Error('HTTP '+r.status);
17257
- renderPin(await r.json());
 
 
17258
  }catch(e){ renderUnavailable(String(e&&e.message||e)); }
17259
  }
17260
 
@@ -17268,27 +17296,42 @@ window.a11oyInvestor = (function(){
17268
  var r=await fetch(CHAT_URL,{method:'POST',headers:{'content-type':'application/json',accept:'application/json'},
17269
  body:JSON.stringify({prompt:prompt,max_tokens:32,temperature:0})});
17270
  var d={}; try{ d=await r.json(); }catch(e){ d={}; }
17271
- var st=d.lab_status||(r.ok?'READY':'FAILED');
17272
- var sig=d.signature||'UNSIGNED';
17273
- var rec=d.record_sha256||'UNKNOWN';
17274
- var usage=d.usage||{};
17275
- var el=(d.elapsed_ms!=null?d.elapsed_ms+' ms':'UNKNOWN');
17276
- var body=(d.ok&&d.text)?('<pre>'+esc(d.text)+'</pre>')
 
 
 
 
 
 
 
 
 
 
 
 
 
17277
  :('<p class="tk-note">No completion returned \u2014 shown honestly as '+esc(st)+', nothing fabricated.'
17278
  +(d.error?(' Lab detail: '+esc(String(d.error).slice(0,200))):'')+'</p>');
17279
  H('tk-out',body
17280
  +'<div class="tk-grid">'
17281
- +'<div class="tk-cell"><div class="tk-k">LAB RESULT</div><div>'+chip(st,st)+' '+chip(d.ok?'ok':'no completion','')+'</div></div>'
17282
- +'<div class="tk-cell"><div class="tk-k">SIGNATURE</div><div>'+chip(sig,sig==='UNSIGNED'?'UNAVAILABLE':sig)
17283
- +'<div class="tk-v">'+(sig==='UNSIGNED'?'no in-image signing key in this runtime \u2014 honest UNSIGNED':'as returned by the lab')+'</div></div></div>'
17284
- +'<div class="tk-cell"><div class="tk-k">record_sha256</div><div class="tk-v">'+esc(rec)+'</div></div>'
 
17285
  +'<div class="tk-cell"><div class="tk-k">ELAPSED</div><div class="tk-v">'+esc(el)+'</div>'
17286
- +'<div>'+chip(d.elapsed_ms_label||'MEASURED','MEASURED','server-side wall clock for this request')+'</div></div>'
 
17287
  +'<div class="tk-cell"><div class="tk-k">USAGE (LAB-REPORTED)</div><div class="tk-v">prompt '
17288
- +esc(usage.prompt_tokens!=null?usage.prompt_tokens:'\u2014')+' &middot; completion '
17289
- +esc(usage.completion_tokens!=null?usage.completion_tokens:'\u2014')+' &middot; total '
17290
- +esc(usage.total_tokens!=null?usage.total_tokens:'\u2014')+'</div><div>'
17291
- +chip(d.usage_label||'REPORTED','')+chip('no throughput number derived','')+'</div></div>'
17292
  +'<div class="tk-cell"><div class="tk-k">\u039b</div><div>'+chip((d.honesty&&d.honesty.lambda)||'Conjecture 1','')
17293
  +'<div class="tk-v">advisory \u2014 gray, never green, never a theorem</div></div></div>'
17294
  +'</div>');
@@ -17342,4 +17385,3 @@ window.a11oyInvestor = (function(){
17342
  <script src="/assets/szl-holo-v2.js" defer data-szl-holo-asset="script-v2"></script>
17343
  </body>
17344
  </html>
17345
-
 
6564
  +'<div class="hero-inner">'
6565
  +'<p class="hero-eyebrow mono">GOVERNED-AI SUBSTRATE \u00b7 SZL HOLDINGS</p>'
6566
  +'<h1 class="hero-h1">AI that <span class="hero-accent">signs its work</span><br>and refuses to lie.</h1>'
6567
+ +'<p class="hero-sub">The auditable AI substrate for counter-UAS, maritime threat-intel, supply-chain and governance — built for energy-evidence-aware sovereign compute.</p>'
6568
+ +'<div class="hero-counters" role="group" aria-label="platform evidence and runtime receipts">'
6569
  +'<div class="hctr"><span class="hctr-k mono">ENERGY <em class="mlabel" id="hero-joules-tag">SAMPLE</em></span>'
6570
  +'<span class="hctr-v mono" id="hero-joules" data-maturity="sample">\u2014 J/tok</span>'
6571
  +'<span class="hctr-d">per-token energy \u00b7 NVML</span></div>'
 
15298
  };
15299
  V['energyReceipts']={
15300
  title:'Energy Receipts',
15301
+ badge:'HASH-CHAIN STRUCTURE · MEASUREMENT UNAVAILABLE · SIGNATURE UNAVAILABLE',
15302
+ sub:'The endpoint reports JouleCharge payloads and a structural hash-chain verdict. Its current entry digest '
15303
+ +'does not bind the top-level billing or freshness fields, and the endpoint exposes no signature. '
15304
+ +'This view therefore never promotes a reported joule value to MEASURED. Source labels, dispositions, '
15305
+ +'reasons, and digest presence remain explicitly reported diagnostics; measurement and authenticity evidence '
15306
+ +'stay UNAVAILABLE. Never fabricated. '
15307
+ +'Λ = Conjecture 1.',
15308
  render: function(c){
15309
  c.innerHTML='<div style="padding:1.5rem 2rem">';
15310
+ getJSON('/api/a11oy/v1/energy/ledger').then(function(d){
15311
+ if(!d||typeof d!=='object'||Array.isArray(d)) d={};
15312
+ var receipts=Array.isArray(d.receipts)?d.receipts:[];
15313
+ var chainOK=d.chain&&d.chain.ok===true;
15314
+ var chainState=chainOK?'REPORTED OK':(d.chain&&d.chain.ok===false?'FAILED':'UNAVAILABLE');
15315
  var html='<h2 style="font-family:var(--display);color:var(--teal);margin:0 0 .5rem">Energy Receipts</h2>';
15316
  html+='<p style="color:var(--muted);font-size:.8rem;font-family:var(--mono);margin:0 0 1rem">'
15317
+ +receipts.length+' entries · chain structure: <span>'+esc(chainState)+'</span> · authenticity: UNAVAILABLE · signature: UNAVAILABLE</p>';
15318
  if(!receipts.length){
15319
  html+='<div style="border:1px solid var(--gold-line);border-radius:8px;padding:1.2rem;color:var(--muted);font-family:var(--mono);font-size:.85rem">';
15320
+ html+='<b style="color:var(--cream)">0 entries returned</b> — no receipt decision or MEASURED joule evidence.<br>';
15321
+ html+='A successful read establishes neither an active meter nor signature evidence.';
15322
  html+='</div>';
15323
  } else {
15324
  receipts.slice(0,10).forEach(function(r){
15325
  html+='<div style="border:1px solid var(--gold-line);border-radius:6px;padding:.7rem;margin-bottom:.5rem;font-family:var(--mono);font-size:.78rem">';
15326
+ var receipt=(r&&r.receipt&&typeof r.receipt==='object')?r.receipt:{};
15327
+ var decision=(receipt.decision&&typeof receipt.decision==='object')?receipt.decision:{};
15328
+ var rawLabel=decision.joules_label;
15329
+ var sourceLabel=(rawLabel==='MEASURED'||rawLabel==='SAMPLE'||rawLabel==='ESTIMATE')?rawLabel:'UNAVAILABLE';
15330
+ var entryDigest=(r&&typeof r.entry_digest==='string'&&/^sha256:[0-9a-f]{64}$/i.test(r.entry_digest))?r.entry_digest:'';
15331
+ var payloadDigest=(typeof receipt.payload_digest==='string'&&/^sha256:[0-9a-f]{64}$/i.test(receipt.payload_digest))?receipt.payload_digest:'';
15332
+ var label='UNAVAILABLE';
15333
+ var digestState=(entryDigest&&payloadDigest)?'REPORTED PRESENT':'UNAVAILABLE';
15334
+ var joules='UNAVAILABLE';
15335
+ var disposition=(r&&r.billable===true?'BILLABLE':(r&&r.billable===false?'REFUSED':'UNAVAILABLE'));
15336
+ var reason=(r&&typeof r.reason==='string'&&r.reason)?r.reason:'UNAVAILABLE';
15337
+ html+='<div style="display:flex;justify-content:space-between"><span style="color:var(--gold)">digest fields: '+esc(digestState)+'</span>';
15338
+ var lc=label==='MEASURED'?'var(--teal)':label==='UNAVAILABLE'?'var(--err)':'var(--warn)';
15339
+ html+='<span style="color:'+lc+'">'+esc(label)+'</span></div>';
15340
+ html+='<div style="color:var(--muted)">joules: '+esc(joules)+' · upstream label (not admitted): '+esc(sourceLabel)
15341
+ +' · reported disposition: '+esc(disposition)+' · reported reason: '+esc(reason)
15342
+ +' · authenticity: UNAVAILABLE · signature: UNAVAILABLE</div>';
15343
  html+='</div>';
15344
  });
15345
  }
15346
  c.innerHTML='<div style="padding:1.5rem 2rem">'+html+'</div>';
15347
+ }).catch(function(e){ c.innerHTML='<div style="padding:1.5rem 2rem;color:var(--err);font-family:var(--mono)">'+esc((e&&e.message)||e)+'</div>'; });
15348
  }
15349
  };
15350
  V['energyGrid']={
 
16017
  nav groups/items into .side at load (Investor WOW, Organ Substrate,
16018
  Counter-UAS, Sovereignty, Formula Atlas, vertical packs, etc.). Rather
16019
  than patch ~28 injectors, this ONE block runs LAST and rebuilds the
16020
+ sidebar to one tight, decision-grade menu with a single owner per item.
16021
 
16022
  Every removed view stays registered in window.VIEWS and remains reachable
16023
  via deep-link (/console#<viewkey>) — only the visible menu is slimmed.
 
16035
  ["investor","\u25c7","Investor View"],
16036
  ["mesh","\u22b9","Live System Map"]
16037
  ]],
16038
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16039
  ["Operate", [
16040
  ["launcher","\u25a6","App Launcher"],
16041
  ["ask","\u2726","Ask & Act (demo)"],
 
16769
  V.investor={
16770
  title:'Investor View',
16771
  badge:'DOCTRINE v11 · LOCKED',
16772
+ sub:'Doctrine, the canonical locked-proven formula set, one receipt you can verify, then diligence on a11oy.net. Λ = Conjecture 1 (advisory, gray, never a theorem, never a gate).',
16773
  render:async function(c){
16774
  var empty = (window.emptyUnknownBlock||function(k,d){ return '<div class="empty-unknown"><span class="empty-unknown-k">'+k+'</span><span class="empty-unknown-d">'+d+'</span></div>'; });
16775
+ async function readJSON(url){
16776
+ if(window.getJSON) return await window.getJSON(url);
16777
+ var response=await fetch(url,{method:'GET',headers:{'Accept':'application/json'},cache:'no-store',credentials:'same-origin'});
16778
+ if(!response.ok) throw new Error('HTTP '+response.status);
16779
+ return await response.json();
16780
+ }
16781
  c.innerHTML='<div class="card"><div class="card-h"><span class="card-t">Doctrine</span><span class="card-ep mono">v11 LOCKED</span></div>'
16782
  +'<p>Every governed state change produces a hash-chained receipt. Signing is claimed only when persistent signer evidence is active and verification passes. Read paths never mint receipts.</p>'
16783
  +'<p class="szl-lambda mono">Λ = Conjecture 1 · advisory, never green, never a theorem, never a gate.</p></div>'
16784
+ +'<div class="card"><div class="card-h"><span class="card-t">Locked-proven</span><span class="card-ep mono" id="inv-locked-ep">UNAVAILABLE</span></div>'
16785
+ +'<p class="mono" id="inv-locked-list">UNAVAILABLE</p>'
16786
+ +'<p class="muted">A proof of rigor, not a traction number. Count and IDs render only from the doctrine endpoint.</p></div>'
16787
  +'<div class="card"><div class="card-h"><span class="card-t">One receipt</span><span class="card-ep" id="inv-one-ep">probing</span></div>'
16788
  +'<div id="inv-one-receipt">'+empty('UNKNOWN','live source unavailable')+'</div></div>'
16789
  +'<div class="btns">'
 
16791
  +'<a class="btn" href="https://a11oy.net" target="_blank" rel="noopener noreferrer">Open diligence on a11oy.net ↗</a>'
16792
  +'</div>';
16793
  try{
16794
+ var H=await readJSON('/api/a11oy/v1/honest');
16795
+ if(H && H.data) H=H.data;
16796
+ var lockedIds=H&&Array.isArray(H.locked_formula_ids)?H.locked_formula_ids:[];
16797
+ var lockedCount=H&&H.locked_formula_count;
16798
+ var canonicalLockedIds=['F1','F4','F7','F11','F12','F18','F19','F22'];
16799
+ var idsCanonical=canonicalLockedIds.every(function(id){ return lockedIds.indexOf(id)!==-1; });
16800
+ var honestValid=H&&H.doctrine==='v11'&&lockedCount===8&&lockedIds.length===8&&
16801
+ lockedIds.every(function(id){ return typeof id==='string'; })&&(new Set(lockedIds)).size===8&&idsCanonical;
16802
+ if(honestValid){
16803
+ var lockedEp=document.getElementById('inv-locked-ep');
16804
+ var lockedList=document.getElementById('inv-locked-list');
16805
+ if(lockedEp) lockedEp.textContent=String(lockedCount)+' locked';
16806
+ if(lockedList) lockedList.textContent='{'+lockedIds.join(', ')+'}';
16807
+ }
16808
+ }catch(_honestUnavailable){}
16809
+ try{
16810
+ var L = await readJSON('/api/a11oy/v1/wow/ledger?limit=1');
16811
+ if(L && L.data) L=L.data;
16812
  var rec=((L&&(L.receipts||L.items))||[])[0];
16813
  var host=document.getElementById('inv-one-receipt');
16814
  var ep=document.getElementById('inv-one-ep');
16815
  if(rec && host){
16816
  var id=rec.receipt_id||rec.hash||rec.id||'';
16817
+ host.innerHTML='<div class="row mono"><span class="badge b-teal">REPORTED</span><span>reported id: '+esc(String(id).slice(0,48))+'</span></div>';
16818
+ if(ep) ep.textContent='REPORTED';
 
16819
  } else {
16820
  if(ep) ep.textContent='UNAVAILABLE';
16821
  }
 
17136
 
17137
  <script>
17138
  /* try-khipu-panel — additive, Command-Center-ONLY "Try Khipu" panel.
17139
+ Doctrine v11. Adds NO nav entry (the generated tab contract is untouched) and no
17140
  new view key: it wraps V.command.render and appends itself to the Command
17141
  Center body only. Deep links (?view=) are honored so it never mounts on a
17142
  non-command surface (e.g. Investor View).
 
17146
  Honesty rules enforced here:
17147
  - lab_status is shown verbatim: READY / FAILED / UNAVAILABLE (probe did not
17148
  resolve THIS request). Never a fabricated READY.
17149
+ - elapsed_ms renders only with explicit MEASURED proxy-wall evidence.
17150
+ Token counts render only with the lab's explicit REPORTED label.
17151
+ - signature state and record_sha256 are upstream-reported fields only.
17152
+ Receipt proof remains UNAVAILABLE without payload, key, and chain verification.
17153
+ - the pinned GGUF digest is a SNAPSHOT (pin), GPU inference is ROADMAP.
17154
+ Energy-attested run evidence is read from the status API and otherwise
17155
+ remains UNAVAILABLE; the browser owns no numeric fallback.
17156
  - the inference lab is a CPU inference lab: not a trainer, not Serve Studio,
17157
  and Ask & Act is not a live control plane.
17158
  - the proxy authenticates to the lab with the dummy Bearer not-a-secret;
 
17216
  +'#'+HOST_ID+' .tk-note{font-family:ui-monospace,Menlo,monospace;font-size:10px;line-height:1.7;color:#8f8a7e;margin-top:.55rem}'
17217
  +'#'+HOST_ID+' pre{white-space:pre-wrap;font-size:12px;line-height:1.6;color:#e8e2d4;margin:.4rem 0 0}'
17218
  +'</style>'
17219
+ +'<h2>Try Khipu <span id="tk-state">'+chip('UNAVAILABLE','UNAVAILABLE')+'</span></h2>'
17220
  +'<p class="tk-sub">A same-origin proxy to the pinned CPU inference lab '
17221
  +'(<code>'+esc(LOCKED_LAB_V1)+'</code>). This is an inference lab: '
17222
  +'<b>not a trainer</b>, <b>not Serve Studio</b>, and Ask &amp; Act on this console is '
17223
  +'<b>not a live control plane</b>. Prompts go to '
17224
  +'<code>'+esc(CHAT_URL)+'</code>; posture comes from <code>'+esc(STATUS_URL)+'</code>. '
17225
+ +'Throughput is not reported — we display only what the proxy measures and the lab explicitly reports.</p>'
17226
  +'<div class="tk-grid" id="tk-pin"></div>'
17227
  +'<label class="tk-k" for="tk-prompt">PROMPT · CLAMPED SERVER-SIDE (max_tokens 32 · temperature 0)</label>'
17228
  +'<textarea id="tk-prompt" placeholder="What is a khipu receipt?"></textarea>'
 
17233
 
17234
  function renderPin(d){
17235
  var pin=(d&&d.pin)||{}, hon=(d&&d.honesty)||{}, doc=(d&&d.doctrine)||{};
17236
+ var rawStatus=d&&d.lab_status;
17237
+ var st=(rawStatus==='READY'||rawStatus==='FAILED'||rawStatus==='UNAVAILABLE')?rawStatus:'UNAVAILABLE';
17238
+ var energyRuns='UNAVAILABLE';
17239
+ var lockedIds=Array.isArray(doc.locked_formula_ids)?doc.locked_formula_ids:[];
17240
+ var canonicalLockedIds=['F1','F4','F7','F11','F12','F18','F19','F22'];
17241
+ var idsCanonical=canonicalLockedIds.every(function(id){ return lockedIds.indexOf(id)!==-1; });
17242
+ var doctrineValid=doc.version==='v11'&&doc.state==='LOCKED'&&doc.locked_formula_count===8&&lockedIds.length===8&&
17243
+ (new Set(lockedIds)).size===8&&lockedIds.every(function(id){ return typeof id==='string'; })&&idsCanonical;
17244
+ var lockedCount=doctrineValid?String(doc.locked_formula_count):'UNAVAILABLE';
17245
  H('tk-state',chip(st,st,'lab posture read from '+STATUS_URL+' this request'));
17246
  var cells=[
17247
  ['LAB POSTURE',chip(st,st)+' '+chip(st==='READY'?'probe resolved':'no live probe','')],
17248
  ['PINNED GGUF sha256','<span class="tk-v">'+esc(pin.gguf_sha256||'UNKNOWN')+'</span> '+chip('SNAPSHOT','SNAPSHOT')],
17249
  ['GPU INFERENCE ENDPOINT',chip(pin.gpu_inference_endpoint||'ROADMAP','ROADMAP')+' '+chip('CPU lab only today','')],
17250
+ ['ENERGY ATTESTED RUNS','<span class="tk-v">'+esc(energyRuns)+'</span> '+chip('UNAVAILABLE','UNAVAILABLE')],
17251
  ['LOCKED LAB v1','<span class="tk-v">'+esc(pin.locked_lab_v1||LOCKED_LAB_V1)+'</span>'],
17252
+ ['DOCTRINE','<span class="tk-v">locked formulas '+esc(lockedCount)+' &middot; \u039b='+esc(doc.lambda||'Conjecture 1')+'</span> '+chip('Conjecture 1','')]
17253
  ];
17254
  H('tk-pin',cells.map(function(c){
17255
  return '<div class="tk-cell"><div class="tk-k">'+esc(c[0])+'</div><div>'+c[1]+'</div></div>';
 
17257
  H('tk-honesty','Lab role: '+esc(hon.forge_lab||pin.forge_lab_role||'CPU inference lab \u2014 not a trainer, not Serve Studio')
17258
  +'<br>Ask &amp; Act: '+esc(hon.ask_and_act||'not a live control plane')
17259
  +'<br>Auth: the proxy calls the lab with the dummy header <code>Bearer not-a-secret</code>; no repo or user token reaches the browser.'
17260
+ +'<br>Throughput: not derived. Usage and elapsed render only with explicit REPORTED / MEASURED API evidence.');
17261
  }
17262
 
17263
  function renderUnavailable(msg){
 
17269
  +'<div class="tk-cell"><div class="tk-k">PINNED GGUF sha256</div><div>'+chip('SNAPSHOT','SNAPSHOT')
17270
  +' '+chip('UNKNOWN','UNKNOWN')+'</div></div>'
17271
  +'<div class="tk-cell"><div class="tk-k">GPU INFERENCE ENDPOINT</div><div>'+chip('ROADMAP','ROADMAP')+'</div></div>'
17272
+ +'<div class="tk-cell"><div class="tk-k">ENERGY ATTESTED RUNS</div><div class="tk-v">UNAVAILABLE</div></div>');
17273
  H('tk-honesty','Lab role: CPU inference lab \u2014 not a trainer, not Serve Studio.'
17274
  +'<br>Ask &amp; Act: not a live control plane.'
17275
  +'<br>Auth: dummy header <code>Bearer not-a-secret</code> is used server-side only.'
 
17280
  try{
17281
  var r=await fetch(STATUS_URL,{headers:{accept:'application/json'}});
17282
  if(!r.ok) throw new Error('HTTP '+r.status);
17283
+ var statusPayload=await r.json();
17284
+ if(!statusPayload||typeof statusPayload!=='object'||Array.isArray(statusPayload)) throw new Error('malformed status response');
17285
+ renderPin(statusPayload);
17286
  }catch(e){ renderUnavailable(String(e&&e.message||e)); }
17287
  }
17288
 
 
17296
  var r=await fetch(CHAT_URL,{method:'POST',headers:{'content-type':'application/json',accept:'application/json'},
17297
  body:JSON.stringify({prompt:prompt,max_tokens:32,temperature:0})});
17298
  var d={}; try{ d=await r.json(); }catch(e){ d={}; }
17299
+ if(!d||typeof d!=='object'||Array.isArray(d)) d={};
17300
+ var rawStatus=d.lab_status;
17301
+ var st=(rawStatus==='READY'||rawStatus==='FAILED'||rawStatus==='UNAVAILABLE')?rawStatus:(r.ok?'UNAVAILABLE':'FAILED');
17302
+ var responseOK=r.ok&&d.ok===true&&st==='READY';
17303
+ var reportedSig=(responseOK&&(d.signature==='SIGNED'||d.signature==='UNSIGNED'))?d.signature:'UNAVAILABLE';
17304
+ var sig=reportedSig==='UNSIGNED'?'UNSIGNED':'UNAVAILABLE';
17305
+ var recordReported=responseOK&&typeof d.record_sha256==='string'&&/^[0-9a-f]{64}$/i.test(d.record_sha256);
17306
+ var rec=recordReported?d.record_sha256:'UNAVAILABLE';
17307
+ var recordLabel=recordReported?'REPORTED':'UNAVAILABLE';
17308
+ var usage=(d.usage&&typeof d.usage==='object'&&!Array.isArray(d.usage))?d.usage:{};
17309
+ function validTokenCount(v){ return typeof v==='number'&&Number.isFinite(v)&&v>=0&&Number.isInteger(v); }
17310
+ var usageAvailable=responseOK&&d.usage_label==='REPORTED'&&validTokenCount(usage.prompt_tokens)&&
17311
+ validTokenCount(usage.completion_tokens)&&validTokenCount(usage.total_tokens);
17312
+ var usageLabel=usageAvailable?'REPORTED':'UNAVAILABLE';
17313
+ var elapsedMeasured=responseOK&&d.elapsed_ms_label==='MEASURED'&&d.elapsed_ms_source==='PROXY_WALL'&&
17314
+ typeof d.elapsed_ms==='number'&&Number.isFinite(d.elapsed_ms)&&d.elapsed_ms>=0;
17315
+ var elapsedLabel=elapsedMeasured?'MEASURED':'UNAVAILABLE';
17316
+ var el=elapsedMeasured?d.elapsed_ms+' ms':'UNAVAILABLE';
17317
+ var body=(responseOK&&typeof d.text==='string'&&d.text)?('<pre>'+esc(d.text)+'</pre>')
17318
  :('<p class="tk-note">No completion returned \u2014 shown honestly as '+esc(st)+', nothing fabricated.'
17319
  +(d.error?(' Lab detail: '+esc(String(d.error).slice(0,200))):'')+'</p>');
17320
  H('tk-out',body
17321
  +'<div class="tk-grid">'
17322
+ +'<div class="tk-cell"><div class="tk-k">LAB RESULT</div><div>'+chip(st,st)+' '+chip(responseOK?'ok':'no completion','')+'</div></div>'
17323
+ +'<div class="tk-cell"><div class="tk-k">SIGNATURE</div><div>'+chip(sig,'UNAVAILABLE')
17324
+ +'<div class="tk-v">'+(sig==='UNSIGNED'?'upstream reports UNSIGNED; receipt verification remains unavailable':'no verified signature evidence returned')+'</div></div></div>'
17325
+ +'<div class="tk-cell"><div class="tk-k">RECORD HASH FIELD</div><div class="tk-v">'+esc(rec)+'</div>'
17326
+ +'<div>'+chip(recordLabel,recordLabel,'upstream-reported and format-checked only; not cryptographically verified')+'</div></div>'
17327
  +'<div class="tk-cell"><div class="tk-k">ELAPSED</div><div class="tk-v">'+esc(el)+'</div>'
17328
+ +'<div>'+chip(elapsedMeasured?'MEASURED ELAPSED':'ELAPSED UNAVAILABLE',elapsedLabel,'proxy wall clock for this request')
17329
+ +chip('RECEIPT UNAVAILABLE','UNAVAILABLE','no payload, verification key, or chain proof is available to this proxy')+'</div></div>'
17330
  +'<div class="tk-cell"><div class="tk-k">USAGE (LAB-REPORTED)</div><div class="tk-v">prompt '
17331
+ +esc(usageAvailable?usage.prompt_tokens:'\u2014')+' &middot; completion '
17332
+ +esc(usageAvailable?usage.completion_tokens:'\u2014')+' &middot; total '
17333
+ +esc(usageAvailable?usage.total_tokens:'\u2014')+'</div><div>'
17334
+ +chip(usageLabel,usageLabel)+chip('no throughput number derived','')+'</div></div>'
17335
  +'<div class="tk-cell"><div class="tk-k">\u039b</div><div>'+chip((d.honesty&&d.honesty.lambda)||'Conjecture 1','')
17336
  +'<div class="tk-v">advisory \u2014 gray, never green, never a theorem</div></div></div>'
17337
  +'</div>');
 
17385
  <script src="/assets/szl-holo-v2.js" defer data-szl-holo-asset="script-v2"></script>
17386
  </body>
17387
  </html>
 
szl3d_holographic.py CHANGED
@@ -627,6 +627,14 @@ def register(app, ns: str = "a11oy") -> Dict[str, Any]:
627
  )
628
  _front_move(route)
629
  registered.append(f"GET,HEAD {route}")
 
 
 
 
 
 
 
 
630
 
631
  async def _info():
632
  return JSONResponse(info(ns))
 
627
  )
628
  _front_move(route)
629
  registered.append(f"GET,HEAD {route}")
630
+ app.add_api_route(
631
+ route + "/",
632
+ _shell,
633
+ methods=["GET", "HEAD"],
634
+ include_in_schema=False,
635
+ )
636
+ _front_move(route + "/")
637
+ registered.append(f"GET,HEAD {route}/")
638
 
639
  async def _info():
640
  return JSONResponse(info(ns))
szl_elite_console.py CHANGED
@@ -4,7 +4,7 @@
4
  # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai>
5
  # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com>
6
  """
7
- szl_elite_console — New endpoints backing the 20-tab a11oy Elite Console.
8
 
9
  Adds 8 new backend surfaces (ADDITIVE, no existing routes touched):
10
 
@@ -17,10 +17,9 @@ Adds 8 new backend surfaces (ADDITIVE, no existing routes touched):
17
  GET /api/a11oy/v1/console/verdict-theater — last-N multi-party witnessed verdicts
18
  GET /api/a11oy/v1/console/policy-canvas — full 46-gate policy canvas for drag-n-drop viz
19
 
20
- All endpoints are REAL: they read live in-process state (audit ring, DAG, gate manifest,
21
- formula index). No fixture data is injected.
22
-
23
- Doctrine v11 LOCKED — 749/14/163 — c7c0ba17 · Λ = Conjecture 1 (NEVER a theorem).
24
  """
25
  from __future__ import annotations
26
 
@@ -476,19 +475,18 @@ def register(app: FastAPI, gates_list: list[dict], gates_by_name: dict[str, dict
476
  "note": "All 46 gates from the canonical gates_manifest.json. Drag-n-drop grouping for the Policy Canvas tab.",
477
  })
478
 
479
- # ── /console route ────────────────────────────────────────────────────────
480
 
481
  @app.get("/elite-console")
482
- async def elite_console_html() -> HTMLResponse:
483
- """Serve the 20-tab elite console HTML."""
484
- p = os.path.join(os.path.dirname(__file__), "web", "elite_console.html")
485
- if not os.path.exists(p):
486
- p = "/app/web/elite_console.html"
487
- if os.path.exists(p):
488
- with open(p, "r", encoding="utf-8") as fh:
489
- content = fh.read()
490
- return HTMLResponse(content)
491
- return HTMLResponse("<h1>elite_console.html not found</h1>", status_code=404)
492
 
493
  return {
494
  "module": "szl_elite_console",
 
4
  # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai>
5
  # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com>
6
  """
7
+ szl_elite_console — Backend endpoints plus a quarantined frontend route.
8
 
9
  Adds 8 new backend surfaces (ADDITIVE, no existing routes touched):
10
 
 
17
  GET /api/a11oy/v1/console/verdict-theater — last-N multi-party witnessed verdicts
18
  GET /api/a11oy/v1/console/policy-canvas — full 46-gate policy canvas for drag-n-drop viz
19
 
20
+ The dormant HTML frontend is not release-ready and /elite-console fails closed. API
21
+ responses retain their own in-band labels; importing this module does not prove runtime
22
+ freshness, source binding, or receipt validity. Λ = Conjecture 1 (NEVER a theorem).
 
23
  """
24
  from __future__ import annotations
25
 
 
475
  "note": "All 46 gates from the canonical gates_manifest.json. Drag-n-drop grouping for the Policy Canvas tab.",
476
  })
477
 
478
+ # ── /elite-console route ──────────────────────────────────────────────────
479
 
480
  @app.get("/elite-console")
481
+ async def elite_console_unavailable() -> HTMLResponse:
482
+ """Fail closed while the dormant frontend lacks release-grade contracts."""
483
+ return HTMLResponse(
484
+ "<h1>Elite Console: UNAVAILABLE</h1>"
485
+ "<p>This quarantined surface is not release-ready. "
486
+ '<a href="/command">Open the reviewed Command Center</a>.</p>',
487
+ status_code=503,
488
+ headers={"Cache-Control": "no-store"},
489
+ )
 
490
 
491
  return {
492
  "module": "szl_elite_console",