Skip to content

feat: mask sensitive values via struct tags and inputs#220

Merged
josegonzalez merged 2 commits intomainfrom
203-add-sensitive-value-masking-via-struct-tags
Apr 27, 2026
Merged

feat: mask sensitive values via struct tags and inputs#220
josegonzalez merged 2 commits intomainfrom
203-add-sensitive-value-masking-via-struct-tags

Conversation

@josegonzalez
Copy link
Copy Markdown
Member

Adds explicit, struct-tag-driven masking of sensitive values in every user-facing logging path: the apply --verbose command echo, the DOKKU_TRACE=1 log, plan mutations, and any error message that surfaces a resolved Dokku command. Inputs gain a sensitive: true flag and task struct fields gain a sensitive:"true" tag; matching values are replaced with *** before output. dokku_config.config map values are always masked via a SensitiveOverride interface because the secret lives in the value, not the key. The config:set --encoded base64 form is masked alongside the raw value so the encoded argv form does not leak the secret either.

Closes #203.

Adds explicit, struct-tag-driven masking of sensitive values in every user-facing logging path: the `apply --verbose` command echo, the `DOKKU_TRACE=1` log, plan mutations, and any error message that surfaces a resolved Dokku command. Inputs gain a `sensitive: true` flag and task struct fields gain a `sensitive:"true"` tag; matching values are replaced with `***` before output. `dokku_config.config` map values are always masked via a `SensitiveOverride` interface because the secret lives in the value, not the key. The `config:set --encoded` base64 form is masked alongside the raw value so the encoded argv form does not leak the secret either. Closes #203.
@josegonzalez josegonzalez merged commit 7525e66 into main Apr 27, 2026
10 checks passed
@josegonzalez josegonzalez deleted the 203-add-sensitive-value-masking-via-struct-tags branch April 27, 2026 11:08
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.

Add sensitive value masking via struct tags

1 participant