{
  "target": "HOURGLASS production safety gate",
  "posture": "Production safety gate operated by 1HBT (BlueLabs³) for named clients. This instance serves its first client, consensor.io.",
  "operator": {
    "legal_name": "Bluelabs Pty Ltd",
    "trading_as": "1HBT",
    "acn": "701 379 964",
    "product": "HOURGLASS",
    "role": "Production safety gate operated by 1HBT (BlueLabs³) for named clients. This instance serves its first client, consensor.io.",
    "contacts": {
      "operator": "admin@consensor.io",
      "security": "zfa@consensor.io",
      "privacy": "privacy@consensor.io"
    },
    "subprocessors": [
      "Edge compute, TLS, and DNS. Recipients are likely in the United States."
    ]
  },
  "canonical": "https://gate.consensor.io",
  "live": {
    "version": "94651f08-7159-41f9-b234-b8e4b6b204a6",
    "version_tag": null,
    "version_uploaded": "2026-09-26T13:40:37.996719Z",
    "version_source": "Cloudflare version-metadata binding, read at request time: this is the version that answered this request.",
    "measured": "2026-09-26T13:40Z",
    "build_id": "hourglass-consensor-v122-20260926T131713Z",
    "modules": {
      "aikyc/api-port.mjs": "1aacdd9e19a123e65c34a13cd819ec780b934cb1bbbd1e4d39008e79fe856137",
      "aikyc/tunnel.cjs": "b26c515d15c0afb5f5b5c6c08c72f8345d92858d4398e46af7f7eb241e51323d",
      "anchor.mjs": "9df1cffea90be77b73dce4ea6621d51a72a056a718fe19c1ce631c6590d90052",
      "ask.mjs": "20590218e087d9da3f4433606b6df7601e9fc2eeb77409b8b41d07a6d078cb23",
      "cf1.mjs": "6a4ae603d3d1d5e68c8513c06037012a599b0c6731ef671749806f2e7bd1e6de",
      "fold.mjs": "627f01bf70a5f2377c69c3afbbaaca02df1339eb5bfef8a0da2724b483bb383f",
      "okid/harness/fixtures.mjs": "565a2e6051c045b8086b8654996c77695f12c4d0ce132de917a6f451d19e27fb",
      "okid/harness/runner.mjs": "bd020598981a90fff26594f557229f106a60bfc2f64e93df25fef0c3ad5d49e7",
      "okid/harness/scenarios/family-a.mjs": "60d032616ba452b1c5d2734f0be80ca51083cea1663881f92e9f1b04bc672f97",
      "okid/harness/scenarios/family-h.mjs": "6627a5cb152a1976cb3ecdc67941f52600f63357cc4b91071c64110436f1b13d",
      "okid/harness/scenarios/family-mrd.mjs": "9ae643e248d76757d83606f14f4030bdb4fc7da8f9f3c9579d47f5a5c6d8cf2d",
      "okid/harness/scenarios/family-o.mjs": "b63ec0a4f6ca46871db65970ad8263fd3588bbcda3fd3b30e522b1bb154662f6",
      "okid/harness/scorer.mjs": "06b84479abc4e65e1107b95b0e0dab4cf613619ac53bc202522de4e91efae4b9",
      "okid/mount.mjs": "1cb90955165d252eae0c00bfa852973d441c7ef28ac640bd85acf0701f770bbb",
      "okid/src/core.mjs": "0e8e2cfc584d57f994faee10f5816d761741db71964de24a48f1a3784d173558",
      "okid/src/ladder.mjs": "f5a46bbe454825addb18cb54663ec7cc627cd5f65d1e51773d7dd3203b5b2b11",
      "okid/src/ledger.mjs": "0f9cfa8c15ace42e6b8bfb6c095e3fa0a912b3ce606037050ee589b1222e0f4e",
      "okid/src/policy.mjs": "f9ac7ce95d3cf76dd67fe050489fa20041a98276e290958f7c038a493affa5d0",
      "okid/src/registry.mjs": "5d29a807b1b40a6ade1b28700d04edff157a8aaf3aa59d664f465e7184921b09",
      "okid/src/router.mjs": "0b0dcae0d29697819c03a2d4965853ffde68be669cd331fb78485d73c5dd219e",
      "okid/src/sensors.mjs": "6b394055b4dd262099cbead9efb230b11b0ea92ad19da8d8216a7f3e272ed91c",
      "okid/src/sha256.mjs": "65ceb7df13ca1d5b9a51d9e6511f4b245c80c54255b5af8e94b2082818d0a138",
      "okid/src/witness.mjs": "d947df869e599f9d7c15de49e0a9e2c5626ff9915cc32f286abe9eb0468b1b97",
      "page.mjs": "8f2e6e10732573a8c86f8416e7022811df9798ca9887839982d98c561fcd4bf1",
      "refusal.mjs": "29d223e57079fe29bdec83cdf19e555fa3d05a392bc6e17a3b7b88045ddac3ed",
      "worker.mjs": "d2b7d6c314708b43202ab7829f801276b72f3628e4f4f679b75f0ddbbb8449ed"
    },
    "module_bytes": {
      "aikyc/api-port.mjs": 27874,
      "aikyc/tunnel.cjs": 42833,
      "anchor.mjs": 17102,
      "ask.mjs": 327049,
      "cf1.mjs": 41913,
      "fold.mjs": 5857,
      "okid/harness/fixtures.mjs": 5049,
      "okid/harness/runner.mjs": 3893,
      "okid/harness/scenarios/family-a.mjs": 8776,
      "okid/harness/scenarios/family-h.mjs": 4238,
      "okid/harness/scenarios/family-mrd.mjs": 7384,
      "okid/harness/scenarios/family-o.mjs": 3713,
      "okid/harness/scorer.mjs": 8555,
      "okid/mount.mjs": 13188,
      "okid/src/core.mjs": 4243,
      "okid/src/ladder.mjs": 1565,
      "okid/src/ledger.mjs": 3405,
      "okid/src/policy.mjs": 2235,
      "okid/src/registry.mjs": 2338,
      "okid/src/router.mjs": 4191,
      "okid/src/sensors.mjs": 1724,
      "okid/src/sha256.mjs": 2656,
      "okid/src/witness.mjs": 4412,
      "page.mjs": 146441,
      "refusal.mjs": 1050,
      "worker.mjs": 101544
    },
    "note": "Operator-published SHA-256 hashes of this build's module bytes, excluding claims.mjs; a detached inventory covers every module. Hashes are a statement by the operator. To attest the bytes independently, compare them with a provider readback of the version named above."
  },
  "release_signature": {
    "how_to_verify": "Fetch /.well-known/release-signing-key.asc. Verify `signature` as an OpenPGP detached signature over the exact text of `manifest`. Then check that JSON.parse(manifest).modules equals live.modules and build_id equals live.build_id.",
    "key_url": "https://gate.consensor.io/.well-known/release-signing-key.asc",
    "fingerprint": "DB32C3CA903CE8CA7CC73705D126742330FB5412",
    "manifest": "{\"build_id\":\"hourglass-consensor-v122-20260926T131713Z\",\"modules\":{\"aikyc/api-port.mjs\":\"1aacdd9e19a123e65c34a13cd819ec780b934cb1bbbd1e4d39008e79fe856137\",\"aikyc/tunnel.cjs\":\"b26c515d15c0afb5f5b5c6c08c72f8345d92858d4398e46af7f7eb241e51323d\",\"anchor.mjs\":\"9df1cffea90be77b73dce4ea6621d51a72a056a718fe19c1ce631c6590d90052\",\"ask.mjs\":\"20590218e087d9da3f4433606b6df7601e9fc2eeb77409b8b41d07a6d078cb23\",\"cf1.mjs\":\"6a4ae603d3d1d5e68c8513c06037012a599b0c6731ef671749806f2e7bd1e6de\",\"fold.mjs\":\"627f01bf70a5f2377c69c3afbbaaca02df1339eb5bfef8a0da2724b483bb383f\",\"okid/harness/fixtures.mjs\":\"565a2e6051c045b8086b8654996c77695f12c4d0ce132de917a6f451d19e27fb\",\"okid/harness/runner.mjs\":\"bd020598981a90fff26594f557229f106a60bfc2f64e93df25fef0c3ad5d49e7\",\"okid/harness/scenarios/family-a.mjs\":\"60d032616ba452b1c5d2734f0be80ca51083cea1663881f92e9f1b04bc672f97\",\"okid/harness/scenarios/family-h.mjs\":\"6627a5cb152a1976cb3ecdc67941f52600f63357cc4b91071c64110436f1b13d\",\"okid/harness/scenarios/family-mrd.mjs\":\"9ae643e248d76757d83606f14f4030bdb4fc7da8f9f3c9579d47f5a5c6d8cf2d\",\"okid/harness/scenarios/family-o.mjs\":\"b63ec0a4f6ca46871db65970ad8263fd3588bbcda3fd3b30e522b1bb154662f6\",\"okid/harness/scorer.mjs\":\"06b84479abc4e65e1107b95b0e0dab4cf613619ac53bc202522de4e91efae4b9\",\"okid/mount.mjs\":\"1cb90955165d252eae0c00bfa852973d441c7ef28ac640bd85acf0701f770bbb\",\"okid/src/core.mjs\":\"0e8e2cfc584d57f994faee10f5816d761741db71964de24a48f1a3784d173558\",\"okid/src/ladder.mjs\":\"f5a46bbe454825addb18cb54663ec7cc627cd5f65d1e51773d7dd3203b5b2b11\",\"okid/src/ledger.mjs\":\"0f9cfa8c15ace42e6b8bfb6c095e3fa0a912b3ce606037050ee589b1222e0f4e\",\"okid/src/policy.mjs\":\"f9ac7ce95d3cf76dd67fe050489fa20041a98276e290958f7c038a493affa5d0\",\"okid/src/registry.mjs\":\"5d29a807b1b40a6ade1b28700d04edff157a8aaf3aa59d664f465e7184921b09\",\"okid/src/router.mjs\":\"0b0dcae0d29697819c03a2d4965853ffde68be669cd331fb78485d73c5dd219e\",\"okid/src/sensors.mjs\":\"6b394055b4dd262099cbead9efb230b11b0ea92ad19da8d8216a7f3e272ed91c\",\"okid/src/sha256.mjs\":\"65ceb7df13ca1d5b9a51d9e6511f4b245c80c54255b5af8e94b2082818d0a138\",\"okid/src/witness.mjs\":\"d947df869e599f9d7c15de49e0a9e2c5626ff9915cc32f286abe9eb0468b1b97\",\"page.mjs\":\"8f2e6e10732573a8c86f8416e7022811df9798ca9887839982d98c561fcd4bf1\",\"refusal.mjs\":\"29d223e57079fe29bdec83cdf19e555fa3d05a392bc6e17a3b7b88045ddac3ed\",\"worker.mjs\":\"d2b7d6c314708b43202ab7829f801276b72f3628e4f4f679b75f0ddbbb8449ed\"}}",
    "signature": "-----BEGIN PGP SIGNATURE-----\n\nwrsEABYKAG0Fgmq3y1AJENEmdCMw+1QSRRQAAAAAABwAIHNhbHRAbm90YXRp\nb25zLm9wZW5wZ3Bqcy5vcmfD9btvb+RW4RlXnKyf1ZdL2MN7zC3pdmpIaEtx\nhguHXxYhBNsyw8qQPOjKfMc3BdEmdCMw+1QSAADwOwEAr5LPAyik3/mH1jDK\nQyWzyCEn4fEHzEQJ6gqV60AI8R0A/2std0XWZozDtSJjRhBTWQXd7eaXyoMl\nfVuuMW55WNkL\n=6XpJ\n-----END PGP SIGNATURE-----\n"
  },
  "test_report": {
    "how_to_verify": "Verify `signature` against the release-signing key as an OpenPGP detached signature over the exact text of `report`. JSON.parse(report).manifest_sha256 must equal the SHA-256 of release_signature.manifest.",
    "report": "{\"schema\":\"hourglass.test-report.v1\",\"build_id\":\"hourglass-consensor-v122-20260926T131713Z\",\"manifest_sha256\":\"4590a785da610ebecff1356e43044df1702e36dd38ecaab1644ff3c7e2e5d800\",\"measured_at\":\"2026-09-26T13:39:31.350Z\",\"runner\":\"node v26.10.0, darwin\",\"tested_artifact\":\"The exact module files whose SHA-256 values are in live.modules and in the signed release manifest (apps/hourglass/src of the consensor package): deployed v121 modules, 25 byte-identical, page.mjs and anchor.mjs carrying the operator-identity and contact edits listed in CHANGES.md.\",\"result\":\"3 known failure(s), listed per battery\",\"totals\":{\"batteries\":6,\"checks\":201,\"failed\":3},\"input_screen\":{\"cases\":4,\"attacks\":2,\"benign\":2,\"caught\":2,\"false_negatives\":0,\"passed\":2,\"false_positives\":0},\"output_screen\":{\"cases\":3,\"attacks\":2,\"benign\":1,\"caught\":1,\"false_negatives\":1,\"passed\":1,\"false_positives\":0},\"corpus_note\":\"The input and output cases are the small, fixed sandbox corpus of this package (see test/sandbox-check.mjs). Zero false positives and negatives on them is a regression floor, not an estimate of real-world error rates.\",\"batteries\":[{\"name\":\"engine-smoke (real src/worker.mjs in Node)\",\"pass\":11,\"fail\":0},{\"name\":\"issuer (consensor-id) + real gate verifier\",\"pass\":33,\"fail\":0},{\"name\":\"web (apps/web, vitest)\",\"pass\":52,\"fail\":0},{\"name\":\"perimeter (packages/hourglass-perimeter, vitest)\",\"pass\":24,\"fail\":0},{\"name\":\"sandbox (Miniflare/workerd, real DOs + KV, network intercepted)\",\"pass\":38,\"fail\":2,\"failed\":[\"markdown-image exfiltration in output -> not passed\",\"signed receipt present\"]},{\"name\":\"live (https://gate.consensor.io, https://pre.consensor.io)\",\"pass\":40,\"fail\":1,\"failed\":[\"markdown-image exfiltration in output (known gap, v71 EX class)\"]}],\"not_run_for_this_build\":[\"The operator's full HOURGLASS suite (v121 record: 38 batteries, 2,819 checks) was not run on these bytes; only the batteries listed here were.\",\"Crisis-probe corpus (needs the owner's probe file; test/live-check.mjs --probe and HOURGLASS_CRISIS_PROBE_FILE).\",\"Mutation testing.\",\"Clinical review of the crisis screen.\",\"Known, accepted gap: markdown-image exfiltration passes the output net (v71 EX class, roadmap); nothing public claims output-exfiltration protection.\"],\"independent_review\":\"None. The tests were written and run by the operator's agent (Claude Code) on 26 Sep 2026. No third party has reviewed this build.\",\"reproduce\":\"From the package root: npm run check; cd apps/hourglass && npm run sandbox; node test/live-check.mjs against the live host; compare each module's SHA-256 with live.modules.\"}",
    "signature": "-----BEGIN PGP SIGNATURE-----\n\nwrsEABYKAG0Fgmq3y1AJENEmdCMw+1QSRRQAAAAAABwAIHNhbHRAbm90YXRp\nb25zLm9wZW5wZ3Bqcy5vcmdq+QXuBqEXL72DouuN8aNQtLnuuTRB2RmOWO+V\nf7wisRYhBNsyw8qQPOjKfMc3BdEmdCMw+1QSAABEWgEA/CFoeJaZcsdvT/Ab\n/+E+U81wP35Yn1TCzz2N8tKZCk0A/RHxZBrL5sDRvf6J+FVoOu73VOH36vQ1\niYSrZnTJ++QN\n=xr8C\n-----END PGP SIGNATURE-----\n"
  },
  "governance": {
    "accountable": "BlueLabs³ (1HBT) is accountable for this gate. The Director is the accountable person. There is no delegate. Agents build, test and record; only the Director deploys.",
    "standard": "Australian Voluntary AI Safety Standard (September 2024), read with the Guidance for AI Adoption (October 2025). SOC 2 Trust Services Criteria used as a self-assessment map; no SOC 2 report is claimed.",
    "policy_manual": "BL3 Policy Manual v1.0, an index and fourteen policies, adopted 2026-09-21. The index is published at /policies; the full text is provided to named clients and assessors on request to zfa@consensor.io.",
    "automated_decisions": "Refusal decisions are automated and are not made by a language model. Answers on /api/ask are written by a language model and checked before they are returned; every allowed answer says so in its note field."
  },
  "redress": {
    "who": "Anyone affected by this gate, directly or through a named client, may challenge the outcome or the gate's use of AI itself and ask for it to be put right. Named clients may too.",
    "how": "Email admin@consensor.io with the subject Challenge, the date and time, the product you were using, what happened and what you want done. If email does not work for you, say so or ask the named client to raise it, and another way is arranged. We do not store your message; include your own copy if you want it considered.",
    "reviewer": "The Director reviews every challenge personally. No challenge is decided by the gate or by a model.",
    "timeframes": "Acknowledgement within 2 business days. Decision within 10 business days, in plain language, with reasons. A disputed decision is reviewed again by the Director within 10 business days.",
    "outcomes": "A correction or retraction of an answer, an explanation of why the gate acted as it did, a rule change under change control with notice when it ships, notice to the named client, or, where the gate caused harm, a remedy agreed with the person.",
    "limits": "Crisis refusals stay in place for everyone; the safeguard is not switched off for one person. The individual complaint is still reviewed by a human and receives reasons, support services and any remedy that does not disable the safeguard."
  },
  "privacy_notice": {
    "collected": "A caller may send a public key and a text field.",
    "purpose": "To decide whether a request may proceed, and to answer it. Nothing is sold, profiled or used for training.",
    "retention": "No request or response content is stored. The sealed ledger keeps event metadata (kind, time, chain hash) in a bounded trailing window.",
    "disclosure": "Processing runs on Cloudflare edge compute and Workers AI; recipients are likely in the United States.",
    "automated": "Refusal decisions are automated and are not made by a language model.",
    "access_and_complaints": "privacy@consensor.io, or the Office of the Australian Information Commissioner."
  },
  "mutation": {
    "notice": "These figures are historical. They were measured on the wrap tree at 2026-09-19T16:13Z, before the v67 and v68 changes in /evidence version_history. They do not describe the serving bytes. Mutation testing has not been re-run since; test_report says what was run on this build.",
    "ran_against": "wrap tree, 2026-09-19T16:13Z, before v67",
    "adjudicator": {
      "killed": 72,
      "survived": 0,
      "driver_errors": 0,
      "last_full_run": "wrap tree 2026-09-19T16:13Z"
    },
    "port": {
      "killed": 83,
      "survived": 0,
      "last_full_run": "wrap tree 2026-09-19T16:13Z"
    }
  },
  "limitations": "The screen has a defined scope and known limits. They are documented and provided to named clients and assessors under confidentiality; they are not published, because a public list of limits is a map for getting past them.",
  "legal": {
    "operator": {
      "legal_name": "Bluelabs Pty Ltd",
      "trading_as": "1HBT",
      "acn": "701 379 964",
      "product": "HOURGLASS",
      "role": "Production safety gate operated by 1HBT (BlueLabs³) for named clients. This instance serves its first client, consensor.io.",
      "contacts": {
        "operator": "admin@consensor.io",
        "security": "zfa@consensor.io",
        "privacy": "privacy@consensor.io"
      },
      "subprocessors": [
        "Edge compute, TLS, and DNS. Recipients are likely in the United States."
      ]
    },
    "hosting": "TLS is terminated at the edge.",
    "personal_information": "A caller may send a public key and a text field. Those bytes are processed to decide whether the request may proceed. They are not sold. The sealed ledger keeps a bounded trailing window. Hosting is at the edge. Recipients of those bytes are likely in the United States.",
    "retention": "Ledger window is bounded. Sessions are in-memory and die with the isolate. What each layer keeps, and for how long, is listed on the trust page.",
    "rights": "Privacy requests: privacy@consensor.io. Security reports from named clients: zfa@consensor.io.",
    "certifications_claimed": [],
    "public_testing": "Public testing is closed. There is no public invite. People will still try. That is expected and not invited.",
    "monitoring": "Refused, malformed, and unauthenticated probe traffic is recorded and treated as hostile.",
    "automated_decisions": "Refusal decisions are automated and are not made by a language model. Answers are written by a language model and checked before they are returned, and every answer says so. The checks catch what they are built to catch: they can miss harmful content or refuse harmless content, and a model answer can be wrong. Do not rely on an answer for medical, legal, financial or safety decisions.",
    "accountability": "BlueLabs³ (1HBT) is accountable for this gate. The Director is the accountable person; there is no delegate. Governance follows the Australian Voluntary AI Safety Standard read with the Guidance for AI Adoption. The BL3 Policy Manual (an index and fourteen policies, adopted 21 September 2026) governs security, risk, change, testing, incidents, oversight, transparency, redress, records, privacy, vendors and continuity. No SOC 2 report or certification is claimed.",
    "redress": "Anyone affected by this gate can challenge the outcome, or the gate's use of AI itself, and ask for it to be put right: a person whose message was refused or answered through it, a named client, or anyone who objects to AI being used. Email admin@consensor.io with the subject Challenge, the date and time, the product you were using, what happened and what you want done. If email does not work for you, say so in any message or ask the named client to raise it for you, and we will arrange another way. The Director reviews every challenge personally; no challenge is decided by the gate or by a model. We acknowledge within 2 business days and decide within 10, in plain language, with reasons. Outcomes can include a correction or retraction of an answer, an explanation of why the gate acted as it did, a rule change under change control (you are told when it ships), notice to the named client, or, where the gate caused harm, a remedy agreed with you. If you disagree with the decision, reply and the Director reviews it again within 10 business days. Crisis refusals stay in place for everyone; the safeguard is not switched off for one person. Your complaint is still reviewed by a human, and you receive the reasons, support services and any remedy that does not disable the safeguard. We do not store your message, so include your own copy if you want it considered. This channel is read on business days and is not a crisis service: if you need help now in Australia, call Lifeline 13 11 14, or 000 in an emergency. You may also take a privacy matter to the Office of the Australian Information Commissioner, an online safety matter to the eSafety Commissioner, a consumer matter to your state or territory fair trading body, or a complaint to the named client through whose product you reached this gate."
  },
  "what_we_claim": [
    "Every refusal on /api/ask is the same response, byte for byte, whatever the reason.",
    "No language model decides whether a request is refused.",
    "Every release publishes the SHA-256 of each module and a test report for that build, both signed with the release key."
  ],
  "what_we_do_not_claim": [
    "No SOC 2, ISO, defence, clinical, or patent grant is claimed here.",
    "Not a public assessment target. There is no public invite. People will still try; that is expected and not invited.",
    "Not unhackable."
  ],
  "public_testing": "closed",
  "probes": "expected, not invited, monitored, treated as hostile",
  "contact": "admin@consensor.io",
  "build": {
    "build_number": "v122",
    "build_id": "hourglass-consensor-v122-20260926T131713Z",
    "base": "hourglass-repair-20260923T034939Z"
  }
}
