Skip to content

Isolate LocalStack fixtures and keep default tests service-free - #33

Closed
jeregrine wants to merge 1 commit into
mainfrom
test/isolate-localstack-fixtures
Closed

jeregrine wants to merge 1 commit into
mainfrom
test/isolate-localstack-fixtures

Conversation

@jeregrine

Copy link
Copy Markdown
Member

Problem

Every test invocation connects to LocalStack and clears a shared bucket, including UUID-only runs. Concurrent worktrees can erase each other's state. Backend-independent tests and credential-free EKV integration cases are not separated from service-dependent fixtures.

Fix

Allocate a unique bucket per run without contacting storage. An opt-in LocalStack case template creates it only for selected modules; suite cleanup removes only that run's bucket. Remove unused per-test IAM buckets from the server and lifecycle fixtures.

Separate LocalStack, local EKV, and credentialed integration lanes. Add focused namespace and cross-bucket cleanup cases, and document the explicit LocalStack endpoint and lane selection.

Supporting information

The default suite now includes local EKV but excludes LocalStack. CI must explicitly include the LocalStack lane to retain S3 coverage; coordinate the command in #28 when merging. #32 separately repairs the existing shared-EKV teardown.

Stock LocalStack 4.14 rejects conditional DELETE with If-Match as unsupported. The existing physical-deletion scenarios still expose that backend limitation; this change does not bypass their conditions or relax production fencing.

@jeregrine
jeregrine force-pushed the test/isolate-localstack-fixtures branch from 86de98f to 6f0950f Compare September 15, 2026 15:05
@jeregrine jeregrine closed this Sep 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant