Skip to content

Restore the bundled model catalog; refuse refreshes that collapse it - #69

Merged
kngsly merged 1 commit into
mainfrom
fix/catalog-collapse-guard
Nov 1, 2026
Merged

kngsly merged 1 commit into
mainfrom
fix/catalog-collapse-guard

Conversation

@kngsly

@kngsly kngsly commented Nov 1, 2026

Copy link
Copy Markdown
Member

Problem

The daily catalog job (ff93e00, 2026-10-31) committed a catalog with 79 of 258 providers and 5,949 of 13,677 models. Devin went from 178 models to 2, so check-rust fails (devin_has_models_with_swe_and_glm, bundled_devin_models_match_catalog), and any release cut now would drop those providers for every user.

Cause: OhMyPi rewrote its catalog on 2026-10-29 ("optimized catalog and theme loading with binary registry formats"). The models.json we fetch now decodes to a subset; 175 of our providers no longer appear in it at all.

Change

  • Restore src-tauri/catalog/ to a0f8326 (last full catalog).
  • update-model-catalog.mjs refuses to write when a refresh would lose more than 10% of providers or models versus the bundled file, so the daily job fails red instead of committing a gutted catalog. BASEBUILD_CATALOG_ALLOW_SHRINK=1 overrides for a real mass removal.

Verification

  • node --test scripts/update-model-catalog.test.mjs: 4 pass (new boundary test).
  • Live run against current upstream: catalog: providers would drop from 258 to 79; refusing to write, bundled files untouched.

Follow-up

The daily refresh will now fail every run until the script reads OhMyPi's new registry format. Also seen during the run: https://basebuild.net/api/catalog/desktop returned HTTP 503.

…apse it

OhMyPi moved its catalog to binary registry formats on 2026-10-29; models.json now decodes to 79 of 258 providers. The 2026-10-31 refresh committed that (Devin 178 to 2 models) and turned check-rust red. Restore the a0f8326 catalog and fail the refresh when it would lose more than 10% of providers or models (override: BASEBUILD_CATALOG_ALLOW_SHRINK=1).
@kngsly
kngsly merged commit 2466c2b into main Nov 1, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant