Skip to main content
← Back to list
01Issue
BugShippedSwamp CLIPublic
Assigneesstack72

Relationships

#2458 datastore config migrate skips setting managedConfig when the datastore is already migrated

Opened by stack72 · 9/23/2026· Shipped 9/28/2026

Problem

swamp datastore config migrate says it "Sets managedConfig: true in .swamp.yaml if not already". It does not do that when the datastore was already migrated by another repo.

src/cli/commands/datastore_config_migrate.ts returns as soon as result.alreadyMigrated is true (the sentinel exists), before the managedConfigSet block. So a second repo joining a shared datastore keeps running without managedConfig, and nothing says so: the command logs only "Config migration already completed".

Reproduction

  1. Two fresh repos, A and B, on the same S3-compatible bucket and namespace (swamp datastore setup extension @swamp/s3-datastore ... --namespace e2e).
  2. swamp datastore config migrate in A: logs "Migrated ... into datastore config tier", and A's .swamp.yaml gains managedConfig: true.
  3. swamp datastore config migrate in B: logs "Config migration already completed (sentinel exists)", and B's .swamp.yaml has no managedConfig.

Seen while testing swamp-club#2446 against MinIO, on main at edd0e85e plus the 2446 branch (neither change touches this file).

Impact

The documented pod boot sequence (design/enablers/datastores.md, Managed Config Deployment Architecture) copies in a .swamp.yaml that already has managedConfig: true, so it does not hit this. An operator who adds a second instance by running config migrate in a new repo, as the help text suggests, gets a repo that reads definitions from local directories instead of the datastore config tier.

Expected

When the sentinel exists and the marker lacks managedConfig, set it (and log "Set managedConfig: true in .swamp.yaml") before returning. The copy step stays skipped.

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPEDTRIAGE+ 2 MOREREVIEW+ 7 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

9/28/2026, 9:07:13 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
stack72 assigned stack729/23/2026, 11:03:05 PM

Sign in to post a ripple.