{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "previewId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    },
    "trackerId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    },
    "state": {
      "type": "string",
      "enum": [
        "preview",
        "running",
        "completed",
        "cancelled",
        "rejected"
      ]
    },
    "processed": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1000
    },
    "total": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1000
    },
    "expectedSchemaRevisionId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    },
    "expectedVersion": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "mode": {
      "type": "string",
      "enum": [
        "clone",
        "create-new",
        "reconcile-existing",
        "git",
        "commentary"
      ]
    },
    "diagnostics": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ProjectAgentTrackerDiagnostic"
      },
      "maxItems": 10000,
      "minItems": 0
    },
    "entries": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "tracker",
              "schemas",
              "records",
              "views"
            ]
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "pattern": "^[^\\s]+$"
          }
        },
        "required": [
          "kind",
          "id"
        ]
      },
      "maxItems": 1201,
      "minItems": 0
    },
    "idMap": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "tracker": {
          "type": "object",
          "maxProperties": 1000,
          "additionalProperties": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "pattern": "^[^\\s]+$"
          }
        },
        "schemas": {
          "type": "object",
          "maxProperties": 100,
          "additionalProperties": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "pattern": "^[^\\s]+$"
          }
        },
        "records": {
          "type": "object",
          "maxProperties": 1000,
          "additionalProperties": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "pattern": "^[^\\s]+$"
          }
        },
        "views": {
          "type": "object",
          "maxProperties": 100,
          "additionalProperties": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "pattern": "^[^\\s]+$"
          }
        }
      },
      "required": [
        "tracker",
        "schemas",
        "records",
        "views"
      ]
    },
    "counts": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "records": {
          "type": "integer",
          "minimum": 0,
          "maximum": 1000
        },
        "views": {
          "type": "integer",
          "minimum": 0,
          "maximum": 100
        },
        "schemas": {
          "type": "integer",
          "minimum": 0,
          "maximum": 100
        },
        "history": {
          "type": "integer",
          "minimum": 0,
          "maximum": 5000
        }
      },
      "required": [
        "records",
        "views",
        "schemas",
        "history"
      ]
    },
    "schemaDifferences": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "additive",
              "breaking"
            ]
          },
          "path": {
            "type": "string",
            "maxLength": 1024
          },
          "message": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "required": [
          "kind",
          "path",
          "message"
        ]
      },
      "maxItems": 1000,
      "minItems": 0
    },
    "proposalState": {
      "type": "string",
      "enum": [
        "pending_git"
      ]
    },
    "operationId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    },
    "operationVersion": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "binding": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "sourceSnapshotId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 512,
          "pattern": "^[^\\s]+$"
        },
        "commitSha": {
          "type": "string",
          "pattern": "^[a-f0-9]{40,64}$"
        },
        "sourcePath": {
          "type": "string",
          "maxLength": 1024
        },
        "bundleHash": {
          "type": "string",
          "pattern": "^sha256:[a-f0-9]{64}$"
        }
      },
      "required": [
        "sourceSnapshotId",
        "commitSha",
        "sourcePath",
        "bundleHash"
      ]
    }
  },
  "required": [
    "previewId",
    "trackerId",
    "state",
    "processed",
    "total",
    "expectedSchemaRevisionId",
    "expectedVersion",
    "mode",
    "diagnostics",
    "idMap",
    "counts",
    "schemaDifferences"
  ]
}