Relationships
#3647 swamp core: a non-string sensitive value reads back as a JSON string
Opened by skunk-ape · 10/19/2026
Problem
processSensitiveResourceData (src/domain/models/data_writer.ts) stores a non-string sensitive value with JSON.stringify before vaultService.put. On read, the vault reference is resolved back to that string and not re-parsed, so a sensitive object or record field reads back as a JSON string rather than the object that was written.
Why it matters
Found while fixing swamp-club#3571: @swamp/vercel projects/projects and aliases/aliases mark the protectionBypass record sensitive (its keys are the bypass secrets), so it is vaulted whole. Anything reading stored data now sees a string where the schema says a record. The Vercel READMEs document this as a caveat.
Expected
A non-string sensitive value round-trips: the resolved value is parsed back to its original type on read (the _swamp.sensitiveFields tag could record that it was stringified).
Open
No activity in this phase yet.
Sign in to post a ripple.