Relationships
#2544 Pulled extensions missing from the extension catalog cannot be resolved or auto-repaired, and doctor reports healthy
Opened by stack72 · 9/25/2026
Pulled extensions whose files exist under .swamp/pulled-extensions/ can be missing from the extension catalog (.swamp/_extension_catalog.db). Once in that state, the type cannot be resolved and auto-install refuses to repair it, so anything that uses the type fails with Unknown model type. swamp doctor extensions reports the catalog as healthy.
Observed
In the swamp-extensions repo, .swamp/pulled-extensions/@swamp/git/ (2026.08.28.1, pulled 2026-08-31) has a complete manifest and models/ tree. Same for @swamp/aws and @swamp/hetzner-cloud. The catalog bundle_types table has exactly one row: the local @swamp/issue-lifecycle source. None of the pulled extensions are registered.
swamp model type describe @swamp/git→Error: Model type not found: @swamp/git, and it suggestsswamp extension pull @swamp/git.- A workflow step with
modelType: "@swamp/git"fails. The auto-resolver logs, twice:Auto-install of "@swamp/git" failed: files already exist on disk and the type was not registered. To resolve: swamp extension pull "@swamp/git" --forceand then the step fails withUnknown model type: @swamp/git. swamp doctor extensionsprints1 total source(s) across 1 extension(s), 1 healthy (Indexed). It warns only about 39 orphan bundle files. It does not flag the three pulled extensions that are on disk but not in the catalog.
Likely trigger
bundle_meta still has keys from the repo's previous location. datastore_base_path = /Users/[REDACTED]/code/systeminit/swamp-extensions/.swamp/bundles and source_dirs_fingerprint = /Users/[REDACTED]/code/systeminit/swamp-extensions/extensions/models, next to the current swamp-club/... keys. Migrations dedup-non-canonical-source-paths-v1 and validation-failed-dropped-v1 are marked applied. So a repo move plus a catalog migration may have dropped the pulled-extension rows without re-indexing them. Not confirmed.
Expected
- When the files are on disk but the catalog has no rows for them, the catalog re-indexes the pulled extension, or the auto-resolver re-installs it. It should not refuse because the files already exist.
swamp doctor extensionsreports pulled extensions that are missing from the catalog as unhealthy and names the repair command.
Workaround
swamp extension pull @swamp/git --force
Environment
- swamp
20260924.213028.0-sha.78a79929, darwin aarch64
Closed
No activity in this phase yet.
Sign in to post a ripple.