Skip to main content
← Back to list
01Issue
BugShippedSwamp CLIPublic
Assigneesskunk-ape

Relationships

#3100 extension push: resolved file names and content hash are relative to the repo dir, so a push from outside the extension root shows ../ paths and a hash that differs from publish.yml

Opened by skunk-ape · 10/6/2026· Shipped 10/7/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+ 1 MOREASSIGNED+ 5 MOREREVIEW+ 9 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

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

Click a lifecycle step above to view its details.

03Sludge Pulse
skunk-ape assigned skunk-ape10/7/2026, 5:08:00 PM

Sign in to post a ripple.