Skip to main content
← Back to list
01Issue
BugOpenSwamp CLIPublic
AssigneesNone

Relationships

#3100 extension push: registry metadata and content hash label files relative to the repo dir, so a push with --extensions-dir records ../ paths

Opened by skunk-ape · 10/6/2026

Problem

buildResolvedData in src/libswamp/extensions/push.ts labels every model, vault, datastore, report, webhook, workflow and additional file with relative(input.repoDir, file), and computePackageCacheHash in src/domain/extensions/extension_package_cache.ts keys file content the same way. When the extension lives outside the swamp repo and is pushed with --extensions-dir (or, after swamp-club#3018, from a sibling repo with the base inferred), those labels become paths like ../../sc/swamp-extensions/kubernetes/extensions/models/pod.ts in the registry metadata, and the content hash differs from the one publish.yml produces for the same files.

Expected

File names in the resolved data and the hash input are relative to the effective extensions base (the typed directory base, or the manifest directory under paths.base: manifest), so the same extension content yields the same metadata and hash wherever the swamp repo is.

Context

Observed while triaging swamp-club#3018; deliberately left out of that fix to keep the archive guardrail comparison clean. The archive layout itself already uses relative(modelsDir, file), so only the metadata and the hash are affected.

02Bog Flow
◉OPEN○TRIAGED○IN PROGRESS○SHIPPED

Open

10/6/2026, 7:16:33 PM

No activity in this phase yet.

03Sludge Pulse

Sign in to post a ripple.