{
  "schema_version": 1,
  "lane": "ring-sol",
  "slug": "2026-10-19-cross-ring-sol",
  "source_model": {
    "provider": "openai",
    "model_id": "gpt-6.1-sol",
    "display_name": "GPT-6.1 Sol",
    "reasoning_effort": "high",
    "provenance": "recorded-at-generation"
  },
  "protocol": {
    "name": "choice-cross-build",
    "version": "2026-10-19-cross-build-v1"
  },
  "comparison": {
    "comparison_id": "choice-cross-build-2026-10-19-ring",
    "prompt_version": "2026-10-19-cross-build-v1-ring",
    "attempt": 1
  },
  "prompt_sha256": "33f05d015ef4c73debcace1fcdc0bfe776dfc1c9ad9fa9a3a99b6309bc9917e3",
  "integration": {
    "provider": "openai",
    "model_id": "gpt-6.1-sol",
    "display_name": "GPT-6.1 Sol",
    "reasoning_effort": "xhigh",
    "scope": "Standard publication packaging and necessary hosting/security compatibility only."
  },
  "originals_preserved": true,
  "generated_site_changes": "The standard Choice builder injects canonical, social and favicon metadata into copied HTML; these hashes describe source files before generated packaging.",
  "original_freeze_record_sha256": "111b7b148a730a033fdcae6948ed0ccfb5a8ab41797ead5446fdb3da340ed240",
  "publication_metadata_changes": {
    "assets": {
      "original": [
        "outputs/app.js",
        "outputs/core.js",
        "outputs/style.css"
      ],
      "published": [
        "outputs/app.js",
        "outputs/core.js",
        "outputs/style.css",
        "public/study-review.html",
        "public/integration.json"
      ]
    },
    "publish": {
      "original": false,
      "published": true
    },
    "summary": {
      "original": "Take one bell in a six-bell change-ringing practice, learning the pattern through timing, sound and fading guidance.",
      "published": "Ring one bell with a fading guide and a recorded strike trace. In this study build, the tap button starts below the phone viewport."
    }
  },
  "files": {
    "README.md": {
      "original_sha256": "5da8f525bb0599828dbdaeefe0c3cb805e99e34dd8d4d0cf6b03c8de316670d1",
      "final_sha256": "5da8f525bb0599828dbdaeefe0c3cb805e99e34dd8d4d0cf6b03c8de316670d1",
      "change": "Byte-identical submitted file."
    },
    "notes/verification.md": {
      "original_sha256": "4c607192fe5f7f68feafab11ab9a254c25ceb815aa96171bd35c29d2b52b9ddf",
      "final_sha256": "4c607192fe5f7f68feafab11ab9a254c25ceb815aa96171bd35c29d2b52b9ddf",
      "change": "Byte-identical submitted file."
    },
    "outputs/app.js": {
      "original_sha256": "c3708f881f4edf75c162914d5091c51d5e7eb45e308932164a6cc08a19a942a7",
      "final_sha256": "c3708f881f4edf75c162914d5091c51d5e7eb45e308932164a6cc08a19a942a7",
      "change": "Byte-identical submitted file."
    },
    "outputs/core.js": {
      "original_sha256": "81d58099fee597321a8fd9a9c12f3545281c834a2abfdd658275543c9d1b673f",
      "final_sha256": "81d58099fee597321a8fd9a9c12f3545281c834a2abfdd658275543c9d1b673f",
      "change": "Byte-identical submitted file."
    },
    "outputs/index.html": {
      "original_sha256": "8fc0469ec068686c69ac69ec8dba67b15753af57bdac931efaf2460245da7121",
      "final_sha256": "afa20cf4de5ad98bf7aaea0e68be281e16504ae8c936dae36b9c79cb9d7c8559",
      "change": "Add noreferrer to three external links that already used noopener; spell the self-directory wordmark link as index.html so the declared-asset validator resolves it."
    },
    "outputs/style.css": {
      "original_sha256": "bc6839ccc64734def4833a2116cbd40c2e8a9d3347779d29ca5c22badebe1bf9",
      "final_sha256": "bc6839ccc64734def4833a2116cbd40c2e8a9d3347779d29ca5c22badebe1bf9",
      "change": "Byte-identical submitted file."
    },
    "outputs/thumbnail.svg": {
      "original_sha256": "3492f45e25908f48d83f88d15f623412ff7425f502165b8206c0ca24f94016ce",
      "final_sha256": "3492f45e25908f48d83f88d15f623412ff7425f502165b8206c0ca24f94016ce",
      "change": "Byte-identical submitted file."
    },
    "public/study-review.html": {
      "original_sha256": null,
      "final_sha256": "a43411ed048ff4873ad7ed4b50c5586ffbd7eb58c2b8fdfec3930261bad986eb",
      "change": "Add the integration-owned mapped anonymous review and limitations record; preserve authored runtime."
    },
    "src/verify_ring.py": {
      "original_sha256": "20d21803a78de20aaaa7af1ccc295b4d693c56bff34b921e22c23eff86c43443",
      "final_sha256": "20d21803a78de20aaaa7af1ccc295b4d693c56bff34b921e22c23eff86c43443",
      "change": "Byte-identical submitted file."
    }
  },
  "limitations": [
    "Same topic brief and effort label do not establish matched provider harnesses or compute. No runtime quality or scientific/design refinement was authorised."
  ],
  "original_manifest_sha256": "017780fdb1dff540c6fe5ab269195371a45685cd8ea0f140486601b19121bfb0",
  "published_manifest_sha256": "5525ecdd178caddf9044b3b1deba9f1b7027664b812718439e1f94b6383db530",
  "generated_public_metadata": {
    "public/integration.json": "Byte-identical public copy of this integration ledger; the ledger and its copy are excluded from their own file-hash inventory."
  },
  "supplied_concept_origin": "Claude Opus 5.5"
}
