{
  "schema_version": 1,
  "study_id": "zarr-strict-shards-20261023",
  "status": "research-candidate",
  "scope": {
    "implementation": "Zarr-Python 3.4.1",
    "format": 3,
    "store": "local directory",
    "shape": [
      8
    ],
    "inner_chunk_shape": [
      4
    ],
    "shard_shape": [
      8
    ],
    "dtype": "int32",
    "fill_value": -999,
    "field_data": false
  },
  "claims": [
    {
      "id": "store-key-rejection",
      "text": "An effective strict policy rejects a selected absent standalone chunk or whole shard in this experiment.",
      "type": "controlled-observation",
      "observations": "observations.json",
      "selector": {
        "state": "deleted",
        "strict": true,
        "selection": "full"
      },
      "expected": {
        "status": "error",
        "error_type": "ChunkNotFoundError"
      },
      "sources": [
        "core-v3",
        "runtime-guide",
        "zarr.core.array"
      ],
      "limits": "Not a completeness assertion for unselected regions."
    },
    {
      "id": "inner-empty-acceptance",
      "text": "An explicitly empty inner chunk of a present shard returns fill under an effective strict policy.",
      "type": "controlled-observation",
      "observations": "observations.json",
      "selector": {
        "layout": [
          "shard-start",
          "shard-end"
        ],
        "state": "sparse-tail",
        "strict": true,
        "selection": "full"
      },
      "expected": {
        "status": "ok",
        "values": [
          10,
          11,
          12,
          13,
          -999,
          -999,
          -999,
          -999
        ]
      },
      "sources": [
        "sharding-v1",
        "zarr.codecs.sharding"
      ],
      "limits": "Valid sparse representation, not evidence of a library defect."
    },
    {
      "id": "stale-valid-shard",
      "text": "Restoring the earlier partial shard preserves valid checksums and yields fill under strict reads; its final inventory equals the intentionally sparse store.",
      "type": "controlled-observation-and-inference",
      "observations": "observations.json",
      "selector": {
        "layout": [
          "shard-start",
          "shard-end"
        ],
        "state": "stale-sparse-shard",
        "strict": true,
        "selection": "full"
      },
      "expected": {
        "status": "ok",
        "values": [
          10,
          11,
          12,
          13,
          -999,
          -999,
          -999,
          -999
        ]
      },
      "sources": [
        "sharding-v1",
        "crc32c-v1"
      ],
      "limits": "Deliberate local replacement; no incidence rate or cloud consistency claim."
    },
    {
      "id": "effective-policy",
      "text": "For an existing array opened read-only, open_array config kwargs do not apply the strict policy; the with_config control does.",
      "type": "controlled-observation",
      "observations": "routing.json",
      "selector": {
        "layout": "plain",
        "route": [
          "open_array-config",
          "with_config"
        ]
      },
      "sources": [
        "zarr.api.asynchronous",
        "runtime-guide"
      ],
      "limits": "The open_array docstring routes extra kwargs to creation; not labeled a confirmed new defect."
    },
    {
      "id": "selection-coverage",
      "text": "A read of the intact prefix succeeds despite a checksum-damaged unselected tail.",
      "type": "controlled-observation",
      "observations": "observations.json",
      "selector": {
        "state": "corrupt-payload",
        "strict": true,
        "selection": "prefix"
      },
      "expected": {
        "status": "ok",
        "values": [
          10,
          11,
          12,
          13
        ]
      },
      "sources": [
        "crc32c-v1",
        "zarr.codecs.sharding"
      ],
      "limits": "Specific tested codec pipeline and geometry; not a universal assertion about read coalescing."
    }
  ]
}
