{
  "diagnostics": {
    "attributes": {
      "invalidFiles": 2,
      "validation": {
        "cascadingErrors": 0,
        "durationMs": 28,
        "errors": [
          {
            "category": "MODEL",
            "code": "NullPointerException",
            "file": "MinimalArtistAliasLineModel.tm",
            "message": "Cannot invoke \"String.toUpperCase()\" because \"name\" is null",
            "severity": "ERROR",
            "type": "TM"
          },
          {
            "category": "MODEL",
            "code": "NullPointerException",
            "file": "MinimalArtistAliasQueryModel.qm",
            "message": "Cannot invoke \"String.toUpperCase()\" because \"name\" is null",
            "severity": "ERROR",
            "type": "QM"
          }
        ],
        "invalidFiles": 2,
        "namespace": "chinook",
        "path": "<redacted-path>",
        "totalFiles": 2,
        "valid": false,
        "validFiles": 0,
        "warnings": []
      }
    },
    "warnings": [
      "Detached model validation rejected the candidate."
    ]
  },
  "engine": "java",
  "error": {
    "code": "MODEL_VALIDATE_FAILED",
    "lifecycle": {
      "affectedBindingGenerations": [
        {
          "backendId": "runtime-registry:chinook-sqlite",
          "bindingKey": "runtime:namespace-default:chinook",
          "generation": "94a81984-4790-4dab-9894-723023acc1c1:2"
        }
      ],
      "beforeCatalogGeneration": "catalog:c8436718-a82a-4cf3-8135-f30290afbde9:6",
      "catalogState": "ACTIVE",
      "diagnostics": [
        {
          "message": "Detached model validation failed (NullPointerException).",
          "phase": "validate.tm",
          "suggestedNextAction": "Fix the model definition and retry validation.",
          "target": "MinimalArtistAliasLineModel"
        },
        {
          "message": "Detached model validation failed (NullPointerException).",
          "phase": "validate.qm",
          "suggestedNextAction": "Fix the model definition and retry validation.",
          "target": "MinimalArtistAliasQueryModel"
        }
      ],
      "failedTargets": [
        "MinimalArtistAliasLineModel",
        "MinimalArtistAliasQueryModel"
      ],
      "namespace": "chinook",
      "sourceRevision": "source:23410857-ac30-4868-94e7-f14bf3b0de1e:g0:n3"
    },
    "lifecycleCode": "CATALOG_VALIDATION_FAILED",
    "message": "Detached model validation rejected the candidate.",
    "model": "MinimalArtistAliasLineModel",
    "phase": "models.validate",
    "safeToAutoRepair": false,
    "suggestedNextAction": "Fix the model definition and retry validation."
  },
  "runtimeApiVersion": "foggy-runtime-api/v1",
  "success": false
}
