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

Relationships

#2906 Tests: bring the in-memory remote's default semantics up to @swamp/s3-datastore and @swamp/gcs-datastore 2026.10.01.1

Opened by stack72 · 10/1/2026· Shipped 10/8/2026

Background

createInMemoryRemote (packages/testing/in_memory_remote.ts, swamp-club#2854) reproduces what the S3 and GCS datastore extensions do, gaps included, through LEGACY_EXTENSION_SEMANTICS. It was checked line by line against swamp-extensions 5368cb002.

Since then swamp-extensions 5e8630189 (swamp-club#2888, released as s3-datastore and gcs-datastore 2026.10.01.1) changed one of those behaviours: a pull never marks the cache clean. A pull still replaces a changed file with the bucket's copy, but the cache stays dirty until a push succeeds, so a write whose push failed is sent by the next push instead of being lost. The fake's default still has pullClearsPendingPush: true, which models 2026.09.24.1 and earlier.

Work

  • Re-check the fake against the current s3_cache_sync.ts and gcs_cache_sync.ts and update the default semantics to match 2026.10.01.1 (pullClearsPendingPush: false, and whatever pull-overwrite-but-stay-dirty behaviour the extension now has).
  • Keep the old behaviour reachable as an explicit legacy semantics value, documented with the version range it models.
  • Update the tests that depend on the default: the use-case sync characterisation tests from swamp-club#2856/#2860, integration/in_memory_remote_wiring_test.ts, and the pins added for swamp-club#2857/#2859, so each states which extension version it models.
  • Record the checked swamp-extensions commit in the fake's doc comment.

Tracking issue swamp-club#2865. Found while verifying swamp-club#2859.

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 8 MOREREVIEW+ 10 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

10/8/2026, 6:32:49 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
stack72 assigned stack7210/8/2026, 5:32:02 PM

Sign in to post a ripple.