{"record":{"id":"5f3c010730dc0372","repo":"github/spec-kit","slug":"catalog-index-index-out-of-range-0-len-display","errorCode":null,"errorMessage":"Catalog index {index} out of range (0-{len(display_order) - 1}).","messagePattern":"Catalog index (.+?) out of range \\(0-(.+?)\\)\\.","errorType":"validation","errorClass":"IntegrationValidationError","httpStatus":null,"severity":"error","filePath":"src/specify_cli/integrations/catalog.py","lineNumber":591,"sourceCode":"            if isinstance(raw_priority, bool):\n                priority = yaml_idx + 1\n            else:\n                try:\n                    priority = int(raw_priority)\n                except (TypeError, ValueError, OverflowError):\n                    # OverflowError: int(float(\"inf\")) — a ``priority: .inf``.\n                    priority = yaml_idx + 1\n            priority_pairs.append((priority, yaml_idx))\n        if not priority_pairs:\n            raise IntegrationValidationError(\n                \"Catalog config contains no removable catalog entries.\"\n            )\n        # Stable sort: ties keep their YAML order, matching list-view ordering.\n        priority_pairs.sort(key=lambda p: p[0])\n        display_order: List[int] = [yaml_idx for _, yaml_idx in priority_pairs]\n\n        if index < 0 or index >= len(display_order):\n            raise IntegrationValidationError(\n                f\"Catalog index {index} out of range (0-{len(display_order) - 1}).\"\n            )\n\n        target_yaml_idx = display_order[index]\n        removed = catalogs.pop(target_yaml_idx)\n\n        if any(_is_removable_catalog_entry(item) for item in catalogs):\n            data[\"catalogs\"] = catalogs\n            with open(config_path, \"w\", encoding=\"utf-8\") as f:\n                yaml.dump(\n                    data,\n                    f,\n                    default_flow_style=False,\n                    sort_keys=False,\n                    allow_unicode=True,\n                )\n        else:\n            # Removing the final entry: delete the config file rather than","sourceCodeStart":573,"sourceCodeEnd":609,"githubUrl":"https://github.com/github/spec-kit/blob/bf88c9f9a82fa370c7a7257aa2b3cf10b457b65c/src/specify_cli/integrations/catalog.py#L573-L609","documentation":"Error \"Catalog index {index} out of range (0-{len(display_order) - 1}).\" thrown in github/spec-kit.","triggerScenarios":"Thrown at src/specify_cli/integrations/catalog.py:591 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Choose a catalog index within the displayed range."],"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-15T17:31:12.345Z"}