{"record":{"id":"df5a56bc4ae6bbf1","repo":"github/spec-kit","slug":"missing-required-field-field-df5a56","errorCode":null,"errorMessage":"Missing required field: {field}","messagePattern":"Missing required field: (.+?)","errorType":"validation","errorClass":"IntegrationDescriptorError","httpStatus":null,"severity":"error","filePath":"src/specify_cli/integrations/catalog.py","lineNumber":697,"sourceCode":"        except yaml.YAMLError as exc:\n            raise IntegrationDescriptorError(f\"Invalid YAML in {path}: {exc}\")\n        except FileNotFoundError:\n            raise IntegrationDescriptorError(f\"Descriptor not found: {path}\")\n        except (OSError, UnicodeError) as exc:\n            raise IntegrationDescriptorError(\n                f\"Unable to read descriptor {path}: {exc}\"\n            )\n\n    # -- Validation -------------------------------------------------------\n\n    def _validate(self) -> None:\n        if not isinstance(self.data, dict):\n            raise IntegrationDescriptorError(\n                f\"Descriptor root must be a YAML mapping, got {type(self.data).__name__}\"\n            )\n        for field in self.REQUIRED_TOP_LEVEL:\n            if field not in self.data:\n                raise IntegrationDescriptorError(\n                    f\"Missing required field: {field}\"\n                )\n\n        if self.data[\"schema_version\"] != self.SCHEMA_VERSION:\n            raise IntegrationDescriptorError(\n                f\"Unsupported schema version: {self.data['schema_version']} \"\n                f\"(expected {self.SCHEMA_VERSION})\"\n            )\n\n        integ = self.data[\"integration\"]\n        if not isinstance(integ, dict):\n            raise IntegrationDescriptorError(\n                \"'integration' must be a mapping\"\n            )\n        for field in (\"id\", \"name\", \"version\", \"description\"):\n            if field not in integ:\n                raise IntegrationDescriptorError(\n                    f\"Missing integration.{field}\"","sourceCodeStart":679,"sourceCodeEnd":715,"githubUrl":"https://github.com/github/spec-kit/blob/bf88c9f9a82fa370c7a7257aa2b3cf10b457b65c/src/specify_cli/integrations/catalog.py#L679-L715","documentation":"Error \"Missing required field: {field}\" thrown in github/spec-kit.","triggerScenarios":"Thrown at src/specify_cli/integrations/catalog.py:697 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Add the missing required field to the descriptor YAML."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"bf88c9f9a82fa370c7a7257aa2b3cf10b457b65c","analyzedAt":"2026-08-14T19:43:37.150Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}