{
  "execution_mode": "offline-scripted-controller-limits",
  "model_called": false,
  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
  "question": "Will write_text replace the contents of an existing file?",
  "version": "3.12",
  "cases": [
    {
      "case_id": "within_limits",
      "policy_terminal_status": "completed",
      "policy_reason": "configured_context_marker_found",
      "result": {
        "controller_status": "completed",
        "terminal_reason": "policy_complete",
        "limits": {
          "max_steps": 6,
          "max_searches": 2,
          "max_reads": 2,
          "max_source_bytes": 4096
        },
        "usage": {
          "steps": 4,
          "searches": 2,
          "reads": 2,
          "reserved_source_bytes": 378,
          "delivered_source_bytes": 378
        },
        "trace": [
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "text",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            },
            "usage_after": {
              "steps": 1,
              "searches": 1,
              "reads": 0,
              "reserved_source_bytes": 0,
              "delivered_source_bytes": 0
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                }
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 154,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            },
            "usage_after": {
              "steps": 2,
              "searches": 1,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "overwritten",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "query": "overwritten",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              ]
            },
            "usage_after": {
              "steps": 3,
              "searches": 2,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 224,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
              "source_id": "path-write",
              "version": "3.12",
              "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
              "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
              "byte_count": 224,
              "native_score": -0.7992166451067193,
              "rank": 1,
              "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75",
              "text": "Path.write_text(data, encoding=None, errors=None, newline=None) writes text to a file and closes it. Set encoding=\"utf-8\" to select UTF-8. An existing file is overwritten. The method returns the number of characters written.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.write_text",
              "read_request_id": "a9ec642e4ed3206ac85e5dd03d4de9ff57de3167e134079eafe4a31de23cec67",
              "result_sha256": "662c96d3b972224ac1549f9a6c3ad495b3ed885b6db477d52aeb7527ec1dbbb7"
            },
            "usage_after": {
              "steps": 4,
              "searches": 2,
              "reads": 2,
              "reserved_source_bytes": 378,
              "delivered_source_bytes": 378
            }
          }
        ],
        "observations": [
          {
            "tool": "search",
            "arguments": {
              "query": "text",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            }
          },
          {
            "tool": "read",
            "arguments": {
              "handle": {
                "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                "source_id": "path-read",
                "version": "3.12",
                "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "start_line": 1,
                "end_line": 1,
                "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "byte_count": 154,
                "native_score": -1.4220532319391636e-06,
                "rank": 1,
                "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
              }
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            }
          },
          {
            "tool": "search",
            "arguments": {
              "query": "overwritten",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "query": "overwritten",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              ]
            }
          },
          {
            "tool": "read",
            "arguments": {
              "handle": {
                "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                "source_id": "path-write",
                "version": "3.12",
                "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                "start_line": 1,
                "end_line": 1,
                "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                "byte_count": 224,
                "native_score": -0.7992166451067193,
                "rank": 1,
                "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
              }
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
              "source_id": "path-write",
              "version": "3.12",
              "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
              "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
              "byte_count": 224,
              "native_score": -0.7992166451067193,
              "rank": 1,
              "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75",
              "text": "Path.write_text(data, encoding=None, errors=None, newline=None) writes text to a file and closes it. Set encoding=\"utf-8\" to select UTF-8. An existing file is overwritten. The method returns the number of characters written.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.write_text",
              "read_request_id": "a9ec642e4ed3206ac85e5dd03d4de9ff57de3167e134079eafe4a31de23cec67",
              "result_sha256": "662c96d3b972224ac1549f9a6c3ad495b3ed885b6db477d52aeb7527ec1dbbb7"
            }
          }
        ],
        "scope": "Offline scripted tool policy. Corpus initialization is outside action counters. Source bytes are reserved read-text UTF-8 bytes, not disk I/O or model tokens."
      }
    },
    {
      "case_id": "step_limit",
      "policy_terminal_status": null,
      "policy_reason": null,
      "result": {
        "controller_status": "limited",
        "terminal_reason": "max_steps",
        "limits": {
          "max_steps": 2,
          "max_searches": 2,
          "max_reads": 2,
          "max_source_bytes": 4096
        },
        "usage": {
          "steps": 2,
          "searches": 1,
          "reads": 1,
          "reserved_source_bytes": 154,
          "delivered_source_bytes": 154
        },
        "trace": [
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "text",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            },
            "usage_after": {
              "steps": 1,
              "searches": 1,
              "reads": 0,
              "reserved_source_bytes": 0,
              "delivered_source_bytes": 0
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                }
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 154,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            },
            "usage_after": {
              "steps": 2,
              "searches": 1,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "overwritten",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "denied",
            "reason": "max_steps",
            "invoked": false,
            "preflight_source_bytes": 0
          }
        ],
        "observations": [
          {
            "tool": "search",
            "arguments": {
              "query": "text",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            }
          },
          {
            "tool": "read",
            "arguments": {
              "handle": {
                "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                "source_id": "path-read",
                "version": "3.12",
                "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "start_line": 1,
                "end_line": 1,
                "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "byte_count": 154,
                "native_score": -1.4220532319391636e-06,
                "rank": 1,
                "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
              }
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            }
          }
        ],
        "scope": "Offline scripted tool policy. Corpus initialization is outside action counters. Source bytes are reserved read-text UTF-8 bytes, not disk I/O or model tokens."
      }
    },
    {
      "case_id": "search_limit",
      "policy_terminal_status": null,
      "policy_reason": null,
      "result": {
        "controller_status": "limited",
        "terminal_reason": "max_searches",
        "limits": {
          "max_steps": 6,
          "max_searches": 1,
          "max_reads": 2,
          "max_source_bytes": 4096
        },
        "usage": {
          "steps": 2,
          "searches": 1,
          "reads": 1,
          "reserved_source_bytes": 154,
          "delivered_source_bytes": 154
        },
        "trace": [
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "text",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            },
            "usage_after": {
              "steps": 1,
              "searches": 1,
              "reads": 0,
              "reserved_source_bytes": 0,
              "delivered_source_bytes": 0
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                }
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 154,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            },
            "usage_after": {
              "steps": 2,
              "searches": 1,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "overwritten",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "denied",
            "reason": "max_searches",
            "invoked": false,
            "preflight_source_bytes": 0
          }
        ],
        "observations": [
          {
            "tool": "search",
            "arguments": {
              "query": "text",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            }
          },
          {
            "tool": "read",
            "arguments": {
              "handle": {
                "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                "source_id": "path-read",
                "version": "3.12",
                "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "start_line": 1,
                "end_line": 1,
                "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "byte_count": 154,
                "native_score": -1.4220532319391636e-06,
                "rank": 1,
                "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
              }
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            }
          }
        ],
        "scope": "Offline scripted tool policy. Corpus initialization is outside action counters. Source bytes are reserved read-text UTF-8 bytes, not disk I/O or model tokens."
      }
    },
    {
      "case_id": "read_limit",
      "policy_terminal_status": null,
      "policy_reason": null,
      "result": {
        "controller_status": "limited",
        "terminal_reason": "max_reads",
        "limits": {
          "max_steps": 6,
          "max_searches": 2,
          "max_reads": 1,
          "max_source_bytes": 4096
        },
        "usage": {
          "steps": 3,
          "searches": 2,
          "reads": 1,
          "reserved_source_bytes": 154,
          "delivered_source_bytes": 154
        },
        "trace": [
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "text",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            },
            "usage_after": {
              "steps": 1,
              "searches": 1,
              "reads": 0,
              "reserved_source_bytes": 0,
              "delivered_source_bytes": 0
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                }
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 154,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            },
            "usage_after": {
              "steps": 2,
              "searches": 1,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "overwritten",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "query": "overwritten",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              ]
            },
            "usage_after": {
              "steps": 3,
              "searches": 2,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              }
            },
            "decision": "denied",
            "reason": "max_reads",
            "invoked": false,
            "preflight_source_bytes": 224
          }
        ],
        "observations": [
          {
            "tool": "search",
            "arguments": {
              "query": "text",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            }
          },
          {
            "tool": "read",
            "arguments": {
              "handle": {
                "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                "source_id": "path-read",
                "version": "3.12",
                "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "start_line": 1,
                "end_line": 1,
                "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "byte_count": 154,
                "native_score": -1.4220532319391636e-06,
                "rank": 1,
                "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
              }
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            }
          },
          {
            "tool": "search",
            "arguments": {
              "query": "overwritten",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "query": "overwritten",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              ]
            }
          }
        ],
        "scope": "Offline scripted tool policy. Corpus initialization is outside action counters. Source bytes are reserved read-text UTF-8 bytes, not disk I/O or model tokens."
      }
    },
    {
      "case_id": "source_byte_limit",
      "policy_terminal_status": null,
      "policy_reason": null,
      "result": {
        "controller_status": "limited",
        "terminal_reason": "max_source_bytes",
        "limits": {
          "max_steps": 6,
          "max_searches": 2,
          "max_reads": 2,
          "max_source_bytes": 200
        },
        "usage": {
          "steps": 3,
          "searches": 2,
          "reads": 1,
          "reserved_source_bytes": 154,
          "delivered_source_bytes": 154
        },
        "trace": [
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "text",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            },
            "usage_after": {
              "steps": 1,
              "searches": 1,
              "reads": 0,
              "reserved_source_bytes": 0,
              "delivered_source_bytes": 0
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                }
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 154,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            },
            "usage_after": {
              "steps": 2,
              "searches": 1,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "search",
              "arguments": {
                "query": "overwritten",
                "version": "3.12",
                "k": 2
              }
            },
            "decision": "executed",
            "invoked": true,
            "reserved_source_bytes": 0,
            "status": "succeeded",
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "query": "overwritten",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              ]
            },
            "usage_after": {
              "steps": 3,
              "searches": 2,
              "reads": 1,
              "reserved_source_bytes": 154,
              "delivered_source_bytes": 154
            }
          },
          {
            "action": {
              "tool": "read",
              "arguments": {
                "handle": {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              }
            },
            "decision": "denied",
            "reason": "max_source_bytes",
            "invoked": false,
            "preflight_source_bytes": 224
          }
        ],
        "observations": [
          {
            "tool": "search",
            "arguments": {
              "query": "text",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "query": "text",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                  "source_id": "path-read",
                  "version": "3.12",
                  "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                  "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                  "byte_count": 154,
                  "native_score": -1.4220532319391636e-06,
                  "rank": 1,
                  "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
                },
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -1.320388349514563e-06,
                  "rank": 2,
                  "read_token": "397d6f236743e576b50940b06d3df84a0712dc67157f5efdeb544448555729f1"
                }
              ]
            }
          },
          {
            "tool": "read",
            "arguments": {
              "handle": {
                "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
                "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
                "source_id": "path-read",
                "version": "3.12",
                "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
                "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "start_line": 1,
                "end_line": 1,
                "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
                "byte_count": 154,
                "native_score": -1.4220532319391636e-06,
                "rank": 1,
                "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124"
              }
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "3f33383e706e36449e22c380704d880d5e2b8a4b1f6b779b8aa54206e072ad5f",
              "passage_id": "c737db948e8111ae00e3442d8a22c80c876e43446dc1ee176ffe8ce142a41900",
              "source_id": "path-read",
              "version": "3.12",
              "document_revision": "b58385b9bf597a951c16c035653d639929924e53eae3e5ada255afd6ee1592f2",
              "source_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "start_line": 1,
              "end_line": 1,
              "text_sha256": "dc097ca63486ace45279f412ea266bf754fcd2f0b1153f5d763ce905dafbc2c0",
              "byte_count": 154,
              "native_score": -1.4220532319391636e-06,
              "rank": 1,
              "read_token": "72abbf5e0022ef780447ed8c2322b711cac8b4971d817a440bc02dfa28b07124",
              "text": "Path.read_text(encoding=None, errors=None) opens a file, returns its text as a string and closes the file. Set encoding=\"utf-8\" when reading a UTF-8 file.",
              "url": "https://docs.python.org/3.12/library/pathlib.html#pathlib.Path.read_text",
              "read_request_id": "b2ce4d1e809a197df6c864261264b583737b1f41c59f8a4b6e353911b84c5bfe",
              "result_sha256": "2d855cfa0b4f7e90c3711783b7779709f3b964760fd789d0d65b11f9b3604ac5"
            }
          },
          {
            "tool": "search",
            "arguments": {
              "query": "overwritten",
              "version": "3.12",
              "k": 2
            },
            "result": {
              "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
              "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
              "query": "overwritten",
              "version": "3.12",
              "k": 2,
              "results": [
                {
                  "corpus_id": "0615d22a3315e97c0a88c6c566c546877304f5a28a97e83f68dd36881d4bbd0e",
                  "search_request_id": "aeffc68efdee46b8d23c597f651143424c575c0c1a4699ab08a48734d011f127",
                  "passage_id": "c66643a4609c6ee157458bf4353f7446b9c6a200a3ef453846d6a18d5b5069a7",
                  "source_id": "path-write",
                  "version": "3.12",
                  "document_revision": "28c6349eaf80b629322edb310bb871dc45a04af9fad3b752bc75d12f0d7314e7",
                  "source_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "start_line": 1,
                  "end_line": 1,
                  "text_sha256": "a48b4b9f763cd6309ebe32af19c5a814adcf810c2259683da9f328ccee46948e",
                  "byte_count": 224,
                  "native_score": -0.7992166451067193,
                  "rank": 1,
                  "read_token": "08b866d8cf00533f3484aac4d78ac512bd4df8767c9ea11fbd2e817eeeb1dd75"
                }
              ]
            }
          }
        ],
        "scope": "Offline scripted tool policy. Corpus initialization is outside action counters. Source bytes are reserved read-text UTF-8 bytes, not disk I/O or model tokens."
      }
    }
  ],
  "controlled_tool_failure": {
    "scope": "deliberate fault after actual local search; not a reliability measurement",
    "result": {
      "controller_status": "failed",
      "terminal_reason": "RuntimeError: controlled_after_search_fault",
      "limits": {
        "max_steps": 6,
        "max_searches": 2,
        "max_reads": 2,
        "max_source_bytes": 4096
      },
      "usage": {
        "steps": 1,
        "searches": 1,
        "reads": 0,
        "reserved_source_bytes": 0,
        "delivered_source_bytes": 0
      },
      "trace": [
        {
          "action": {
            "tool": "search",
            "arguments": {
              "query": "text",
              "version": "3.12",
              "k": 2
            }
          },
          "decision": "executed",
          "invoked": true,
          "reserved_source_bytes": 0,
          "status": "failed",
          "reason": "RuntimeError: controlled_after_search_fault",
          "usage_after": {
            "steps": 1,
            "searches": 1,
            "reads": 0,
            "reserved_source_bytes": 0,
            "delivered_source_bytes": 0
          }
        }
      ],
      "observations": [],
      "scope": "Offline scripted tool policy. Corpus initialization is outside action counters. Source bytes are reserved read-text UTF-8 bytes, not disk I/O or model tokens."
    }
  },
  "limit": "Counts cover admitted tool attempts and validated read-text bytes. Corpus initialization, policy callback computation, wall time, model tokens and inference costs are outside this contract. No model agent or generated answer."
}
