Skip to main content
← Back to list
01Issue
BugShippedUAT
Assigneesstack72

Relationships

#560 fix: giga-swamp UAT failures — 9 bugs found during comprehensive testing

Opened by stack72 · 6/5/2026· Shipped 6/6/2026

Description

Comprehensive UAT testing (#555) against the shipped giga-swamp feature surfaced 9 bugs. Some are blockers (prevent basic namespace operations), others are edge cases. Listed in priority order.

Bug 1: Relative bundle path in namespaced filesystem datastore (BLOCKER)

After namespace set on a filesystem datastore, bundle resolution produces a relative path instead of absolute:

Method execution failed: Path must be absolute: received .swamp/gc-infra/bundles/e9c5c01e/test/bulk-producer.js

The namespace changes the datastore base path to .swamp// but the bundle resolver constructs a relative path instead of joining with the repo root. This blocks ALL model method execution, workflows, GC, delete, and compact after namespace set on a filesystem datastore.

Affected tests: 8

Bug 2: namespace list --json uses different field names than documented

The JSON output uses different field names than expected. Zod validation fails:

path: namespaces[0].slug — expected string, received undefined
path: namespaces[0].current — expected boolean, received undefined

The actual fields are likely namespace and isCurrent (matching the Phase 5 implementation) rather than slug and current. The UAT schema needs to match the actual output, or the output needs to match the documented schema.

Affected tests: 4

Bug 3: namespace list -q prints message instead of empty output

When no namespaces are registered, quiet mode (-q) outputs No namespaces registered in this datastore instead of suppressing it.

Affected tests: 2

Bug 4: datastore lock status --json returns null in namespaced mode

Lock status returns null instead of a JSON object when the repo has a namespace configured. The lock key path may need namespace awareness in the status command.

Affected tests: 2

Bug 5: namespace unset --migrate fails with no data directories found

After pushing namespaced data to a remote backend, unset --migrate --confirm errors with No data directories found to migrate. The reverse migration looks for local namespace-scoped directories but since data was pushed to remote, the local cache layout may not have the expected directory structure.

Affected tests: 2

Bug 6: data list returns wrong count after namespace setup

In multi-repo journey tests, data list returns more rows than expected (7 instead of 5). Possibly counting catalog metadata or foreign namespace rows in the total.

Affected tests: 2

Bug 7: Data not visible after migrate + push + pull

After migrating solo data to a namespace and pushing, a fresh repo that pulls shows 0 data. The migrated data reaches the remote but isnt discoverable after pull into a new repo.

Affected tests: 2

Bug 8: Corrupt .namespace.json handled gracefully (may not be a bug)

Writing invalid JSON to a namespace manifest and running namespace list exits 0 instead of non-zero. This may be intentional resilience — the extension skips malformed manifests. If intentional, the UAT test expectation needs updating, not the code.

Affected tests: 1

Bug 9: Conflict detection not working during setup

Setting up two repos with the same namespace slug against the same S3/GCS prefix both succeed (exit 0). The second should fail with a conflict error. This may indicate #559 fix isnt fully working, or the test binary predates the fix.

Affected tests: 2

Priority

Bug 1 is the highest priority — it blocks all namespace operations on filesystem datastores. Bugs 5, 7, 9 are the next tier — they affect the core multi-repo sharing workflows. Bugs 2, 3, 4, 6 are lower priority (schema/output issues). Bug 8 may not be a bug.

Context

Found during UAT development for issue #555. Some of these (bugs 2, 8) may be UAT test issues rather than swamp bugs — need to verify actual CLI output before fixing.

Related: #557 (fixed), #559 (fixed), #555 (UAT coverage)

02Bog Flow
OPENTRIAGEDIN PROGRESSSHIPPED+ 1 MOREASSIGNED+ 3 MOREFINDINGS+ 3 MOREPR_MERGED+ 1 MORENOTIFICATION_SKIPPED

Shipped

6/6/2026, 12:03:49 AM

Click a lifecycle step above to view its details.

03Sludge Pulse
stack72 assigned stack726/5/2026, 12:53:39 AM

Sign in to post a ripple.