{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "schema_version": {
      "type": "number",
      "const": 1
    },
    "checkpoint": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "artifact_id": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_-]{1,128}$"
            },
            "workspace_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128,
              "description": "Workspace that owns this record."
            },
            "project_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128,
              "description": "Project that owns this record."
            },
            "sha256": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            },
            "through_sequence": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "completed_at": {
              "type": "string"
            },
            "coverage": {
              "type": "object",
              "properties": {
                "complete": {
                  "type": "boolean"
                },
                "truncated": {
                  "type": "boolean"
                },
                "scan_limited": {
                  "type": "boolean"
                },
                "retention_limited": {
                  "type": "boolean"
                }
              },
              "required": [
                "complete",
                "truncated",
                "scan_limited",
                "retention_limited"
              ],
              "additionalProperties": false,
              "description": "Dataset scope and completeness, including limits on what these results establish."
            }
          },
          "required": [
            "artifact_id",
            "workspace_id",
            "project_id",
            "sha256",
            "through_sequence",
            "completed_at",
            "coverage"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "schema_version",
    "checkpoint"
  ],
  "additionalProperties": false
}
