{"record":{"id":"99773871a50d2d37","repo":"github/spec-kit","slug":"invalid-catalog-entry-at-index-idx-in-config-pa-997738","errorCode":null,"errorMessage":"Invalid catalog entry at index {idx} in {config_path}: {exc}","messagePattern":"Invalid catalog entry at index (.+?) in (.+?): (.+?)","errorType":"validation","errorClass":"IntegrationValidationError","httpStatus":null,"severity":"error","filePath":"src/specify_cli/integrations/catalog.py","lineNumber":451,"sourceCode":"        # we don't silently preserve a corrupt sibling entry or derive a new\n        # priority from a bogus value.\n        existing_priorities: List[int] = []\n        valid_catalog_count = 0\n        for idx, cat in enumerate(catalogs):\n            if not isinstance(cat, dict):\n                raise IntegrationValidationError(\n                    f\"Invalid catalog entry at index {idx} in {config_path}: \"\n                    f\"expected a mapping, got {type(cat).__name__}.\"\n                )\n            existing_url = str(cat.get(\"url\", \"\")).strip()\n            if not existing_url:\n                continue\n            # Re-run the same URL validation used when loading, so a corrupt\n            # entry surfaces here instead of at the next `integration` call.\n            try:\n                self._validate_catalog_url(existing_url)\n            except IntegrationCatalogError as exc:\n                raise IntegrationValidationError(\n                    f\"Invalid catalog entry at index {idx} in {config_path}: {exc}\"\n                ) from exc\n            if existing_url == url:\n                raise IntegrationValidationError(\n                    f\"Catalog URL already configured: {url}\"\n                )\n            valid_catalog_count += 1\n            if \"priority\" in cat:\n                raw_priority = cat.get(\"priority\")\n                if isinstance(raw_priority, bool):\n                    raise IntegrationValidationError(\n                        f\"Invalid catalog entry at index {idx} in {config_path}: \"\n                        f\"'priority' must be an integer, got \"\n                        f\"{type(raw_priority).__name__}.\"\n                    )\n                try:\n                    normalized_priority = int(raw_priority)\n                except (TypeError, ValueError, OverflowError):","sourceCodeStart":433,"sourceCodeEnd":469,"githubUrl":"https://github.com/github/spec-kit/blob/bf88c9f9a82fa370c7a7257aa2b3cf10b457b65c/src/specify_cli/integrations/catalog.py#L433-L469","documentation":"Error \"Invalid catalog entry at index {idx} in {config_path}: {exc}\" thrown in github/spec-kit.","triggerScenarios":"Thrown at src/specify_cli/integrations/catalog.py:451 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the catalog entry at the reported index according to the inner validation error."],"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-15T22:17:37.221Z"}