Filesystem datastore (v2): data-version writes are not fsynced, so a power cut can publish zero-byte versions
Docs: doctor datastores reference — unreadable data version check and repair (swamp-club#3955)
extension quality: a collective-attested private repository scores provisional, and --json omits ifProvisionalEarned
doctor datastores --repair --json prints two JSON documents instead of one
judgeRunRecord lets a forged record settle a waiting approval gate to skipped without an approve
Claude audit hook misses PowerShell tool calls and sessions started above the swamp repo
access can-i: evaluate a local grants file without --server
Show each method's kind in type describe --json
Team mode: serve sends the compacted base, so a serve-mode checkout can catch up past compaction
Support search and filters as URL query parameters on /extensions
bundleExtension same-cache test can pass with a broken first-bundle gate under CPU load
Five Mongo queues can hand the same row to two replicas
Docs: run-workflows-on-a-schedule tells readers to curl /health for queue state, which no longer lists schedules
Collective invite shows "This invitation has expired or has already been used" after a successful join via Google sign-in
Move the Zod argument-field extractor into @swamp-club/extension-scoring so the CLI and registry read schemas alike
serve: dispatch to an idle worker waits for its worker_busy write on the shared gateway transition tail
serve: worker enrollment resolves and creates the worker definition inside the serialized gateway transition tail
Rescore every extension's current version under rubric v5
Manual: the supported extension dependency categories, the canonical form and the lock rule, rewritten once against the final design
stagecraft studio ticket columns: round-5 review lows from #3828 (source watch cost, relationText lookup, cross-instance claim)
A long-lived serve client for extensions, and a stable rate_limited error code
swamp serve on a v3 datastore never settles a workflow run left running by a stopped instance: boot reaper skips it as belonging to a remote instance
swamp serve on a v3 datastore: a run interrupted at a clean shutdown is never committed when the bucket is slow, and stays running for every other checkout
Support creating 1Password vaults for new clients
datastore_v3_replica_verify_test stall case flakes under the full integration run: restore.pid is read before the stub writes it
Generated state schemas require every child of nested objects, so normal resources warn on create/get
Add LinkedIn as a login provider
Showcase reward backfill can double-pay 5,000,000 points when replicas start together
Showcase editor: caption counter is not announced to screen readers
Profile showcase read: approved list sorts on review.reviewedAt in memory
Showcase countByStatus: $match live statuses before the $group
Showcase admin queues: index-serve the updatedAt sort on approved/rejected
Annotate and retain past workflow runs and data after the fact
Docs: --trusted-hosts accepts host:port for public addresses on non-default ports
A workflow step's method output is invisible to `data query` and `data list`, and the method summary's retrieval command returns an older run's data
Skill propulsion rule is silent when no transition is satisfied because stage work is outstanding
package.json mode: no loose-specifier warning for a range push ships as the exact installed version
serve shutdown does not wait for worker status writes, and its listener accepts workers after the gateway is disposed
stagecraft: rename work mode `method` to `behavior`, matching swamp's rename of models to behaviors
auth token create --json fields key and signinToken are undocumented; no token-mode service setup page
trigger.schedule is evaluated in the serve host's local time zone, with no zone field and no doc saying so
workflow validate/run say "Workflow not found" for a file that doctor workflows explains is misnamed
telemetry stats says "No telemetry data found" right after successful sends; say the spool is empty because it flushed
Docs: publish typed-secrets Phase 4.6 expression and delivery semantics
Extension registry page: a supported way to include media (images) in the README
CEL: data.latest(...).version is a double, but data.version() only accepts int, so "version - 1" fails at run time
workflow resume --run refuses workflows with the same step name in two jobs, though validate and run accept them
Update public OpenTelemetry manual for remote waterfalls and execution metrics (#3786)
Server-driven warning and info messages to CLI users, targeted by swamp version (exploration)
Serve: delegate namespace-scoped extension pulls and reload without granting administrator access
workflow cancel --server ignores --ca-cert and SWAMP_CA_CERT
Preserve active worker execution across serve restarts and upgrades; reconnect and reattach dispatches
v3: chunk durability barrier costs a full drive-cache flush per command on macOS; use an ordering barrier
vary/forEach object values with no key/name/id produce data names Windows refuses
issue-lifecycle start drops issue comments: context.comments is always empty
swamp core: a non-string sensitive value reads back as a JSON string
Generated vault keys carry raw data-name and vary characters that strict vault providers reject
extension install and extension pull leave different bundles for the same extension version
Registry drops contentMetadata.extensions (method grafts) at confirm-push
Multi-model skill eval: gpt-5.4 and gemini jobs fail preflight every run (OpenAI credits exhausted, Google API key invalid)
local_source_failed drops the indexing error: a transient local extension failure leaves no cause (follow-up to 1672)
Finer-grained method locking: a long-running method on one definition blocks unrelated objects managed by the same definition
Surface (or warn about) values a model method returns besides dataHandles, with sensitive-field support
workflow placement: run a workflow transparently on a specified host, local or via swamp workers (incl. nested child workflows)
issue-lifecycle: pr_merged and ship report success and advance the phase when swamp-club is unreachable, writing nothing upstream
auth login leaves auth.json apiKey empty and stores the key only in ~/.config/swamp/api-key, which the auth gate never reads
swamp-extensions CI: Review Integrity explains a stalled or failed audit (streamed progress, timeout, did-not-finish comment)
Workflow run cancellation on concurrency-key conflict
Read non-string sensitive resource fields back with their type
Run index repair-by-stat misses an in-place, same-size record rewrite that restores mtime within the same second as its entry: ctime is reported in whole seconds
Configurable storage tiers: runs, outputs, data versions and audit move through an ordered list of user-defined tiers, and stay queryable across them
A global argument that evaluates to swamp-namespace expression text is silently dropped, and literal() cannot pass it through
serve: the per-IP WebSocket burst limit can't be configured, so workers behind one NAT IP throttle each other
S3-backed serve: a poll that pulls one file invalidates the whole data catalog, so the next query re-reads every version
extensions_search index is never created if the first attempt fails, until the process restarts
S3/GCS datastore sync: shared sync service lets one sync clear another's dirty marks and pull over unpushed files
swamp-uat: the SIGTERM drain test does not check that the run succeeded
#3638 workflow run --detach integration test fails under load: the run finishes before the test attaches
Opened by skunk-ape · 10/19/2026· Shipped 10/20/2026
integration/workflow_run_detach_test.ts ('workflow run --detach: returns the id of a recorded run that keeps running on the server (swamp-club#1090)', line 153) failed once in verify-build on 2026-10-19 while the host also ran the swamp-uat uat:cli suite: run.attach rejected with "No active run with id ''" (thrown from the socket.onmessage handler at line 146). It passed 3/3 when re-run alone (about 250 ms each). The test appears to assume the detached run is still active when it attaches; under CPU load the run can finish first. Seen on commit 667825b9 (swamp-club#3613 branch), which does not touch workflows or serve. Expected: the test attaches to a run that is held open until it attaches (for example a step that waits on a signal), so it cannot race the run's completion.
Shipped
Click a lifecycle step above to view its details.