When the vault behind a stored sensitive-field reference cannot be read, swamp reports 'Refusing to evaluate expression … arrived as data content' instead of the vault error
Repos without defaultVault: the fallback vault for sensitive outputs is not defined, changed between releases, and doctor vaults does not flag it
Tier 15 capstone claimed but its banked 1,000,000 never granted (no badges source)
Homepage club plate link has no visible keyboard focus
forEachNameWithoutSecrets property test fails intermittently: an empty-string secret and an overlapping recorded value give different names
extension push (package.json mode): two installed copies under one declared range are audited once, so the second shipped version goes unaudited
Docs: dashboard Approvals view shows run context, reason and per-viewer decide state
Scheduled flaky-test detection is failing
Update public OpenTelemetry manual for remote waterfalls and execution metrics (#3786)
Registry scorecard: score secret-safe-docs (rubric v4) and keep sensitive on extracted arguments
Share the extension quality rubric between the swamp CLI and swamp-club instead of mirroring it
Registry dependency audit: audit the locked version push records in the archive, not the registry's newest match for a range specifier (swamp-club half of #3662)
@swamp/cve/dirtyfrag: report and README print the old swamp model command spelling
@swamp/cve/php-rce-2026-10: match RHEL fixes for the PHP RCEs
cve/emudhra page: Windows and macOS support, and shared CVE layer fixes (follow-up to #3710 and #3766)
Docs: extra-headers how-to systemd snippet puts a path in SWAMP_SERVE_EXTRA_HEADERS
CVE pages: horizontally scrolling code blocks are not keyboard-reachable
typed-secrets 4.6: turn the typed path on for every entry point, remove the internal option, and delete the regular-expression rewrite, the value search and the plaintext resolution of tagged fields
typed-secrets 4.5: the inline resolutions refuse or mask: placement, task selectors, child references and deferred targets refuse secrets, assert messages mask them, and the deprecated resolvers go
Docs: extension fmt never writes deno.lock and warns on a stale one (swamp-club#3717)
Docs: extension manual pages describe push and quality resolving only the deno.json import map
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
bundleExtension 'bundles on different caches do not wait for each other' test fails under CPU load
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
extension pull: safety analysis scans the bundle the extension runs
verification: run the upgrade-path test in parallel, and skip the dynamic test for no-op bumps
S3-backed serve: a poll that pulls one file invalidates the whole data catalog, so the next query re-reads every version
swamp-extensions: CI check that every manifest declares license: and ships a LICENSE file
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
stagecraft: a factory-wide read of work items waiting on a person (no studio, no per-item status loop)
stagecraft: rebind a work item to another tracker (mirrored built-in tickets to Jira)
s3-datastore: first push on a fresh cache prints 'Index merge failed' for a missing local .datastore-index.json
swamp-extensions: use explicit npm:/jsr: specifiers in root extensions/models
stagecraft: studio state_test 'after its event stream reconnects' is timing-flaky under load
Activity projector fails with ZooKeeper "Bad version" error on swamp.score_grants during keeper instability
s3-datastore: model-scoped pullChanged lists and walks the whole namespace
extension safety analyzer does not warn on node:child_process or cluster subprocess spawning
extension push: a swamp-quality-ignore directive after a comment holding an apostrophe is silently ignored
Relationships
#3561 VaultService capability errors label the vault instance name as its type
Opened by zack · 10/16/2026· Shipped 10/16/2026
The require* helpers in src/domain/vaults/vault_service.ts (requireDeleteProvider, requireAnnotationProvider, requireRefreshHookProvider, and requireExistenceProvider added for swamp-club#3557) throw messages of the form: Vault 'name' (type: X) does not support ... where X is provider.getName(). For local_encryption and mock, getName() returns the vault instance name, not the vault type, so the message reads Vault 'erp' (type: erp) and misleads the reader. The actual type is in the service's vaultTypes map. Found by the code review on swamp-club#3557; pre-existing in three siblings and copied by the fourth for consistency, so filed separately. Fix: read the type from the vaultTypes map (or drop the parenthetical) in all four helpers, with a test on the message.
Shipped
Click a lifecycle step above to view its details.