{
  "covered": {
    "files": [
      "public/decision-ledger.csv",
      "public/failure-corpus.csv",
      "public/llms.txt",
      "public/openapi-intelligence.yaml",
      "public/provenance/verify.sh",
      "public/provenance/verify.ps1",
      "public/provenance/verify.py",
      "public/provenance/verify.mjs"
    ],
    "trees": [
      "public/research/"
    ]
  },
  "covered_groups": [
    {
      "count": 206,
      "id": "research",
      "label": "Research papers and datasets",
      "note": null,
      "rule": "Files under /research/"
    },
    {
      "count": 1,
      "id": "decision-ledger",
      "label": "Decision ledger CSV",
      "note": null,
      "rule": "/decision-ledger.csv"
    },
    {
      "count": 1,
      "id": "failure-corpus",
      "label": "Failure corpus CSV",
      "note": null,
      "rule": "/failure-corpus.csv"
    },
    {
      "count": 1,
      "id": "llms",
      "label": "llms.txt",
      "note": "Our summary of the site for AI systems.",
      "rule": "/llms.txt"
    },
    {
      "count": 1,
      "id": "openapi",
      "label": "The Intelligence OpenAPI spec",
      "note": "The description of the Intelligence API, for developers.",
      "rule": "/openapi-intelligence.yaml"
    },
    {
      "count": 4,
      "id": "verifiers",
      "label": "The check scripts",
      "note": "So you can check the checker.",
      "rule": "/provenance/verify.sh, verify.ps1, verify.py and verify.mjs"
    }
  ],
  "days": [
    {
      "artifact_count": 214,
      "date": "2026-10-17",
      "generated_from_commit": "f745a3637efbcbcfd712bd49fc9fa7418c45a4e5",
      "manifest_sha256": "63300929652e2b3d48b52a578cfa583fe10c4e9e0d9cfc46dd71a1d1360a65e7",
      "manifest_url": "https://www.orbytlabs.ai/provenance/manifests/2026-10-17.json",
      "sealed_by": null,
      "stamp": {
        "anchors": [],
        "bitcoin_heights": [],
        "calendars": [
          "https://alice.btc.calendar.opentimestamps.org",
          "https://bob.btc.calendar.opentimestamps.org",
          "https://btc.calendar.catallaxy.com",
          "https://finney.calendar.eternitywall.com"
        ],
        "state": "pending"
      },
      "stamp_url": "https://www.orbytlabs.ai/provenance/stamps/2026-10-17.ots"
    }
  ],
  "first_confirmed": null,
  "first_day": "2026-10-17",
  "latest": "2026-10-17",
  "latest_artifacts": [
    {
      "bytes": 11725,
      "first_recorded": "2026-10-17",
      "group": "decision-ledger",
      "path": "public/decision-ledger.csv",
      "sha256": "ed9daf7b6c29797661c0305d4f7ee46a021b74031b2234455f0ecfa92f5b6fd2",
      "url": "https://www.orbytlabs.ai/decision-ledger.csv"
    },
    {
      "bytes": 25686,
      "first_recorded": "2026-10-17",
      "group": "failure-corpus",
      "path": "public/failure-corpus.csv",
      "sha256": "5644cb7cc5f65ca4185da94cd2e4798fa1be946faa009c8ca64bf37517f1b958",
      "url": "https://www.orbytlabs.ai/failure-corpus.csv"
    },
    {
      "bytes": 99727,
      "first_recorded": "2026-10-17",
      "group": "llms",
      "path": "public/llms.txt",
      "sha256": "878b4f90ddd938bd910d5dba50a7f08ecb8e8909052a3f79f8734811dcb67cf8",
      "url": "https://www.orbytlabs.ai/llms.txt"
    },
    {
      "bytes": 129427,
      "first_recorded": "2026-10-17",
      "group": "openapi",
      "path": "public/openapi-intelligence.yaml",
      "sha256": "91c7e4ef0d392a35de72cadb723cce731b55552ac5a54d23224a54076ba2b5ab",
      "url": "https://www.orbytlabs.ai/openapi-intelligence.yaml"
    },
    {
      "bytes": 8663,
      "first_recorded": "2026-10-17",
      "group": "verifiers",
      "path": "public/provenance/verify.mjs",
      "sha256": "27dcab65fc9590ad9c6b13bf4b229d3fe82b8127171dd0f38c0e7e7cbc5e6bb0",
      "url": "https://www.orbytlabs.ai/provenance/verify.mjs"
    },
    {
      "bytes": 19926,
      "first_recorded": "2026-10-17",
      "group": "verifiers",
      "path": "public/provenance/verify.ps1",
      "sha256": "e4404c24470c6be4cbe00244f6e731d79acd5a2960fd3880d55f6439f8f0e217",
      "url": "https://www.orbytlabs.ai/provenance/verify.ps1"
    },
    {
      "bytes": 8077,
      "first_recorded": "2026-10-17",
      "group": "verifiers",
      "path": "public/provenance/verify.py",
      "sha256": "7383a14b6c8fec7954c528cf2db6c648ed7dffbab86559b8f91c5ca84b1c45e4",
      "url": "https://www.orbytlabs.ai/provenance/verify.py"
    },
    {
      "bytes": 6283,
      "first_recorded": "2026-10-17",
      "group": "verifiers",
      "path": "public/provenance/verify.sh",
      "sha256": "e09f23f224da44b658bf7b75b60acb0de7fc2fb6b3c0ca4aff332f8231e43360",
      "url": "https://www.orbytlabs.ai/provenance/verify.sh"
    },
    {
      "bytes": 388365,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/agent-leadership-governance/agent-leadership-governance.pdf",
      "sha256": "4a5e0f4a2b9ed5a2fe20e08ec776593c2e0e053d07f324417dac194bc0d4ec92",
      "url": "https://www.orbytlabs.ai/research/agent-leadership-governance/agent-leadership-governance.pdf"
    },
    {
      "bytes": 19318,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/agent-leadership-governance/failure-corpus-2026-09-02.json",
      "sha256": "efbe0e55e43415c514e187c81b1ab44ab36487dba993860bb7c37e290148f070",
      "url": "https://www.orbytlabs.ai/research/agent-leadership-governance/failure-corpus-2026-09-02.json"
    },
    {
      "bytes": 48043,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/agent-leadership-governance/independent-coding-2026-09-13.json",
      "sha256": "1aca107bdd71f371ac74895f4444e22befe57380d0482bc2fe45252efa6bc297",
      "url": "https://www.orbytlabs.ai/research/agent-leadership-governance/independent-coding-2026-09-13.json"
    },
    {
      "bytes": 13254,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/agent-leadership-governance/study-runs-2026-09-15.json",
      "sha256": "c41614ac26e5162d9569be200c28b05edb07dc634e8969324f0526c4da2b11c2",
      "url": "https://www.orbytlabs.ai/research/agent-leadership-governance/study-runs-2026-09-15.json"
    },
    {
      "bytes": 323924,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/agent-native-datasets/agent-native-dataset-design.pdf",
      "sha256": "1a4d30e8034d84133e89642cbe184ea9f2ab2abc9ad9322a612e71901bfc119d",
      "url": "https://www.orbytlabs.ai/research/agent-native-datasets/agent-native-dataset-design.pdf"
    },
    {
      "bytes": 68424,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/MANIFEST.json",
      "sha256": "ff8a868be977b2cdbe7679017d82a2305ebfa6b5382c38d0763ee77668f1d443",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/MANIFEST.json"
    },
    {
      "bytes": 22296,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/PROTOCOL.md",
      "sha256": "c8fc6ffb52b1d4217d599e3741f55344b849a2b7b82584d43e38b3fc9e569f45",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/PROTOCOL.md"
    },
    {
      "bytes": 2329,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/REFERENCE-REPORT.md",
      "sha256": "2a33a8428728284991fb39420c066248a8b1aa87ced799c0fa59f5807dc5608d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/REFERENCE-REPORT.md"
    },
    {
      "bytes": 51405,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/evidence.json",
      "sha256": "1de27b368c2cc05ff928afe0df825d8e7671eaa820cbb0986102ab475555dc42",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/evidence.json"
    },
    {
      "bytes": 1099,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/ACCEPTANCE.md",
      "sha256": "d6bd035441500ac4038d86e4a1f6ef23a867942616b4dbc53b8588d318800507",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/ACCEPTANCE.md"
    },
    {
      "bytes": 2384,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/CONFIG.json",
      "sha256": "94e8be0d2529b7b23eb2fb74381b78ed30a415b4d275bf5a0d3edab7f415ba46",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/CONFIG.json"
    },
    {
      "bytes": 917,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/MANIFEST.json",
      "sha256": "c12b4343e35a1c6e19fed0001fe4d8b34d3d8284b34e75dd58d3063815e1cf87",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/MANIFEST.json"
    },
    {
      "bytes": 207,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/ORDER.json",
      "sha256": "48c70c19e063af7aafc1bce00ca5a1ed6d7b30c0b9ce7264e95cb056ce49c260",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/ORDER.json"
    },
    {
      "bytes": 188,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/POOL.json",
      "sha256": "daa7f66e4f113c659f1bf1afe91505a416cd38f504247afc6eae56b08c496bca",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/POOL.json"
    },
    {
      "bytes": 526,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/TEMPLATE.md",
      "sha256": "ebec0bafb4b142f8235a0d527bdb9ab578ef0e9ad3b88b2cb32584ad2f89708d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/TEMPLATE.md"
    },
    {
      "bytes": 2617,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/briefs.json",
      "sha256": "d0259735c71ece4d4e7a3e301530370cb6a04b9a5c0b14ee0e40a0fddd34b39c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/briefs.json"
    },
    {
      "bytes": 348,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/challenger.md",
      "sha256": "75712e804be9d74603d4c59afc6857acbd387c9a67efcff524ea65e67089e4a8",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/challenger.md"
    },
    {
      "bytes": 258,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/reconciler.md",
      "sha256": "18aa3efb37beadfda235c7582584aaacb0c1920a48d35422972c9ec16955d10b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/reconciler.md"
    },
    {
      "bytes": 304,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/researcher.md",
      "sha256": "b614cbbce252497c2b0bdbc28c714d72c0cf5f2ca6fa137a0f71c3393fe83221",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/researcher.md"
    },
    {
      "bytes": 444,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/single.md",
      "sha256": "6c07590b787398168bb9d98dee6d518ae81e0b6506b3d657ced6b66fa4dcfe00",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/registration/roles/single.md"
    },
    {
      "bytes": 1990,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/DECISION.md",
      "sha256": "dcfffc4da9348f700e09cf05d721d7beef84454e9c814eb03182c4b88a9e143b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/DECISION.md"
    },
    {
      "bytes": 118757,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/RESULT.json",
      "sha256": "d949aa69a86d921b66d47ca6fdc9d0f79bc03db5ec8cda65a9fa48241badd75c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/RESULT.json"
    },
    {
      "bytes": 1545,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/RUN-LOG.txt",
      "sha256": "471e8e630ea2f7e2e4de11e7c56aba70f390b4caafb73f1d78cad464a1ac142b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/RUN-LOG.txt"
    },
    {
      "bytes": 400,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/A.json",
      "sha256": "ade943df551ec98f4442b7e0520b33555275de9049090a30ca11d007c617687b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/A.json"
    },
    {
      "bytes": 4998,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/A.md",
      "sha256": "d74b4cb77dfa6debbe1fa5bea1a7298e9e3d1425f8477d890bc737cf6206c9da",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/A.md"
    },
    {
      "bytes": 398,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/B.json",
      "sha256": "e33078c5caf4c3f4e1237df82235945fe3115c008e38fe971f2b2a1ba22b727e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/B.json"
    },
    {
      "bytes": 14140,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/B.md",
      "sha256": "edbccc6dff46072e171c1313ebf74b264965b47164eb29806f656e37f53fa193",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/B.md"
    },
    {
      "bytes": 423,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/C.json",
      "sha256": "12aea2e536ce02d87f596e74d708ccc51a279566496bee543dd2d158882d4fea",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/C.json"
    },
    {
      "bytes": 5597,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/C.md",
      "sha256": "84254186d64f6699f35fab55821d00eea0f68d570c0c241311e400f232b61ef2",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/C.md"
    },
    {
      "bytes": 400,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/D.json",
      "sha256": "ade943df551ec98f4442b7e0520b33555275de9049090a30ca11d007c617687b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/D.json"
    },
    {
      "bytes": 6148,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/D.md",
      "sha256": "453d1111b3b94b38a44a759d1a8ebe8303cdfed121ccd0ebe80ab57a1257dae2",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/D.md"
    },
    {
      "bytes": 415,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/E.json",
      "sha256": "fe18e9724e7921094746648e0618f856f91189c9f56a00220604e9189b5f447a",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/E.json"
    },
    {
      "bytes": 3870,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/E.md",
      "sha256": "8b14be91934811f8bb29086840cabaa5721c5aa3245d29cc5e8207a7e1b23b92",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/E.md"
    },
    {
      "bytes": 398,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/F.json",
      "sha256": "e33078c5caf4c3f4e1237df82235945fe3115c008e38fe971f2b2a1ba22b727e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/F.json"
    },
    {
      "bytes": 6680,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/F.md",
      "sha256": "375b977b2606ffddab2c88939bf94c71d20faf705a8d88fdce8a2d1391c5e440",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/F.md"
    },
    {
      "bytes": 427,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/G.json",
      "sha256": "48580b5f4423c60bef272a4f6a6c28b6e56c9eb3689e16a906786aa3d9149fd6",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/G.json"
    },
    {
      "bytes": 11125,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/G.md",
      "sha256": "4c0e26772a1f62f231c5ff0666f0c782b18dbdc330354e452f1bb62064b8a044",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/G.md"
    },
    {
      "bytes": 413,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/H.json",
      "sha256": "0c60202ceb5b81d0c153e3993cfd77a94b122c335db7003b19e0335cfcc3ce6f",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/H.json"
    },
    {
      "bytes": 11510,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/H.md",
      "sha256": "b7725cdda47ffbd4a630f91414c7c1598293003289e32059823eef0d904355ee",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/H.md"
    },
    {
      "bytes": 2753,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/HOW-TO-SCORE.md",
      "sha256": "093122853b0e599f9b2243279b6e542f824f279039c601bc3335fb907f56836d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/HOW-TO-SCORE.md"
    },
    {
      "bytes": 413,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/I.json",
      "sha256": "0c60202ceb5b81d0c153e3993cfd77a94b122c335db7003b19e0335cfcc3ce6f",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/I.json"
    },
    {
      "bytes": 5729,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/I.md",
      "sha256": "739ce432ae10ac636bb13c51c2736f8bad3235df130fe2be0e22ade39ba106be",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/I.md"
    },
    {
      "bytes": 415,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/J.json",
      "sha256": "fe18e9724e7921094746648e0618f856f91189c9f56a00220604e9189b5f447a",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/J.json"
    },
    {
      "bytes": 14952,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/J.md",
      "sha256": "5cb43772013a7df80ea5690b38143d0718199ec87364d294c0f7636886cd2758",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/J.md"
    },
    {
      "bytes": 423,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/K.json",
      "sha256": "12aea2e536ce02d87f596e74d708ccc51a279566496bee543dd2d158882d4fea",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/K.json"
    },
    {
      "bytes": 9181,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/K.md",
      "sha256": "e5ccac45ee292b0def230b1037fe357e38df159304e6c1d1014d8285318f7770",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/K.md"
    },
    {
      "bytes": 427,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/L.json",
      "sha256": "48580b5f4423c60bef272a4f6a6c28b6e56c9eb3689e16a906786aa3d9149fd6",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/L.json"
    },
    {
      "bytes": 5960,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/L.md",
      "sha256": "c1fd3ad79cde99f4c08da8bbd6bcdd71477b1d4bb87ac78651324edcca8e99fd",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/L.md"
    },
    {
      "bytes": 267,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/MAP.json",
      "sha256": "8aec116a06c7caa3cc32711f3de5f23ce284942d1f9977023554e8c184a19f8c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/MAP.json"
    },
    {
      "bytes": 27624,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/SCORES.md",
      "sha256": "e37b4b6dc8e8a7ec9a311eb713ccdeab56f262187c541decef0850b9fe9d3517",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/blind/SCORES.md"
    },
    {
      "bytes": 6119,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/RESULT.json",
      "sha256": "35c9d761b5241002dfba8bab59a680262dffedada346fdc35eb1c2b6cea20629",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/RESULT.json"
    },
    {
      "bytes": 1781,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/RAW.json",
      "sha256": "36114ec09222368fbffc634ec7b730af57d9c5283e25f7f2b331269628f85d79",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/RAW.json"
    },
    {
      "bytes": 1106,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/RESULT.json",
      "sha256": "b3ab4a80d49c96a7b0b2965a35e14117493ea52ac5d977257ef786c7d55b30e2",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/RESULT.json"
    },
    {
      "bytes": 887,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/RUN.json",
      "sha256": "7323d8e0687955742afa3e55b2f2737a398a95ed5ec2b67813ec9f52611be64d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/STDERR.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/STDERR.txt"
    },
    {
      "bytes": 2164,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/packet/BRIEF.md",
      "sha256": "a53f12eb8e7b4b92a7a2ec710c9abe9f7df9916ca43d345fc3cbf1834011703d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-single/packet/BRIEF.md"
    },
    {
      "bytes": 1796,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/RAW.json",
      "sha256": "133d6953ce0f08e65d47f8a6460653ab05a2ef245b21d93a42cb7a9c818c11df",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/RAW.json"
    },
    {
      "bytes": 1116,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/RESULT.json",
      "sha256": "a3d85c41d8e72b63058ed82b0fe21ae65e45b914907f3dc645e6247fa8cf6284",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/RESULT.json"
    },
    {
      "bytes": 899,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/RUN.json",
      "sha256": "5311aad6e54efb208785e77fc762a1f70e5927cbc2dc5f988c6562eefed7effd",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/STDERR.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/STDERR.txt"
    },
    {
      "bytes": 2164,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/packet/BRIEF.md",
      "sha256": "a53f12eb8e7b4b92a7a2ec710c9abe9f7df9916ca43d345fc3cbf1834011703d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/ceiling-team/packet/BRIEF.md"
    },
    {
      "bytes": 347,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/empty-answer/RESULT.json",
      "sha256": "66d405bb4860ddc031f440a0f367b291f25548d740c1ed686c707ec62f8e4881",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/empty-answer/RESULT.json"
    },
    {
      "bytes": 920,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/evaluator-executes/RESULT.json",
      "sha256": "803ce747a6774a0ebdd8af854398eb0d6b32ec3032be605ff933588369c9c7ef",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/evaluator-executes/RESULT.json"
    },
    {
      "bytes": 769,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/missing-finding/RESULT.json",
      "sha256": "56632e102b8781581647278be659cdd8798eec59fa58363176343ed8f864fe24",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/missing-finding/RESULT.json"
    },
    {
      "bytes": 918,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/reference-passes/RESULT.json",
      "sha256": "f58c5ec3078c570806cc33f273ae34ce7087767b160fb5cdea456daf08c59c69",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/controls/reference-passes/RESULT.json"
    },
    {
      "bytes": 4608,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/dispositions.jsonl",
      "sha256": "757027df96085c29c038bab389f453f8dc817e46c1ada3422f75209166722cb6",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/dispositions.jsonl"
    },
    {
      "bytes": 367,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/ACCESS-LOG.json",
      "sha256": "b2812945d801af1f37497bd9d533fa37fc25a01fd4f9d637cf978b11376a92c0",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/ACCESS-LOG.json"
    },
    {
      "bytes": 3780,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/RAW-single.json",
      "sha256": "baf9f64651f60a0bec0d494798fd3dddf3498c66b3cc488a941d6062aec35e96",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/RAW-single.json"
    },
    {
      "bytes": 1522,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/RUN-single.json",
      "sha256": "821c5b2cf0d2801310c47459c365f7114a247cd12f65f9ad768da215fde4b96e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/RUN-single.json"
    },
    {
      "bytes": 5707,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/RUN.json",
      "sha256": "50a0c8db6cb8db2843a23794d8a48172f94852ce1002692f94386ec2710c5123",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/STDERR-single.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/STDERR-single.txt"
    },
    {
      "bytes": 2164,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/packet/BRIEF.md",
      "sha256": "a53f12eb8e7b4b92a7a2ec710c9abe9f7df9916ca43d345fc3cbf1834011703d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/packet/BRIEF.md"
    },
    {
      "bytes": 4938,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/packet/report.md",
      "sha256": "b564a0ceb9eb5ccf0a8162e8afffdc71e2af47bb3528b6498b702a9b61b5062b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-1/packet/report.md"
    },
    {
      "bytes": 546,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/ACCESS-LOG.json",
      "sha256": "d6f661b5b3f05ce2e81aee3a7e3968c19bfc7419483b40dfa84edd895bed98e6",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/ACCESS-LOG.json"
    },
    {
      "bytes": 2885,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/RAW-single.json",
      "sha256": "a1bd721697da8de3755e8b03ca7befeaeaca2fd9338ddd0d8f9040ebc870ec43",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/RAW-single.json"
    },
    {
      "bytes": 1521,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/RUN-single.json",
      "sha256": "f4b65bf59668c58e2d4d8f4a5f5bd9b4928ea8cc775861bc223193555e47e537",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/RUN-single.json"
    },
    {
      "bytes": 5706,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/RUN.json",
      "sha256": "8ae7abb4a3d806c69ea8971a51afb1c74556f6d7723a25aa45f5f5643df25dbc",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/STDERR-single.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/STDERR-single.txt"
    },
    {
      "bytes": 2161,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/BRIEF.md",
      "sha256": "61e9acafa244761c5f8490412c32a2029d3d92a7f62abb829f527653559f4a3b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/BRIEF.md"
    },
    {
      "bytes": 2392,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/challenge.md",
      "sha256": "7cf3ed730e5992307425b8086deb09638767d73c96d34f7982545b35f7daf387",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/challenge.md"
    },
    {
      "bytes": 2736,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/findings.md",
      "sha256": "4efe4f211676cc0bd9ddb811d0dd718d7a7d2de826ce4f092d9e1419e17e0760",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/findings.md"
    },
    {
      "bytes": 6620,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/report.md",
      "sha256": "3a29c82f88263f68243ae19a71ac34f90bd2ed0a7b20378da3eb469c5a1a5bcf",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-2/packet/report.md"
    },
    {
      "bytes": 456,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/ACCESS-LOG.json",
      "sha256": "ed2ded9c48b833414c057d864953c050a76a618b64c9d794eea413d36154f5f0",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/ACCESS-LOG.json"
    },
    {
      "bytes": 2708,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/RAW-single.json",
      "sha256": "f0d14174d7789cdfc3da6b21f2307bb243c98326afadd9b9ce69970ebcbea615",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/RAW-single.json"
    },
    {
      "bytes": 1520,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/RUN-single.json",
      "sha256": "ce109f44ba98a3de18c6262e88e9081909816dfb8dd563584e354773cac0673d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/RUN-single.json"
    },
    {
      "bytes": 5705,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/RUN.json",
      "sha256": "f1287ea93ac9e3c7e6741ad1e8047be0dfb5a24aa37c94745bfdd12e6d8d9899",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/STDERR-single.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/STDERR-single.txt"
    },
    {
      "bytes": 2175,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/packet/BRIEF.md",
      "sha256": "12fab917d436dc05f14fcccbfac9834146d48435a5f6a526ff6fb4ea19dc1fac",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/packet/BRIEF.md"
    },
    {
      "bytes": 3362,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/packet/findings.md",
      "sha256": "a6d74e7dce7c794e7f83b52be6cd0e61afaf1db1467f3228c1942654ab2ce16c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/packet/findings.md"
    },
    {
      "bytes": 3810,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/packet/report.md",
      "sha256": "afc2ff4f6666a636b81ab5adaee35c060cf1b377ba0ddad840f91ee60dd67c3f",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-3/packet/report.md"
    },
    {
      "bytes": 546,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/ACCESS-LOG.json",
      "sha256": "590234dc76a12bfcea28a4d20bbaede509f4e8491ecd83986f075373d81677d1",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/ACCESS-LOG.json"
    },
    {
      "bytes": 3199,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/RAW-single.json",
      "sha256": "30f8af082040a21ff5afd3fdbd365829faa495e3e67c17d530871fdf45548ba7",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/RAW-single.json"
    },
    {
      "bytes": 1521,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/RUN-single.json",
      "sha256": "63ce70ec8fddc9618c71dfd0f7053ecb7ffa01f1e5a0c1199bd4803cba09567d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/RUN-single.json"
    },
    {
      "bytes": 5706,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/RUN.json",
      "sha256": "28f549703ffb5342e4ea5f2c5f363f8b63f5ae2ad6053813c061da99294cfae7",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/STDERR-single.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/STDERR-single.txt"
    },
    {
      "bytes": 2185,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/BRIEF.md",
      "sha256": "8fbd3f5d34864e73878b71beeac209aeb47a8f899b0f16a7102c2941eb7c9197",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/BRIEF.md"
    },
    {
      "bytes": 2271,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/challenge.md",
      "sha256": "ce13c64ec042b80ccb93d41d9c3af756b6478d86c9060ab30f951935f359b225",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/challenge.md"
    },
    {
      "bytes": 4710,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/findings.md",
      "sha256": "b04e0ada8ef758dfc51ee14d2d9275e5b7b017015b597bba7779be34e43a04cf",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/findings.md"
    },
    {
      "bytes": 5900,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/report.md",
      "sha256": "f6c4b76e8977eda2bb039459039248bc56b47c7d190cd745001ec5628da7b526",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-4/packet/report.md"
    },
    {
      "bytes": 546,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/ACCESS-LOG.json",
      "sha256": "d1190513e3828a8008542b162b994a5ba7c8d28d60ed1c91952db10297ccd435",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/ACCESS-LOG.json"
    },
    {
      "bytes": 3263,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/RAW-single.json",
      "sha256": "731d8568e0e9fd35e1536863ef8224e5fbb4646808c525faf3b9129d552af4d3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/RAW-single.json"
    },
    {
      "bytes": 1521,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/RUN-single.json",
      "sha256": "58c95fad09b9fc5829c108ad192ee31644fb67299d067f9cfbfde241cf5f9c60",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/RUN-single.json"
    },
    {
      "bytes": 5706,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/RUN.json",
      "sha256": "5ca286c7f8f874cc6e02f2e3401b43bfbff11011b7bc27a753faaa10d5c5195f",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/STDERR-single.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/STDERR-single.txt"
    },
    {
      "bytes": 2173,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/BRIEF.md",
      "sha256": "b6a0e4048503927036bf82639d35c4f47659f14f648f20a0ebb81921674fa44e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/BRIEF.md"
    },
    {
      "bytes": 6259,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/challenge.md",
      "sha256": "ba83948cbeaf8f1d889a36ea884b5ba87f5b33820681a554ac54aa8406c93281",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/challenge.md"
    },
    {
      "bytes": 4490,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/findings.md",
      "sha256": "d23d4dff79545e27e7bb483faa04e5287726d397bcaa1e0027439dbf1835ce47",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/findings.md"
    },
    {
      "bytes": 5669,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/report.md",
      "sha256": "c32cc2ae7cf15455d53d0d825f0a802ccb9bb5dc087da6adb2154be0fb3039cc",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-5/packet/report.md"
    },
    {
      "bytes": 367,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/ACCESS-LOG.json",
      "sha256": "e20588a7a21f82cd0936856a7f35a6ef6721712cec1ff88c339f9eb4721a4f17",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/ACCESS-LOG.json"
    },
    {
      "bytes": 3143,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/RAW-single.json",
      "sha256": "0e34e3833d7c335d33e5be49de0d4cafe6a133f8677e41c16f3fab6338045af1",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/RAW-single.json"
    },
    {
      "bytes": 1521,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/RUN-single.json",
      "sha256": "776cfbacfaa448b0e33def587ae2a7bd552a5bd20076dfe60f0607e2d6133486",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/RUN-single.json"
    },
    {
      "bytes": 5706,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/RUN.json",
      "sha256": "980cda3a329e8521dc18cd2e7c2fb1001d9b1a4cabb793200dab6c20d6cc6c7e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/STDERR-single.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/STDERR-single.txt"
    },
    {
      "bytes": 2183,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/packet/BRIEF.md",
      "sha256": "5bfa62e87a8c1f1b34ea84ef796a622697c4e7d81c0de29b3ca6d0af2ed61ca3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/packet/BRIEF.md"
    },
    {
      "bytes": 5537,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/packet/report.md",
      "sha256": "cab920c8cee4c1ac5d2cd030c6a9a6f008d0be22ec929f0ee5bdf8967c296d26",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-single-6/packet/report.md"
    },
    {
      "bytes": 1162,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/ACCESS-LOG.json",
      "sha256": "6358548dc4f8a75c7b0be85e3bb9274f0350ebae23ea3fc8c63ae31d49584e84",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/ACCESS-LOG.json"
    },
    {
      "bytes": 3533,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RAW-challenger.json",
      "sha256": "91b413d83b1b72f55efa79eebe4cc6fa82dfd438516bbea5eac21deb8ea4cbe3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RAW-challenger.json"
    },
    {
      "bytes": 2814,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RAW-reconciler.json",
      "sha256": "fe755970337fcfd2608866bb7eda115b2b6bcc508a5b072825cf561cf9047408",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RAW-reconciler.json"
    },
    {
      "bytes": 3485,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RAW-researcher.json",
      "sha256": "d84a5955a887e641478e29b92b05cacec48ff0fdc8c1e84b8ef984db09cd0ed9",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RAW-researcher.json"
    },
    {
      "bytes": 1549,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN-challenger.json",
      "sha256": "9d36794d66f5a9dd24aefb6df207cb2256f04c0d3c2f860ea7da144105d6f8e3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN-challenger.json"
    },
    {
      "bytes": 1572,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN-reconciler.json",
      "sha256": "5f9faa7ef9fdbf61416a5f5cebe1b5cd9135b47287d0fdac15639f52f1ee26f7",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN-reconciler.json"
    },
    {
      "bytes": 1525,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN-researcher.json",
      "sha256": "9bab798c1bece4d0befb3affe09b9f81bfcefed3fe1c7a2f85031cc55b843c98",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN-researcher.json"
    },
    {
      "bytes": 9298,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN.json",
      "sha256": "00d6327828522826d49172afff4bb75b21d5e0bfa1ae610669afd374234e7dbd",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/STDERR-challenger.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/STDERR-challenger.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/STDERR-reconciler.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/STDERR-reconciler.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/STDERR-researcher.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/STDERR-researcher.txt"
    },
    {
      "bytes": 2164,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/BRIEF.md",
      "sha256": "a53f12eb8e7b4b92a7a2ec710c9abe9f7df9916ca43d345fc3cbf1834011703d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/BRIEF.md"
    },
    {
      "bytes": 6683,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/challenge.md",
      "sha256": "66a1c9832faebe91127d17a5e30bde6533240dcc38162f5b23f0738248901ede",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/challenge.md"
    },
    {
      "bytes": 6330,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/findings.md",
      "sha256": "4abbdc832d284cc3a877fa133662a1db9883a065ede91e623f2aaeb1ef8df55e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/findings.md"
    },
    {
      "bytes": 6088,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/report.md",
      "sha256": "f1b577c8352da492c51437598f5de468d20b2f6d0fc3b66a9b2b7ae44ceb3442",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-1/packet/report.md"
    },
    {
      "bytes": 1162,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/ACCESS-LOG.json",
      "sha256": "6783019f1ffa92b25ac4b1292a408a6c55e777bc8faf752b4b9a36e43263ac46",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/ACCESS-LOG.json"
    },
    {
      "bytes": 2869,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RAW-challenger.json",
      "sha256": "3b6b214223bdcdb3edb760a2c8a60af46b55848ef098fcef2278dfe5d0069253",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RAW-challenger.json"
    },
    {
      "bytes": 2362,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RAW-reconciler.json",
      "sha256": "901908d39082c99a50890889a8dc550747d5bd148fa2bb612ebbfb6d44095cf3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RAW-reconciler.json"
    },
    {
      "bytes": 2882,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RAW-researcher.json",
      "sha256": "0ebc1db2263522b3e07c60717a7bceb00add64501ee832e2bb9b9e2c7ff33b84",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RAW-researcher.json"
    },
    {
      "bytes": 1548,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN-challenger.json",
      "sha256": "03b550c53e7582725451befbd069f5c4078513df780c1b79cfffcd20028a2d5b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN-challenger.json"
    },
    {
      "bytes": 1524,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN-reconciler.json",
      "sha256": "6c2712fd4cd4fdd92cdd81ab4b598e61aca50930c9fa9ffa015478989c1d73ac",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN-reconciler.json"
    },
    {
      "bytes": 1504,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN-researcher.json",
      "sha256": "c57c6b2982340a14e19a077b0fbd499dc6ad739a8aeab4c350e93e7719320377",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN-researcher.json"
    },
    {
      "bytes": 9227,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN.json",
      "sha256": "6e8d3a18bb8575af3b73feaa0621bc40b459f16abd3627ea5f4075900a14d271",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/STDERR-challenger.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/STDERR-challenger.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/STDERR-reconciler.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/STDERR-reconciler.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/STDERR-researcher.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/STDERR-researcher.txt"
    },
    {
      "bytes": 2161,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/BRIEF.md",
      "sha256": "61e9acafa244761c5f8490412c32a2029d3d92a7f62abb829f527653559f4a3b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/BRIEF.md"
    },
    {
      "bytes": 8826,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/challenge.md",
      "sha256": "f90f6aaaf1dd67caa3b1a289040b1a7635dca81a42d2332fe2dbc6eca8e07ca2",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/challenge.md"
    },
    {
      "bytes": 9942,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/findings.md",
      "sha256": "81a75c5159fe513b2f3e564ac94e7a57fbffd72d9c14f78490bdae68eafa1efb",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/findings.md"
    },
    {
      "bytes": 14080,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/report.md",
      "sha256": "6a9a9c011760a0e5e43a431ea8e9b632aaba0c4e46b2a377212e91907b7c7a7d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-2/packet/report.md"
    },
    {
      "bytes": 1162,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/ACCESS-LOG.json",
      "sha256": "e6b0e6f9f1d853671305fc8c591a88cb26952727d4c05823cc1ef2723d271de0",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/ACCESS-LOG.json"
    },
    {
      "bytes": 4011,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RAW-challenger.json",
      "sha256": "e5739ac0b3795022f9699b6a749541aa178b58e8569c7b8c6a10be51386905d4",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RAW-challenger.json"
    },
    {
      "bytes": 3312,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RAW-reconciler.json",
      "sha256": "72c5fa40fd6123a0c24a53e5abed9c282a17f69c4bc2d10281e44e4a02168088",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RAW-reconciler.json"
    },
    {
      "bytes": 3474,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RAW-researcher.json",
      "sha256": "435fda0dbdb6521523991f591a00d17ce362ba736a743e0a49e0c3a9d16fc5c3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RAW-researcher.json"
    },
    {
      "bytes": 1552,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN-challenger.json",
      "sha256": "72036fba8786633ae33cf6355d3c65819a65c72146d8f874e448c38ee418d389",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN-challenger.json"
    },
    {
      "bytes": 1557,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN-reconciler.json",
      "sha256": "8910feb8fde23a07339c02562ed1e327d34df25a1dc03a7164ffe8ad5cb22973",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN-reconciler.json"
    },
    {
      "bytes": 1525,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN-researcher.json",
      "sha256": "2e7ffa0b383246d06f2e6583b788b05a9d50cda63f4a024693fd804a1f281983",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN-researcher.json"
    },
    {
      "bytes": 9286,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN.json",
      "sha256": "3536844f9d2beb3094339107d1dfb05edaf110d8dadb866a82ad5ecc57da72bf",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/STDERR-challenger.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/STDERR-challenger.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/STDERR-reconciler.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/STDERR-reconciler.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/STDERR-researcher.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/STDERR-researcher.txt"
    },
    {
      "bytes": 2175,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/BRIEF.md",
      "sha256": "12fab917d436dc05f14fcccbfac9834146d48435a5f6a526ff6fb4ea19dc1fac",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/BRIEF.md"
    },
    {
      "bytes": 13190,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/challenge.md",
      "sha256": "13332c2602d2510e2ea70ecd1c7e4426b229085a23a70e238a46b5cf836aacff",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/challenge.md"
    },
    {
      "bytes": 9269,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/findings.md",
      "sha256": "ea16e7e91059bad7fc9f12f9b854eb2b3d880228980f4851ce3ce2b4d34e44fb",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/findings.md"
    },
    {
      "bytes": 14892,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/report.md",
      "sha256": "56fac9ac5c23ae67a827cd4e3a0b803f3104f7d35bdcb6c63b6b244b61511e22",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-3/packet/report.md"
    },
    {
      "bytes": 1162,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/ACCESS-LOG.json",
      "sha256": "4c97afe08bed84099581d7ae4fb7c0a1df422d14e38f958fca660c041bc845f2",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/ACCESS-LOG.json"
    },
    {
      "bytes": 3035,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RAW-challenger.json",
      "sha256": "9011a35a6461b3aae58dffd492a919132b63149ff7cd2e02981be80fe0091d3c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RAW-challenger.json"
    },
    {
      "bytes": 2586,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RAW-reconciler.json",
      "sha256": "04acd58d2d42a1d854eac243850aa859bb58308eb05bca6a2ebbfa4964b73701",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RAW-reconciler.json"
    },
    {
      "bytes": 3437,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RAW-researcher.json",
      "sha256": "7d4a2d464e49e81036c59a17adcc9f3c3d7c112b7908b5cb012f45f47b287afc",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RAW-researcher.json"
    },
    {
      "bytes": 1548,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN-challenger.json",
      "sha256": "3f41e7c73e91a9308b86c0d46cc28103bb5cd254f9767bb1c86d61a40ed60e9b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN-challenger.json"
    },
    {
      "bytes": 1543,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN-reconciler.json",
      "sha256": "60df870114f3d39f052f89aa87c8891c0e0ac4a8c98f1afe605f2ab3713e66b5",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN-reconciler.json"
    },
    {
      "bytes": 1524,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN-researcher.json",
      "sha256": "59865609bdd18fec050777a8a2018b5e66b51ef0e3c67b46cb7c5e32fdabac31",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN-researcher.json"
    },
    {
      "bytes": 9267,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN.json",
      "sha256": "11283cd768c72d5c9dec9e39f96aa13503b477913ac1e71d3ca1dc2afb0f1fda",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/STDERR-challenger.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/STDERR-challenger.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/STDERR-reconciler.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/STDERR-reconciler.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/STDERR-researcher.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/STDERR-researcher.txt"
    },
    {
      "bytes": 2185,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/BRIEF.md",
      "sha256": "8fbd3f5d34864e73878b71beeac209aeb47a8f899b0f16a7102c2941eb7c9197",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/BRIEF.md"
    },
    {
      "bytes": 8842,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/challenge.md",
      "sha256": "b32f93d9842a79769ac4348b468d4c50c447d9ede0e6774a990fc7156f27836d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/challenge.md"
    },
    {
      "bytes": 9169,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/findings.md",
      "sha256": "e9ee14ca07985a52bccc6d5e27eae9363f9d44467303800bf596f54cead22e8d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/findings.md"
    },
    {
      "bytes": 11065,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/report.md",
      "sha256": "5e429c2bce519a4654cdb8432b9ffc76ce542370adebfaef5dc7ce954967552e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-4/packet/report.md"
    },
    {
      "bytes": 1162,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/ACCESS-LOG.json",
      "sha256": "1b69194b1a76fb7099f58d80509ca55dceb07b2d322a29b03c24c1b791df1242",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/ACCESS-LOG.json"
    },
    {
      "bytes": 3824,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RAW-challenger.json",
      "sha256": "0464c5084e91d5b4d39a0c2f2d0fecf2ba4f653847fbe04fb8de43b90fa81f56",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RAW-challenger.json"
    },
    {
      "bytes": 2688,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RAW-reconciler.json",
      "sha256": "7827baa939d9e54ed2f5855400b654f1aa65eca0d10b121276534146b2295472",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RAW-reconciler.json"
    },
    {
      "bytes": 3247,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RAW-researcher.json",
      "sha256": "320f4e49f02d7d5ee7a93b0c406cd14eecd7a41f02f1f2fcb5bfd9b5544b439e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RAW-researcher.json"
    },
    {
      "bytes": 1532,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN-challenger.json",
      "sha256": "6f9cf122008fa5fa32cf19134c9f38ea9a8f052f248684c3ad9f10c4aec0fc8c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN-challenger.json"
    },
    {
      "bytes": 1552,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN-reconciler.json",
      "sha256": "ac29f47d86a066f944e85142f02b8a3dcc9504f558ab2ad9f44f3c2f6ea4b4c4",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN-reconciler.json"
    },
    {
      "bytes": 1525,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN-researcher.json",
      "sha256": "6cf491dd5f436ff2fa21ea938dcd1002db62b9c2fa17a41b888ebf3204ab7ce2",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN-researcher.json"
    },
    {
      "bytes": 9261,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN.json",
      "sha256": "ddfed71d6b152e896ff852c152e65405a59bfbac0deb9d49ec72c602e95b4084",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/STDERR-challenger.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/STDERR-challenger.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/STDERR-reconciler.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/STDERR-reconciler.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/STDERR-researcher.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/STDERR-researcher.txt"
    },
    {
      "bytes": 2173,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/BRIEF.md",
      "sha256": "b6a0e4048503927036bf82639d35c4f47659f14f648f20a0ebb81921674fa44e",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/BRIEF.md"
    },
    {
      "bytes": 11135,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/challenge.md",
      "sha256": "5888eeb9952399e96b8da61e3677b521fb16f9f9886bece7c99baca8149eb1cb",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/challenge.md"
    },
    {
      "bytes": 7852,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/findings.md",
      "sha256": "e10635379c74a7c30b18aba4cfebad4c81d54919fefdc70f72acf5a825d7290c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/findings.md"
    },
    {
      "bytes": 11450,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/report.md",
      "sha256": "7305b9e62b57a993368f0cccda7bbcf489b54a26303ca94025c43b22ca4e2b3a",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-5/packet/report.md"
    },
    {
      "bytes": 1162,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/ACCESS-LOG.json",
      "sha256": "b48a31da46838b9ae3b5378d40a7320c7d737f4510e7f29047ab2a865aa69d99",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/ACCESS-LOG.json"
    },
    {
      "bytes": 3589,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RAW-challenger.json",
      "sha256": "64ef74936aec419efa5acfb5418c93c8f3587b92d6b945761f6b7a555d41c9d8",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RAW-challenger.json"
    },
    {
      "bytes": 2889,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RAW-reconciler.json",
      "sha256": "a490d14ef8cb87b71aec151a9dc72e94711baaa1cb2bfc30e7ce345847d0b485",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RAW-reconciler.json"
    },
    {
      "bytes": 3280,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RAW-researcher.json",
      "sha256": "76abeeaef13625ffdb06ad21ba88365198508b18e91b52fc83b04e6c2372de31",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RAW-researcher.json"
    },
    {
      "bytes": 1568,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN-challenger.json",
      "sha256": "adcdac376e8a3ea93e085a7fc2458a2cb769487ef20b91a566dfb208cf5fe53b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN-challenger.json"
    },
    {
      "bytes": 1571,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN-reconciler.json",
      "sha256": "c06fe09fa6bd771d991e04bb1aa87f2333c44403734ec37887a808ec2e4de4f0",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN-reconciler.json"
    },
    {
      "bytes": 1524,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN-researcher.json",
      "sha256": "d1b3a8d6205c3d046bc5781136eb39d2b0819a6924199bdeec8ada15d337da3d",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN-researcher.json"
    },
    {
      "bytes": 9315,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN.json",
      "sha256": "cf51183257a05bcc99c0d630148a67c09d3b58664d7201a45ec500c75040c4c4",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/RUN.json"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/STDERR-challenger.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/STDERR-challenger.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/STDERR-reconciler.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/STDERR-reconciler.txt"
    },
    {
      "bytes": 0,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/STDERR-researcher.txt",
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/STDERR-researcher.txt"
    },
    {
      "bytes": 2183,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/BRIEF.md",
      "sha256": "5bfa62e87a8c1f1b34ea84ef796a622697c4e7d81c0de29b3ca6d0af2ed61ca3",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/BRIEF.md"
    },
    {
      "bytes": 8823,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/challenge.md",
      "sha256": "2ef9354f750ceaa37cacd51d8f86ae246c46244f93965d5122dc5193297e861c",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/challenge.md"
    },
    {
      "bytes": 7743,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/findings.md",
      "sha256": "e5a5cd88c24f5495893db40cfce9d8b0e54003b1ee199edd1d7a5dac588d11ad",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/findings.md"
    },
    {
      "bytes": 9121,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/report.md",
      "sha256": "c978a0979e28d9d5f59d882baa66b868d688ca5d3bca78595a999dea23721a2b",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/docs/research/single-agent-vs-team/runs/sat-team-6/packet/report.md"
    },
    {
      "bytes": 31970,
      "first_recorded": "2026-10-17",
      "group": "research",
      "path": "public/research/single-agent-vs-team/evidence-2026-10-08/scripts/research/single-agent-vs-team.mjs",
      "sha256": "65d80864fa54229248b5ca95d571bd73605b16380f387da4b4b50c2c730bb890",
      "url": "https://www.orbytlabs.ai/research/single-agent-vs-team/evidence-2026-10-08/scripts/research/single-agent-vs-team.mjs"
    }
  ],
  "namespace": "orbyt-provenance",
  "not_covered": [
    {
      "label": null,
      "path": "public/autonomy-ledger.json",
      "reason": "The production build regenerates this file with a fresh generated_at stamp, so the bytes it serves differ from the committed bytes.",
      "url": "https://www.orbytlabs.ai/autonomy-ledger.json"
    },
    {
      "label": null,
      "path": "public/briefing.json",
      "reason": "The production build regenerates this file with a fresh generated_at stamp, so the bytes it serves differ from the committed bytes.",
      "url": "https://www.orbytlabs.ai/briefing.json"
    },
    {
      "label": null,
      "path": "public/decision-ledger.json",
      "reason": "The production build regenerates this file with a fresh generated_at stamp, so the bytes it serves differ from the committed bytes.",
      "url": "https://www.orbytlabs.ai/decision-ledger.json"
    },
    {
      "label": null,
      "path": "public/failure-corpus.json",
      "reason": "The production build regenerates this file with a fresh generated_at stamp, so the bytes it serves differ from the committed bytes.",
      "url": "https://www.orbytlabs.ai/failure-corpus.json"
    },
    {
      "label": null,
      "path": "public/pulse.json",
      "reason": "The production build regenerates this file with a fresh generated_at stamp, so the bytes it serves differ from the committed bytes.",
      "url": "https://www.orbytlabs.ai/pulse.json"
    },
    {
      "label": null,
      "path": "public/seat-board.json",
      "reason": "The production build regenerates this file with a fresh generated_at stamp, so the bytes it serves differ from the committed bytes.",
      "url": "https://www.orbytlabs.ai/seat-board.json"
    },
    {
      "label": null,
      "path": "public/llms-full.txt",
      "reason": "Each site update writes that day's date into its \"Last updated\" line.",
      "url": "https://www.orbytlabs.ai/llms-full.txt"
    },
    {
      "label": "Blog posts",
      "path": null,
      "reason": "Each post is built into a page, with no fixed file to check yet.",
      "url": "https://www.orbytlabs.ai/blog"
    }
  ],
  "not_covered_groups": [
    {
      "count": 6,
      "id": "stamped-json",
      "label": "The six org JSON files",
      "members": [
        "/autonomy-ledger.json",
        "/briefing.json",
        "/decision-ledger.json",
        "/failure-corpus.json",
        "/pulse.json",
        "/seat-board.json"
      ],
      "reason": "Each site update writes a new timestamp into them, so their contents change."
    },
    {
      "count": 1,
      "id": "llms-full",
      "label": "llms-full.txt",
      "members": [
        "/llms-full.txt"
      ],
      "reason": "Each site update writes that day's date into its \"Last updated\" line."
    },
    {
      "count": 1,
      "id": "blog",
      "label": "Blog posts",
      "members": [
        "Blog posts"
      ],
      "reason": "Each post is built into a page, with no fixed file to check yet."
    }
  ],
  "owner_key": {
    "fingerprint": "SHA256:I7qz4hXKts9QI5Gf2+KQgsLjpo0/IZzlII+oIJhF+oE",
    "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJMl7pELNGVsAUl/c1J2pe9uQ/VKmoHFZ8RzRTSRLumlI2jssJPoL4cPTbxXHKxQgYgGuG3HJqQVMscsCFD4lZA=",
    "slot": "active"
  },
  "owner_keys": [
    {
      "fingerprint": "SHA256:I7qz4hXKts9QI5Gf2+KQgsLjpo0/IZzlII+oIJhF+oE",
      "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJMl7pELNGVsAUl/c1J2pe9uQ/VKmoHFZ8RzRTSRLumlI2jssJPoL4cPTbxXHKxQgYgGuG3HJqQVMscsCFD4lZA=",
      "slot": "active"
    },
    {
      "fingerprint": "SHA256:dkWsKc3H+8rqwA3qOGfroPydzLlv7Xim+QaCwIJwVZQ",
      "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDel/a+TT40HU7lP6NUIbSysF/u+sOpQWRbGM7Z5SC5G",
      "slot": "backup"
    }
  ],
  "principal": "orbyt-owner",
  "schema": "orbyt-provenance-index/1",
  "seals": [],
  "site": "https://www.orbytlabs.ai",
  "verifiers": [
    {
      "bytes": 6283,
      "label": "Shell",
      "name": "verify.sh",
      "run": "sh verify.sh",
      "sha256": "e09f23f224da44b658bf7b75b60acb0de7fc2fb6b3c0ca4aff332f8231e43360",
      "text": "( set -eu\n  site=https://www.orbytlabs.ai\n  github=https://raw.githubusercontent.com/orbytlabs-ai/ai-agent-research/main/provenance\n  file=/research/agent-leadership-governance/agent-leadership-governance.pdf\n  owner_keys='orbyt-owner namespaces=\"orbyt-provenance\" ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJMl7pELNGVsAUl/c1J2pe9uQ/VKmoHFZ8RzRTSRLumlI2jssJPoL4cPTbxXHKxQgYgGuG3HJqQVMscsCFD4lZA=\norbyt-owner namespaces=\"orbyt-provenance\" ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDel/a+TT40HU7lP6NUIbSysF/u+sOpQWRbGM7Z5SC5G'\n  printf 'Drag the file here and press Return: '\n  IFS= read -r given || given=\n  given=$(printf '%s' \"$given\" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')\n  case \"$given\" in\n    \\'*\\') given=$(printf '%s' \"$given\" | sed -e \"s/^'//\" -e \"s/'\\$//\" -e \"s/'\\\\\\\\''/'/g\") ;;\n    \\\"*\\\") given=$(printf '%s' \"$given\" | sed -e 's/^\"//' -e 's/\"$//') ;;\n    *) given=$(printf '%s' \"$given\" | sed -e 's/\\\\\\(.\\)/\\1/g') ;;\n  esac\n  if [ -n \"$given\" ]; then\n    [ -f \"$given\" ] && [ -r \"$given\" ] || { echo \"NOT FOUND: there is no file at $given\"; exit 1; }\n    hash=$(shasum -a 256 < \"$given\" | cut -d' ' -f1)\n  fi\n  mkdir -p orbyt-provenance && cd orbyt-provenance\n  get() { curl -fsS \"$1\" -o \"$2\" || { echo \"CANNOT FETCH: $1\"; exit 1; }; }\n  day='^[0-9]{4}-[0-9]{2}-[0-9]{2}$'\n  get \"$site/provenance/index.json\" index.json\n  latest=$(jq -r --arg re \"$day\" '.latest // empty | select(test($re))' index.json)\n  [ -n \"$latest\" ] || { echo \"NOT RECORDED YET: no manifest has been recorded yet, so there is nothing to check against.\"; exit 1; }\n  if [ -z \"$given\" ]; then\n    echo \"SITE COPY: no file given, so this checks the site's copy of $file\"\n    get \"$site$file\" site-copy.bin\n    hash=$(shasum -a 256 < site-copy.bin | cut -d' ' -f1)\n  fi\n  check() {\n    get \"$site/provenance/manifests/$1.json\" \"manifest-$1.json\"\n    jq -cSj 'del(.manifest_sha256)' \"manifest-$1.json\" > \"manifest-$1.body\" || { echo \"BAD MANIFEST: the $1 manifest is not valid JSON\"; exit 1; }\n    mh=$(shasum -a 256 < \"manifest-$1.body\" | cut -d' ' -f1)\n    [ \"$mh\" = \"$(jq -r .manifest_sha256 \"manifest-$1.json\")\" ] || { echo \"BAD MANIFEST: the $1 manifest does not hash to its own manifest_sha256\"; exit 1; }\n  }\n  check \"$latest\"\n  if [ -n \"$given\" ]; then\n    rec=$(jq -r --arg h \"$hash\" '[.artifacts[] | select(.sha256 == $h) | .path][0] // empty' \"manifest-$latest.json\")\n  else\n    rec=$(jq -r --arg p \"public$file\" --arg h \"$hash\" '[.artifacts[] | select(.path == $p and .sha256 == $h) | .path][0] // empty' \"manifest-$latest.json\")\n  fi\n  [ -n \"$rec\" ] || { echo \"NO MATCH: this file is not one we recorded in the $latest manifest\"; exit 1; }\n  first=$(jq -r --arg p \"$rec\" --arg re \"$day\" '[.latest_artifacts[] | select(.path == $p) | .first_recorded][0] // empty | select(test($re))' index.json)\n  days=$(jq -rn --arg a \"${first:-$latest}\" --arg b \"$latest\" 'if $a <= $b then range(($a + \"T00:00:00Z\" | fromdate); ($b + \"T00:00:00Z\" | fromdate) + 1; 86400) | strftime(\"%Y-%m-%d\") else $b end')\n  : > days.txt\n  for d in $(printf '%s\\n' \"$days\"); do\n    check \"$d\"\n    jq -e --arg p \"$rec\" --arg h \"$hash\" 'any(.artifacts[]; .path == $p and .sha256 == $h)' \"manifest-$d.json\" > /dev/null || { echo \"CHANGED: the $d manifest does not record these bytes for ${rec#public}\"; exit 1; }\n    echo \"$d $mh\" >> days.txt\n  done\n  d0=$(head -n 1 days.txt | cut -d' ' -f1)\n  h0=$(head -n 1 days.txt | cut -d' ' -f2)\n  cp \"manifest-$d0.body\" manifest.body\n  echo \"MANIFEST: the $d0 manifest hashes to $h0\"\n  if curl -fsS \"$site/provenance/stamps/$d0.ots\" -o stamp.ots 2> /dev/null; then\n    echo \"STAMP: the $d0 manifest has a timestamp proof, saved as orbyt-provenance/stamp.ots\"\n  else\n    rm -f stamp.ots\n    echo \"NO STAMP: the $d0 manifest has no timestamp proof yet\"\n  fi\n  printf '%s\\n' \"$owner_keys\" > owner.allowed_signers\n  weeks=$(jq -r --arg a \"$d0\" --arg re \"$day\" '.seals[].week_ending | select(test($re) and . >= $a)' index.json)\n  if [ \"$(jq '.seals | length' index.json)\" = 0 ]; then\n    echo \"NO SEAL YET: the owner has not signed a weekly seal yet\"\n  else\n    sealed=\n    for w in $(printf '%s\\n' \"$weeks\"); do\n      get \"$site/provenance/seals/$w.json\" \"seal-$w.json\"\n      get \"$site/provenance/seals/$w.json.sig\" \"seal-$w.json.sig\"\n      said=$(ssh-keygen -Y verify -f owner.allowed_signers -I orbyt-owner -n orbyt-provenance -s \"seal-$w.json.sig\" < \"seal-$w.json\" 2>&1) || { echo \"BAD SEAL: the seal for the week ending $w does not verify against the owner key in this command\"; exit 1; }\n      jq -r '.manifests[] | \"\\(.date) \\(.manifest_sha256)\"' \"seal-$w.json\" > \"seal-$w.days\"\n      bad=$(awk 'NR == FNR { h[$1] = $2; next } ($1 in h) && (h[$1] < $2 || h[$1] > $2) { print $1; exit }' days.txt \"seal-$w.days\")\n      [ -z \"$bad\" ] || { echo \"REWRITTEN: the seal for the week ending $w names a different $bad manifest\"; exit 1; }\n      if grep -qx \"$d0 $h0\" \"seal-$w.days\"; then sealed=$w; key=$(printf '%s' \"$said\" | sed -n 's/.* key \\(SHA256:[^ ]*\\).*/\\1/p'); fi\n    done\n    if [ -n \"$sealed\" ]; then\n      echo \"SEALED: the owner's seal for the week ending $sealed names the $d0 manifest, signed by key $key\"\n    else\n      echo \"NOT YET SEALED: no seal names the $d0 manifest yet\"\n    fi\n  fi\n  missing=\n  list=owner.allowed_signers\n  for d in $(printf '%s\\n' \"$days\"); do list=\"$list manifest-$d.json\"; done\n  for w in $(printf '%s\\n' \"$weeks\"); do list=\"$list seal-$w.json seal-$w.json.sig\"; done\n  for f in $(printf '%s\\n' \"$list\"); do\n    case \"$f\" in manifest-*) g=\"manifests/${f#manifest-}\" ;; seal-*) g=\"seals/${f#seal-}\" ;; *) g=\"$f\" ;; esac\n    code=$(curl -sS -o \"github-copy\" -w '%{http_code}' \"$github/$g\" 2> /dev/null || true)\n    case \"$code\" in\n      200) cmp -s github-copy \"$f\" || { echo \"GITHUB DIFFERS: the GitHub copy of $g is not what this command or this site holds\"; exit 1; } ;;\n      *) missing=\"${missing:-$g}\" ;;\n    esac\n  done\n  rm -f github-copy\n  if [ -n \"$missing\" ]; then\n    echo \"NOT ON GITHUB YET: the GitHub copy of $missing could not be read, so not everything was compared\"\n  else\n    echo \"GITHUB: the GitHub copies of the owner key, the manifests and the seals are the same files\"\n  fi\n  echo \"MATCH: ${rec#public} has the bytes first recorded on $d0, unchanged through $latest, sha256 $hash\"\n)\n",
      "url": "https://www.orbytlabs.ai/provenance/verify.sh"
    },
    {
      "bytes": 19926,
      "label": "PowerShell",
      "name": "verify.ps1",
      "run": "powershell -ExecutionPolicy Bypass -File verify.ps1",
      "sha256": "e4404c24470c6be4cbe00244f6e731d79acd5a2960fd3880d55f6439f8f0e217",
      "text": "# Check a file against the Orbyt Labs provenance record.\n# https://www.orbytlabs.ai/provenance\n# Windows PowerShell 5.1 or PowerShell 7, nothing to install. The weekly seal is checked with ssh-keygen.\n# It only reads from the site and from GitHub, and writes what it downloads to .\\orbyt-provenance.\n# Usage: powershell -ExecutionPolicy Bypass -File verify.ps1 [file]   (with no file it asks; press Return to check the site's copy)\n$ErrorActionPreference = \"Stop\"\n$ProgressPreference = \"SilentlyContinue\"\n\n$SITE = \"https://www.orbytlabs.ai\"\n$GITHUB = \"https://raw.githubusercontent.com/orbytlabs-ai/ai-agent-research/main/provenance\"\n$FILE = \"/research/agent-leadership-governance/agent-leadership-governance.pdf\"\n$OUT = \"orbyt-provenance\"\n$OWNER_KEYS = @(\n    'orbyt-owner namespaces=\"orbyt-provenance\" ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJMl7pELNGVsAUl/c1J2pe9uQ/VKmoHFZ8RzRTSRLumlI2jssJPoL4cPTbxXHKxQgYgGuG3HJqQVMscsCFD4lZA='\n    'orbyt-owner namespaces=\"orbyt-provenance\" ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDel/a+TT40HU7lP6NUIbSysF/u+sOpQWRbGM7Z5SC5G'\n)\n$DAY_RE = '^\\d{4}-\\d{2}-\\d{2}$'\n$HERE = (Get-Location).ProviderPath\n$OUT_DIR = Join-Path $HERE $OUT\n$INVARIANT = [Globalization.CultureInfo]::InvariantCulture\nif ($PSVersionTable.PSVersion.Major -lt 6) {\n    # Windows PowerShell 5.1 can default to old TLS versions; the site and GitHub need 1.2.\n    [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12\n}\n\nfunction say([string]$message) {\n    [Console]::Out.WriteLine($message)\n}\n\nfunction stop([string]$message) {\n    say $message\n    exit 1\n}\n\nfunction fetch([string]$url) {\n    try {\n        $response = Invoke-WebRequest -Uri $url -UseBasicParsing -TimeoutSec 60 -ErrorAction Stop\n        return @([int]$response.StatusCode, $response.RawContentStream.ToArray())\n    } catch {\n        return @(0, [byte[]]@())\n    }\n}\n\nfunction get([string]$url) {\n    $response = fetch $url\n    if ($response[0] -ne 200) { stop \"CANNOT FETCH: $url\" }\n    return ,$response[1]\n}\n\nfunction save([string]$name, [byte[]]$data) {\n    [IO.File]::WriteAllBytes((Join-Path $OUT_DIR $name), $data)\n}\n\nfunction sha256([byte[]]$data) {\n    $hasher = [Security.Cryptography.SHA256]::Create()\n    try { $hash = $hasher.ComputeHash($data) } finally { $hasher.Dispose() }\n    return ([BitConverter]::ToString($hash) -replace \"-\", \"\").ToLowerInvariant()\n}\n\nfunction utf8([string]$text) {\n    return ,([Text.Encoding]::UTF8.GetBytes($text))\n}\n\nfunction given_path([string]$text) {\n    $text = $text.Trim()\n    if ($text.Length -ge 2 -and $text[0] -eq [char]\"'\" -and $text[-1] -eq [char]\"'\") {\n        return $text.Substring(1, $text.Length-2).Replace(\"'\\''\", \"'\")\n    }\n    if ($text.Length -ge 2 -and $text[0] -eq [char]'\"' -and $text[-1] -eq [char]'\"') {\n        return $text.Substring(1, $text.Length-2)\n    }\n    if ([Environment]::OSVersion.Platform -eq [PlatformID]::Win32NT) { return $text }\n    return [regex]::Replace($text, '\\\\(.)', '$1')\n}\n\n# Strings compare as Python compares them: both strings, byte for byte, case kept.\nfunction same($a, $b) {\n    return ($a -is [string]) -and ($b -is [string]) -and [string]::Equals([string]$a, [string]$b)\n}\n\nfunction is_day($value) {\n    return ($value -is [string]) -and [regex]::IsMatch($value, $DAY_RE)\n}\n\n# JSON, read the way Python's json module reads it: an object is a dictionary with exact keys,\n# an array a list, a number keeps the text Python would write back for it.\n$TOKEN = [regex]'\\G[ \\t\\n\\r]*(?:(\"(?:[^\"\\\\\\x00-\\x1f]|\\\\[\"\\\\/bfnrt]|\\\\u[0-9a-fA-F]{4})*\")|(-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][-+]?[0-9]+)?)|([{}\\[\\]:,])|(true|false|null|NaN|Infinity|-Infinity))'\n$ESCAPE = [regex]'\\\\(?:u([0-9a-fA-F]{4})|(.))'\n$UNESCAPE = [Text.RegularExpressions.MatchEvaluator]{\n    param($m)\n    if ($m.Groups[1].Success) { return [string][char][Convert]::ToInt32($m.Groups[1].Value, 16) }\n    switch -CaseSensitive ($m.Groups[2].Value) {\n        \"b\" { return [string][char]8 }\n        \"f\" { return [string][char]12 }\n        \"n\" { return \"`n\" }\n        \"r\" { return \"`r\" }\n        \"t\" { return \"`t\" }\n    }\n    return $m.Groups[2].Value\n}\n$STRICT_UTF8 = New-Object Text.UTF8Encoding($false, $true)\n\nfunction new_object {\n    return ,([Collections.Generic.Dictionary[string, object]]::new([StringComparer]::Ordinal))\n}\n\nfunction new_list {\n    return ,([Collections.Generic.List[object]]::new())\n}\n\nfunction number_text([string]$text) {\n    if ($text -match '^-?[0-9]+$') {\n        if ($text -eq \"-0\") { return \"0\" }\n        return $text\n    }\n    try {\n        $value = [double]::Parse($text, $INVARIANT)\n    } catch {\n        # Windows PowerShell 5.1 refuses a number too large for a double; Python reads it as infinity.\n        if ($text.StartsWith(\"-\")) { $value = [double]::NegativeInfinity } else { $value = [double]::PositiveInfinity }\n    }\n    return (float_text $value)\n}\n\n# A float as Python's repr writes it: the shortest digits that read back, then fixed or exponent form.\nfunction float_text([double]$value) {\n    if ([double]::IsNaN($value)) { return \"NaN\" }\n    if ([double]::IsPositiveInfinity($value)) { return \"Infinity\" }\n    if ([double]::IsNegativeInfinity($value)) { return \"-Infinity\" }\n    $sign = \"\"\n    if ([BitConverter]::DoubleToInt64Bits($value) -lt 0) { $sign = \"-\" }\n    $magnitude = [Math]::Abs($value)\n    if ($magnitude -eq 0) { return $sign + \"0.0\" }\n    for ($places = 0; $places -le 16; $places++) {\n        $written = $magnitude.ToString(\"E\" + $places, $INVARIANT)\n        if ([double]::Parse($written, $INVARIANT) -eq $magnitude) { break }\n    }\n    $parts = $written.Split([char]\"E\")\n    $digits = $parts[0].Replace(\".\", \"\").TrimEnd([char]\"0\")\n    $exponent = [int]::Parse($parts[1], $INVARIANT)\n    $point = $exponent + 1\n    if ($point -gt -4 -and $point -le 16) {\n        if ($point -le 0) { return $sign + \"0.\" + (\"0\" * (-$point)) + $digits }\n        if ($point -ge $digits.Length) { return $sign + $digits.PadRight($point, [char]\"0\") + \".0\" }\n        return $sign + $digits.Substring(0, $point) + \".\" + $digits.Substring($point)\n    }\n    $mantissa = $digits.Substring(0, 1)\n    if ($digits.Length -gt 1) { $mantissa += \".\" + $digits.Substring(1) }\n    $exponentSign = \"+\"\n    if ($exponent -lt 0) { $exponentSign = \"-\" }\n    return $sign + $mantissa + \"e\" + $exponentSign + ([Math]::Abs($exponent)).ToString(\"00\", $INVARIANT)\n}\n\nfunction parse_json([byte[]]$bytes) {\n    $text = $STRICT_UTF8.GetString($bytes)\n    if ($text.Length -gt 0 -and $text[0] -eq [char]0xFEFF) { $text = $text.Substring(1) }\n    $script:kinds = [Collections.Generic.List[int]]::new()\n    $script:texts = [Collections.Generic.List[string]]::new()\n    $end = 0\n    foreach ($m in $TOKEN.Matches($text)) {\n        for ($group = 1; $group -le 4; $group++) {\n            if ($m.Groups[$group].Success) {\n                $script:kinds.Add($group)\n                $script:texts.Add($m.Groups[$group].Value)\n                break\n            }\n        }\n        $end = $m.Index + $m.Length\n    }\n    if (-not [regex]::IsMatch($text.Substring($end), '^[ \\t\\n\\r]*$')) { throw \"not valid JSON\" }\n    $script:at = 0\n    $value = parse_value\n    if ($script:at -ne $script:kinds.Count) { throw \"not valid JSON\" }\n    return ,$value\n}\n\nfunction next_token {\n    if ($script:at -ge $script:kinds.Count) { throw \"not valid JSON\" }\n    $taken = $script:at\n    $script:at++\n    return @($script:kinds[$taken], $script:texts[$taken])\n}\n\nfunction parse_value {\n    $next = next_token\n    $kind = $next[0]\n    $text = $next[1]\n    if ($kind -eq 1) {\n        $inner = $text.Substring(1, $text.Length-2)\n        if ($inner.IndexOf([char]\"\\\") -lt 0) { return $inner }\n        return $ESCAPE.Replace($inner, $UNESCAPE)\n    }\n    if ($kind -eq 2) { return @{ json = (number_text $text) } }\n    if ($kind -eq 4) {\n        if ($text -ceq \"true\") { return $true }\n        if ($text -ceq \"false\") { return $false }\n        if ($text -ceq \"null\") { return $null }\n        if ($text -ceq \"NaN\") { return @{ json = \"NaN\" } }\n        if ($text -ceq \"Infinity\") { return @{ json = \"Infinity\" } }\n        return @{ json = \"-Infinity\" }\n    }\n    if ($text -ceq \"{\") {\n        $object = new_object\n        if ($script:at -lt $script:kinds.Count -and $script:texts[$script:at] -ceq \"}\" -and $script:kinds[$script:at] -eq 3) {\n            $script:at++\n            return ,$object\n        }\n        while ($true) {\n            $key = next_token\n            if ($key[0] -ne 1) { throw \"not valid JSON\" }\n            $script:at--\n            $name = parse_value\n            $colon = next_token\n            if (-not ($colon[0] -eq 3 -and $colon[1] -ceq \":\")) { throw \"not valid JSON\" }\n            $object[$name] = parse_value\n            $after = next_token\n            if ($after[0] -eq 3 -and $after[1] -ceq \",\") { continue }\n            if ($after[0] -eq 3 -and $after[1] -ceq \"}\") { return ,$object }\n            throw \"not valid JSON\"\n        }\n    }\n    if ($text -ceq \"[\") {\n        $list = new_list\n        if ($script:at -lt $script:kinds.Count -and $script:texts[$script:at] -ceq \"]\" -and $script:kinds[$script:at] -eq 3) {\n            $script:at++\n            return ,$list\n        }\n        while ($true) {\n            $list.Add((parse_value))\n            $after = next_token\n            if ($after[0] -eq 3 -and $after[1] -ceq \",\") { continue }\n            if ($after[0] -eq 3 -and $after[1] -ceq \"]\") { return ,$list }\n            throw \"not valid JSON\"\n        }\n    }\n    throw \"not valid JSON\"\n}\n\n# The bytes Python's json.dumps(sort_keys=True, separators=(\",\", \":\")) writes: keys sorted,\n# no spaces, each character outside printable ASCII written as \\uXXXX.\nfunction canonical($value, [string]$skip) {\n    $sb = New-Object Text.StringBuilder\n    write_json $sb $value $skip\n    return $sb.ToString()\n}\n\nfunction write_json([Text.StringBuilder]$sb, $value, [string]$skip) {\n    if ($null -eq $value) { [void]$sb.Append(\"null\"); return }\n    if ($value -is [bool]) {\n        if ($value) { [void]$sb.Append(\"true\") } else { [void]$sb.Append(\"false\") }\n        return\n    }\n    if ($value -is [string]) { write_string $sb $value; return }\n    if ($value -is [hashtable]) { [void]$sb.Append($value.json); return }\n    if ($value -is [Collections.Generic.List[object]]) {\n        [void]$sb.Append(\"[\")\n        for ($i = 0; $i -lt $value.Count; $i++) {\n            if ($i -gt 0) { [void]$sb.Append(\",\") }\n            write_json $sb $value[$i] \"\"\n        }\n        [void]$sb.Append(\"]\")\n        return\n    }\n    $keys = [string[]]@($value.Keys | Where-Object { -not ($skip -and $_ -ceq $skip) })\n    [Array]::Sort($keys, [StringComparer]::Ordinal)\n    [void]$sb.Append(\"{\")\n    for ($i = 0; $i -lt $keys.Count; $i++) {\n        if ($i -gt 0) { [void]$sb.Append(\",\") }\n        write_string $sb $keys[$i]\n        [void]$sb.Append(\":\")\n        write_json $sb $value[$keys[$i]] \"\"\n    }\n    [void]$sb.Append(\"}\")\n}\n\nfunction write_string([Text.StringBuilder]$sb, [string]$text) {\n    [void]$sb.Append('\"')\n    if ([regex]::IsMatch($text, '^[\\x20\\x21\\x23-\\x5b\\x5d-\\x7e]*$')) {\n        [void]$sb.Append($text)\n    } else {\n        foreach ($c in $text.ToCharArray()) {\n            $n = [int]$c\n            if ($n -eq 34) { [void]$sb.Append('\\\"') }\n            elseif ($n -eq 92) { [void]$sb.Append('\\\\') }\n            elseif ($n -ge 32 -and $n -le 126) { [void]$sb.Append($c) }\n            elseif ($n -eq 8) { [void]$sb.Append('\\b') }\n            elseif ($n -eq 12) { [void]$sb.Append('\\f') }\n            elseif ($n -eq 10) { [void]$sb.Append('\\n') }\n            elseif ($n -eq 13) { [void]$sb.Append('\\r') }\n            elseif ($n -eq 9) { [void]$sb.Append('\\t') }\n            else { [void]$sb.Append('\\u' + $n.ToString(\"x4\", $INVARIANT)) }\n        }\n    }\n    [void]$sb.Append('\"')\n}\n\nfunction field($object, [string]$name) {\n    if ($object -is [Collections.Generic.Dictionary[string, object]] -and $object.ContainsKey($name)) { return ,($object[$name]) }\n    return $null\n}\n\nfunction items($object, [string]$name) {\n    $value = field $object $name\n    if ($value -is [Collections.Generic.List[object]]) { return ,$value }\n    return ,(new_list)\n}\n\nif ($args.Count -gt 0) {\n    $given = [string]$args[0]\n} else {\n    [Console]::Out.Write(\"Drag the file here and press Return: \")\n    $line = [Console]::In.ReadLine()\n    if ($null -eq $line) { $given = \"\" } else { $given = given_path $line }\n}\n$data = $null\nif ($given) {\n    $full = $null\n    try { $full = [IO.Path]::Combine($HERE, $given) } catch { }\n    if ($null -eq $full -or -not [IO.File]::Exists($full)) { stop \"NOT FOUND: there is no file at $given\" }\n    $data = [IO.File]::ReadAllBytes($full)\n}\n\n[void][IO.Directory]::CreateDirectory($OUT_DIR)\n$raw = get \"$SITE/provenance/index.json\"\nsave \"index.json\" $raw\ntry {\n    $index = parse_json $raw\n} catch {\n    stop \"CANNOT FETCH: the site's index is not valid JSON\"\n}\n$latest = field $index \"latest\"\nif (-not (is_day $latest)) { stop \"NOT RECORDED YET: no manifest has been recorded yet, so there is nothing to check against.\" }\nif ($null -eq $data) {\n    say \"SITE COPY: no file given, so this checks the site's copy of $FILE\"\n    $data = get ($SITE + $FILE)\n}\n$digest = sha256 $data\n\n$manifests = [Collections.Generic.Dictionary[string, object]]::new([StringComparer]::Ordinal)\n\nfunction check([string]$date) {\n    $raw = get \"$SITE/provenance/manifests/$date.json\"\n    save \"manifest-$date.json\" $raw\n    try {\n        $manifest = parse_json $raw\n    } catch {\n        stop \"BAD MANIFEST: the $date manifest is not valid JSON\"\n    }\n    $body = utf8 (canonical $manifest \"manifest_sha256\")\n    $mh = sha256 $body\n    if (-not (same $mh (field $manifest \"manifest_sha256\"))) { stop \"BAD MANIFEST: the $date manifest does not hash to its own manifest_sha256\" }\n    $script:manifests[$date] = @{ manifest = $manifest; mh = $mh; body = $body }\n    return ,$manifest\n}\n\n$latest_manifest = check $latest\n$rows = new_list\nforeach ($a in (items $latest_manifest \"artifacts\")) {\n    if ($given) {\n        if (same (field $a \"sha256\") $digest) { $rows.Add($a) }\n    } elseif ((same (field $a \"path\") (\"public\" + $FILE)) -and (same (field $a \"sha256\") $digest)) {\n        $rows.Add($a)\n    }\n}\nif ($rows.Count -eq 0) { stop \"NO MATCH: this file is not one we recorded in the $latest manifest\" }\n$path = [string](field $rows[0] \"path\")\n$first = $null\nforeach ($a in (items $index \"latest_artifacts\")) {\n    if (same (field $a \"path\") $path) {\n        $first = field $a \"first_recorded\"\n        break\n    }\n}\nif (-not (is_day $first) -or [string]::CompareOrdinal($first, $latest) -gt 0) { $first = $latest }\n$days = [Collections.Generic.List[string]]::new()\n$walk = [datetime]::ParseExact($first, \"yyyy-MM-dd\", $INVARIANT)\nwhile ($walk -le [datetime]::ParseExact($latest, \"yyyy-MM-dd\", $INVARIANT)) {\n    $days.Add($walk.ToString(\"yyyy-MM-dd\", $INVARIANT))\n    $walk = $walk.AddDays(1)\n}\nforeach ($d in $days) {\n    if ($manifests.ContainsKey($d)) { $manifest = $manifests[$d].manifest } else { $manifest = check $d }\n    $recorded = $false\n    foreach ($a in (items $manifest \"artifacts\")) {\n        if ((same (field $a \"path\") $path) -and (same (field $a \"sha256\") $digest)) {\n            $recorded = $true\n            break\n        }\n    }\n    if (-not $recorded) { stop \"CHANGED: the $d manifest does not record these bytes for $($path.Substring(6))\" }\n}\n$d0 = $days[0]\n$h0 = $manifests[$d0].mh\nsave \"manifest.body\" $manifests[$d0].body\nsay \"MANIFEST: the $d0 manifest hashes to $h0\"\n$stamp = fetch \"$SITE/provenance/stamps/$d0.ots\"\nif ($stamp[0] -eq 200) {\n    save \"stamp.ots\" $stamp[1]\n    say \"STAMP: the $d0 manifest has a timestamp proof, saved as $OUT/stamp.ots\"\n} else {\n    say \"NO STAMP: the $d0 manifest has no timestamp proof yet\"\n}\n\nsave \"owner.allowed_signers\" (utf8 (($OWNER_KEYS -join \"`n\") + \"`n\"))\n$seals = items $index \"seals\"\n$weeks = [Collections.Generic.List[string]]::new()\nforeach ($s in $seals) {\n    $w = field $s \"week_ending\"\n    if ((is_day $w) -and [string]::CompareOrdinal($w, $d0) -ge 0) { $weeks.Add($w) }\n}\n\n# ssh-keygen reads the seal's exact bytes on its standard input, as the Python version hands it the file.\nfunction verify_seal([string]$week) {\n    $start = New-Object Diagnostics.ProcessStartInfo\n    $start.FileName = \"ssh-keygen\"\n    $start.Arguments = '-Y verify -f \"' + (Join-Path $OUT \"owner.allowed_signers\") + '\" -I orbyt-owner -n orbyt-provenance -s \"' + (Join-Path $OUT \"seal-$week.json.sig\") + '\"'\n    $start.WorkingDirectory = $HERE\n    $start.UseShellExecute = $false\n    $start.RedirectStandardInput = $true\n    $start.RedirectStandardOutput = $true\n    $start.RedirectStandardError = $true\n    try {\n        $process = [Diagnostics.Process]::Start($start)\n    } catch {\n        stop \"CANNOT FETCH: ssh-keygen is needed to check the seal, and it was not found\"\n    }\n    $stdout = $process.StandardOutput.ReadToEndAsync()\n    $stderr = $process.StandardError.ReadToEndAsync()\n    $bytes = [IO.File]::ReadAllBytes((Join-Path $OUT_DIR \"seal-$week.json\"))\n    try {\n        $process.StandardInput.BaseStream.Write($bytes, 0, $bytes.Length)\n        $process.StandardInput.Close()\n    } catch { }\n    $process.WaitForExit()\n    return @{ code = $process.ExitCode; text = $stdout.Result + $stderr.Result }\n}\n\nif ($seals.Count -eq 0) {\n    say \"NO SEAL YET: the owner has not signed a weekly seal yet\"\n} else {\n    $sealed = $null\n    foreach ($w in $weeks) {\n        save \"seal-$w.json\" (get \"$SITE/provenance/seals/$w.json\")\n        save \"seal-$w.json.sig\" (get \"$SITE/provenance/seals/$w.json.sig\")\n        $said = verify_seal $w\n        if ($said.code -ne 0) { stop \"BAD SEAL: the seal for the week ending $w does not verify against the owner key in this command\" }\n        $seal = parse_json ([IO.File]::ReadAllBytes((Join-Path $OUT_DIR \"seal-$w.json\")))\n        foreach ($entry in (items $seal \"manifests\")) {\n            $date = field $entry \"date\"\n            if (($date -is [string]) -and $manifests.ContainsKey($date) -and -not (same (field $entry \"manifest_sha256\") $manifests[$date].mh)) {\n                stop \"REWRITTEN: the seal for the week ending $w names a different $date manifest\"\n            }\n            if ((same $date $d0) -and (same (field $entry \"manifest_sha256\") $h0)) {\n                $key = [regex]::Match($said.text, ' key (SHA256:\\S+)')\n                $sealed = @($w, $key.Groups[1].Value)\n            }\n        }\n    }\n    if ($null -ne $sealed) {\n        say \"SEALED: the owner's seal for the week ending $($sealed[0]) names the $d0 manifest, signed by key $($sealed[1])\"\n    } else {\n        say \"NOT YET SEALED: no seal names the $d0 manifest yet\"\n    }\n}\n\n$copies = [Collections.Generic.List[string[]]]::new()\n$copies.Add([string[]]@(\"owner.allowed_signers\", \"owner.allowed_signers\"))\nforeach ($d in $days) { $copies.Add([string[]]@(\"manifests/$d.json\", \"manifest-$d.json\")) }\nif ($seals.Count -gt 0) {\n    foreach ($w in $weeks) {\n        foreach ($x in @(\"json\", \"json.sig\")) { $copies.Add([string[]]@(\"seals/$w.$x\", \"seal-$w.$x\")) }\n    }\n}\n$missing = $null\nforeach ($copy in $copies) {\n    $copy_response = fetch \"$GITHUB/$($copy[0])\"\n    if ($copy_response[0] -ne 200) {\n        if ($null -eq $missing) { $missing = $copy[0] }\n        continue\n    }\n    $local = [IO.File]::ReadAllBytes((Join-Path $OUT_DIR $copy[1]))\n    if ([Convert]::ToBase64String($local) -cne [Convert]::ToBase64String([byte[]]$copy_response[1])) {\n        stop \"GITHUB DIFFERS: the GitHub copy of $($copy[0]) is not what this command or this site holds\"\n    }\n}\nif ($null -ne $missing) {\n    say \"NOT ON GITHUB YET: the GitHub copy of $missing could not be read, so not everything was compared\"\n} else {\n    say \"GITHUB: the GitHub copies of the owner key, the manifests and the seals are the same files\"\n}\nsay \"MATCH: $($path.Substring(6)) has the bytes first recorded on $d0, unchanged through $latest, sha256 $digest\"\n",
      "url": "https://www.orbytlabs.ai/provenance/verify.ps1"
    },
    {
      "bytes": 8077,
      "label": "Python",
      "name": "verify.py",
      "run": "python3 verify.py",
      "sha256": "7383a14b6c8fec7954c528cf2db6c648ed7dffbab86559b8f91c5ca84b1c45e4",
      "text": "#!/usr/bin/env python3\n# Check a file against the Orbyt Labs provenance record.\n# https://www.orbytlabs.ai/provenance\n# Python 3, standard library only. The weekly seal is checked with ssh-keygen.\n# It only reads from the site and from GitHub, and writes what it downloads to ./orbyt-provenance.\n# Usage: python3 verify.py [file]   (with no file it asks; press Return to check the site's copy)\nimport datetime\nimport hashlib\nimport json\nimport os\nimport re\nimport subprocess\nimport sys\nimport urllib.error\nimport urllib.request\n\nSITE = \"https://www.orbytlabs.ai\"\nGITHUB = \"https://raw.githubusercontent.com/orbytlabs-ai/ai-agent-research/main/provenance\"\nFILE = \"/research/agent-leadership-governance/agent-leadership-governance.pdf\"\nOUT = \"orbyt-provenance\"\nOWNER_KEYS = [\n    'orbyt-owner namespaces=\"orbyt-provenance\" ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJMl7pELNGVsAUl/c1J2pe9uQ/VKmoHFZ8RzRTSRLumlI2jssJPoL4cPTbxXHKxQgYgGuG3HJqQVMscsCFD4lZA=',\n    'orbyt-owner namespaces=\"orbyt-provenance\" ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDel/a+TT40HU7lP6NUIbSysF/u+sOpQWRbGM7Z5SC5G',\n]\nDAY = re.compile(r\"^\\d{4}-\\d{2}-\\d{2}$\")\nsys.stdout.reconfigure(line_buffering=True)\n\n\ndef stop(message):\n    print(message)\n    sys.exit(1)\n\n\ndef fetch(url):\n    try:\n        with urllib.request.urlopen(url, timeout=60) as response:\n            return response.status, response.read()\n    except urllib.error.HTTPError as error:\n        return error.code, b\"\"\n    except Exception:\n        return None, b\"\"\n\n\ndef get(url):\n    status, body = fetch(url)\n    if status != 200:\n        stop(f\"CANNOT FETCH: {url}\")\n    return body\n\n\ndef save(name, data):\n    with open(os.path.join(OUT, name), \"wb\") as f:\n        f.write(data)\n\n\ndef sha256(data):\n    return hashlib.sha256(data).hexdigest()\n\n\ndef given_path(text):\n    text = text.strip()\n    if len(text) >= 2 and text[0] == text[-1] == \"'\":\n        return text[1:-1].replace(\"'\\\\''\", \"'\")\n    if len(text) >= 2 and text[0] == text[-1] == '\"':\n        return text[1:-1]\n    return text if os.name == \"nt\" else re.sub(r\"\\\\(.)\", r\"\\1\", text)\n\n\nif len(sys.argv) > 1:\n    given = sys.argv[1]\nelse:\n    try:\n        given = given_path(input(\"Drag the file here and press Return: \"))\n    except EOFError:\n        given = \"\"\ndata = None\nif given:\n    if not os.path.isfile(given):\n        stop(f\"NOT FOUND: there is no file at {given}\")\n    with open(given, \"rb\") as f:\n        data = f.read()\n\nos.makedirs(OUT, exist_ok=True)\nraw = get(SITE + \"/provenance/index.json\")\nsave(\"index.json\", raw)\ntry:\n    index = json.loads(raw)\nexcept ValueError:\n    stop(\"CANNOT FETCH: the site's index is not valid JSON\")\nlatest = index.get(\"latest\")\nif not isinstance(latest, str) or not DAY.match(latest):\n    stop(\"NOT RECORDED YET: no manifest has been recorded yet, so there is nothing to check against.\")\nif data is None:\n    print(f\"SITE COPY: no file given, so this checks the site's copy of {FILE}\")\n    data = get(SITE + FILE)\ndigest = sha256(data)\n\nmanifests = {}\n\n\ndef check(day):\n    raw = get(f\"{SITE}/provenance/manifests/{day}.json\")\n    save(f\"manifest-{day}.json\", raw)\n    try:\n        manifest = json.loads(raw)\n    except ValueError:\n        stop(f\"BAD MANIFEST: the {day} manifest is not valid JSON\")\n    body = json.dumps({k: v for k, v in manifest.items() if k != \"manifest_sha256\"}, sort_keys=True, separators=(\",\", \":\")).encode()\n    mh = sha256(body)\n    if mh != manifest.get(\"manifest_sha256\"):\n        stop(f\"BAD MANIFEST: the {day} manifest does not hash to its own manifest_sha256\")\n    manifests[day] = (manifest, mh, raw, body)\n    return manifest\n\n\nlatest_manifest = check(latest)\nif given:\n    rows = [a for a in latest_manifest.get(\"artifacts\", []) if a.get(\"sha256\") == digest]\nelse:\n    rows = [a for a in latest_manifest.get(\"artifacts\", []) if a.get(\"path\") == \"public\" + FILE and a.get(\"sha256\") == digest]\nif not rows:\n    stop(f\"NO MATCH: this file is not one we recorded in the {latest} manifest\")\npath = rows[0][\"path\"]\nfirst = next((a.get(\"first_recorded\") for a in index.get(\"latest_artifacts\", []) if a.get(\"path\") == path), None)\nif not isinstance(first, str) or not DAY.match(first) or first > latest:\n    first = latest\ndays = []\nday = datetime.date.fromisoformat(first)\nwhile day <= datetime.date.fromisoformat(latest):\n    days.append(day.isoformat())\n    day += datetime.timedelta(days=1)\nfor d in days:\n    manifest = manifests[d][0] if d in manifests else check(d)\n    if not any(a.get(\"path\") == path and a.get(\"sha256\") == digest for a in manifest.get(\"artifacts\", [])):\n        stop(f\"CHANGED: the {d} manifest does not record these bytes for {path[len('public'):]}\")\nd0 = days[0]\nh0 = manifests[d0][1]\nsave(\"manifest.body\", manifests[d0][3])\nprint(f\"MANIFEST: the {d0} manifest hashes to {h0}\")\nstatus, stamp = fetch(f\"{SITE}/provenance/stamps/{d0}.ots\")\nif status == 200:\n    save(\"stamp.ots\", stamp)\n    print(f\"STAMP: the {d0} manifest has a timestamp proof, saved as {OUT}/stamp.ots\")\nelse:\n    print(f\"NO STAMP: the {d0} manifest has no timestamp proof yet\")\n\nsave(\"owner.allowed_signers\", (\"\\n\".join(OWNER_KEYS) + \"\\n\").encode())\nseals = index.get(\"seals\") or []\nweeks = [s.get(\"week_ending\") for s in seals if isinstance(s.get(\"week_ending\"), str) and DAY.match(s[\"week_ending\"]) and s[\"week_ending\"] >= d0]\nif not seals:\n    print(\"NO SEAL YET: the owner has not signed a weekly seal yet\")\nelse:\n    sealed = None\n    for w in weeks:\n        save(f\"seal-{w}.json\", get(f\"{SITE}/provenance/seals/{w}.json\"))\n        save(f\"seal-{w}.json.sig\", get(f\"{SITE}/provenance/seals/{w}.json.sig\"))\n        try:\n            with open(os.path.join(OUT, f\"seal-{w}.json\"), \"rb\") as seal_file:\n                said = subprocess.run(\n                    [\"ssh-keygen\", \"-Y\", \"verify\", \"-f\", os.path.join(OUT, \"owner.allowed_signers\"), \"-I\", \"orbyt-owner\",\n                     \"-n\", \"orbyt-provenance\", \"-s\", os.path.join(OUT, f\"seal-{w}.json.sig\")],\n                    stdin=seal_file, capture_output=True, text=True,\n                )\n        except FileNotFoundError:\n            stop(\"CANNOT FETCH: ssh-keygen is needed to check the seal, and it was not found\")\n        if said.returncode != 0:\n            stop(f\"BAD SEAL: the seal for the week ending {w} does not verify against the owner key in this command\")\n        with open(os.path.join(OUT, f\"seal-{w}.json\"), \"rb\") as seal_file:\n            seal = json.loads(seal_file.read())\n        for entry in seal.get(\"manifests\", []):\n            if entry.get(\"date\") in manifests and entry.get(\"manifest_sha256\") != manifests[entry[\"date\"]][1]:\n                stop(f\"REWRITTEN: the seal for the week ending {w} names a different {entry['date']} manifest\")\n            if entry.get(\"date\") == d0 and entry.get(\"manifest_sha256\") == h0:\n                sealed = (w, (re.search(r\" key (SHA256:\\S+)\", said.stdout + said.stderr) or [None, \"\"])[1])\n    if sealed:\n        print(f\"SEALED: the owner's seal for the week ending {sealed[0]} names the {d0} manifest, signed by key {sealed[1]}\")\n    else:\n        print(f\"NOT YET SEALED: no seal names the {d0} manifest yet\")\n\ncopies = [(\"owner.allowed_signers\", \"owner.allowed_signers\")]\ncopies += [(f\"manifests/{d}.json\", f\"manifest-{d}.json\") for d in days]\ncopies += [(f\"seals/{w}.{x}\", f\"seal-{w}.{x}\") for w in (weeks if seals else []) for x in (\"json\", \"json.sig\")]\nmissing = None\nfor remote, local in copies:\n    status, body = fetch(f\"{GITHUB}/{remote}\")\n    if status != 200:\n        missing = missing or remote\n        continue\n    with open(os.path.join(OUT, local), \"rb\") as f:\n        if f.read() != body:\n            stop(f\"GITHUB DIFFERS: the GitHub copy of {remote} is not what this command or this site holds\")\nif missing:\n    print(f\"NOT ON GITHUB YET: the GitHub copy of {missing} could not be read, so not everything was compared\")\nelse:\n    print(\"GITHUB: the GitHub copies of the owner key, the manifests and the seals are the same files\")\nprint(f\"MATCH: {path[len('public'):]} has the bytes first recorded on {d0}, unchanged through {latest}, sha256 {digest}\")\n",
      "url": "https://www.orbytlabs.ai/provenance/verify.py"
    },
    {
      "bytes": 8663,
      "label": "Node",
      "name": "verify.mjs",
      "run": "node verify.mjs",
      "sha256": "27dcab65fc9590ad9c6b13bf4b229d3fe82b8127171dd0f38c0e7e7cbc5e6bb0",
      "text": "// Check a file against the Orbyt Labs provenance record.\n// https://www.orbytlabs.ai/provenance\n// Node 18 or later, no packages. The weekly seal is checked with ssh-keygen.\n// It only reads from the site and from GitHub, and writes what it downloads to ./orbyt-provenance.\n// Usage: node verify.mjs [file]   (with no file it asks; press Return to check the site's copy)\nimport { spawnSync } from \"node:child_process\";\nimport { createHash } from \"node:crypto\";\nimport { existsSync, mkdirSync, readFileSync, statSync, writeFileSync, writeSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { createInterface } from \"node:readline\";\n\nconst SITE = \"https://www.orbytlabs.ai\";\nconst GITHUB = \"https://raw.githubusercontent.com/orbytlabs-ai/ai-agent-research/main/provenance\";\nconst FILE = \"/research/agent-leadership-governance/agent-leadership-governance.pdf\";\nconst OUT = \"orbyt-provenance\";\nconst OWNER_KEYS = [\n  'orbyt-owner namespaces=\"orbyt-provenance\" ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJMl7pELNGVsAUl/c1J2pe9uQ/VKmoHFZ8RzRTSRLumlI2jssJPoL4cPTbxXHKxQgYgGuG3HJqQVMscsCFD4lZA=',\n  'orbyt-owner namespaces=\"orbyt-provenance\" ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDel/a+TT40HU7lP6NUIbSysF/u+sOpQWRbGM7Z5SC5G',\n];\nconst DAY = /^\\d{4}-\\d{2}-\\d{2}$/;\n\n// Written straight to the terminal, so a line is never lost when the check stops early.\nconst say = (message) => writeSync(1, `${message}\\n`);\nfunction stop(message) {\n  say(message);\n  process.exit(1);\n}\n\nasync function fetchBytes(url) {\n  try {\n    const response = await fetch(url);\n    return { status: response.status, body: Buffer.from(await response.arrayBuffer()) };\n  } catch {\n    return { status: null, body: Buffer.alloc(0) };\n  }\n}\nasync function get(url) {\n  const { status, body } = await fetchBytes(url);\n  if (status !== 200) stop(`CANNOT FETCH: ${url}`);\n  return body;\n}\nconst save = (name, data) => writeFileSync(join(OUT, name), data);\nconst sha256 = (data) => createHash(\"sha256\").update(data).digest(\"hex\");\nfunction canonical(value) {\n  if (Array.isArray(value)) return `[${value.map(canonical).join(\",\")}]`;\n  if (value !== null && typeof value === \"object\") {\n    return `{${Object.keys(value).sort().map((key) => `${JSON.stringify(key)}:${canonical(value[key])}`).join(\",\")}}`;\n  }\n  return JSON.stringify(value);\n}\nfunction givenPath(text) {\n  text = text.trim();\n  if (text.length >= 2 && text[0] === \"'\" && text.at(-1) === \"'\") return text.slice(1, -1).split(\"'\\\\''\").join(\"'\");\n  if (text.length >= 2 && text[0] === '\"' && text.at(-1) === '\"') return text.slice(1, -1);\n  return process.platform === \"win32\" ? text : text.replace(/\\\\(.)/g, \"$1\");\n}\nfunction ask(question) {\n  return new Promise((resolve) => {\n    const rl = createInterface({ input: process.stdin });\n    let answered = false;\n    writeSync(1, question);\n    rl.on(\"line\", (line) => {\n      answered = true;\n      rl.close();\n      resolve(line);\n    });\n    rl.on(\"close\", () => {\n      if (!answered) resolve(\"\");\n    });\n  });\n}\n\nconst given = process.argv[2] ?? givenPath(await ask(\"Drag the file here and press Return: \"));\nlet data = null;\nif (given) {\n  if (!existsSync(given) || !statSync(given).isFile()) stop(`NOT FOUND: there is no file at ${given}`);\n  data = readFileSync(given);\n}\n\nmkdirSync(OUT, { recursive: true });\nconst indexRaw = await get(`${SITE}/provenance/index.json`);\nsave(\"index.json\", indexRaw);\nlet index;\ntry {\n  index = JSON.parse(indexRaw.toString(\"utf8\"));\n} catch {\n  stop(\"CANNOT FETCH: the site's index is not valid JSON\");\n}\nconst latest = index.latest;\nif (typeof latest !== \"string\" || !DAY.test(latest)) stop(\"NOT RECORDED YET: no manifest has been recorded yet, so there is nothing to check against.\");\nif (data === null) {\n  say(`SITE COPY: no file given, so this checks the site's copy of ${FILE}`);\n  data = await get(SITE + FILE);\n}\nconst digest = sha256(data);\n\nconst manifests = new Map();\nasync function check(day) {\n  const raw = await get(`${SITE}/provenance/manifests/${day}.json`);\n  save(`manifest-${day}.json`, raw);\n  let manifest;\n  try {\n    manifest = JSON.parse(raw.toString(\"utf8\"));\n  } catch {\n    stop(`BAD MANIFEST: the ${day} manifest is not valid JSON`);\n  }\n  const { manifest_sha256: recorded, ...rest } = manifest;\n  const body = Buffer.from(canonical(rest), \"utf8\");\n  const mh = sha256(body);\n  if (mh !== recorded) stop(`BAD MANIFEST: the ${day} manifest does not hash to its own manifest_sha256`);\n  manifests.set(day, { manifest, mh, body });\n  return manifest;\n}\n\nconst latestManifest = await check(latest);\nconst rows = (latestManifest.artifacts ?? []).filter((a) => a.sha256 === digest && (given || a.path === `public${FILE}`));\nif (rows.length === 0) stop(`NO MATCH: this file is not one we recorded in the ${latest} manifest`);\nconst path = rows[0].path;\nlet first = (index.latest_artifacts ?? []).find((a) => a.path === path)?.first_recorded;\nif (typeof first !== \"string\" || !DAY.test(first) || first > latest) first = latest;\nconst days = [];\nfor (let t = Date.parse(`${first}T00:00:00Z`); t <= Date.parse(`${latest}T00:00:00Z`); t += 86_400_000) days.push(new Date(t).toISOString().slice(0, 10));\nfor (const d of days) {\n  const manifest = manifests.has(d) ? manifests.get(d).manifest : await check(d);\n  if (!(manifest.artifacts ?? []).some((a) => a.path === path && a.sha256 === digest)) {\n    stop(`CHANGED: the ${d} manifest does not record these bytes for ${path.slice(\"public\".length)}`);\n  }\n}\nconst d0 = days[0];\nconst h0 = manifests.get(d0).mh;\nsave(\"manifest.body\", manifests.get(d0).body);\nsay(`MANIFEST: the ${d0} manifest hashes to ${h0}`);\nconst stamp = await fetchBytes(`${SITE}/provenance/stamps/${d0}.ots`);\nif (stamp.status === 200) {\n  save(\"stamp.ots\", stamp.body);\n  say(`STAMP: the ${d0} manifest has a timestamp proof, saved as ${OUT}/stamp.ots`);\n} else {\n  say(`NO STAMP: the ${d0} manifest has no timestamp proof yet`);\n}\n\nsave(\"owner.allowed_signers\", `${OWNER_KEYS.join(\"\\n\")}\\n`);\nconst seals = Array.isArray(index.seals) ? index.seals : [];\nconst weeks = seals.map((s) => s.week_ending).filter((w) => typeof w === \"string\" && DAY.test(w) && w >= d0);\nif (seals.length === 0) {\n  say(\"NO SEAL YET: the owner has not signed a weekly seal yet\");\n} else {\n  let sealed = null;\n  for (const w of weeks) {\n    save(`seal-${w}.json`, await get(`${SITE}/provenance/seals/${w}.json`));\n    save(`seal-${w}.json.sig`, await get(`${SITE}/provenance/seals/${w}.json.sig`));\n    const said = spawnSync(\n      \"ssh-keygen\",\n      [\"-Y\", \"verify\", \"-f\", join(OUT, \"owner.allowed_signers\"), \"-I\", \"orbyt-owner\", \"-n\", \"orbyt-provenance\", \"-s\", join(OUT, `seal-${w}.json.sig`)],\n      { input: readFileSync(join(OUT, `seal-${w}.json`)), encoding: \"utf8\" },\n    );\n    if (said.error) stop(\"CANNOT FETCH: ssh-keygen is needed to check the seal, and it was not found\");\n    if (said.status !== 0) stop(`BAD SEAL: the seal for the week ending ${w} does not verify against the owner key in this command`);\n    const seal = JSON.parse(readFileSync(join(OUT, `seal-${w}.json`), \"utf8\"));\n    for (const entry of seal.manifests ?? []) {\n      if (manifests.has(entry.date) && entry.manifest_sha256 !== manifests.get(entry.date).mh) {\n        stop(`REWRITTEN: the seal for the week ending ${w} names a different ${entry.date} manifest`);\n      }\n      if (entry.date === d0 && entry.manifest_sha256 === h0) sealed = { w, key: (said.stdout + said.stderr).match(/ key (SHA256:\\S+)/)?.[1] ?? \"\" };\n    }\n  }\n  if (sealed) say(`SEALED: the owner's seal for the week ending ${sealed.w} names the ${d0} manifest, signed by key ${sealed.key}`);\n  else say(`NOT YET SEALED: no seal names the ${d0} manifest yet`);\n}\n\nconst copies = [[\"owner.allowed_signers\", \"owner.allowed_signers\"], ...days.map((d) => [`manifests/${d}.json`, `manifest-${d}.json`])];\nif (seals.length) for (const w of weeks) for (const x of [\"json\", \"json.sig\"]) copies.push([`seals/${w}.${x}`, `seal-${w}.${x}`]);\nlet missing = null;\nfor (const [remote, local] of copies) {\n  const { status, body } = await fetchBytes(`${GITHUB}/${remote}`);\n  if (status !== 200) {\n    missing ??= remote;\n    continue;\n  }\n  if (!readFileSync(join(OUT, local)).equals(body)) stop(`GITHUB DIFFERS: the GitHub copy of ${remote} is not what this command or this site holds`);\n}\nif (missing) say(`NOT ON GITHUB YET: the GitHub copy of ${missing} could not be read, so not everything was compared`);\nelse say(\"GITHUB: the GitHub copies of the owner key, the manifests and the seals are the same files\");\nsay(`MATCH: ${path.slice(\"public\".length)} has the bytes first recorded on ${d0}, unchanged through ${latest}, sha256 ${digest}`);\n",
      "url": "https://www.orbytlabs.ai/provenance/verify.mjs"
    }
  ]
}
