fix(ui): hide environment variable values and mask inputs as password#284
fix(ui): hide environment variable values and mask inputs as password#284bluelovers wants to merge 3 commits intoNeuralNomadsAI:devfrom
Conversation
f750674 to
cd16800
Compare
|
I want you to perform the gatekeeper checks for latest PR state check for regressions |
|
Gatekeeper review for the latest PR state. What I understood: this PR is meant to stop exposing environment variable values in passive UI surfaces, while still allowing editing in settings via masked inputs. I reviewed the current branch diff ( Findings:
What I checked:
Non-blocking suggestion:
-- |
|
@bluelovers - Seeing the values is helpful for non-secret environment variables but I understand the requirement. |
cd16800 to
982c21b
Compare
|
Do your thing again |
|
Gatekeeper review for the latest PR state. What I understood: you wanted a fresh gatekeeper pass on the updated implementation, and specifically a check for whether it now matches your suggestion from the thread: add a per-environment-variable Conclusion: the new implementation does not match that suggestion. It still treats all environment variable values as sensitive in passive views, and it adds a local show/hide toggle in the editor instead of introducing a per-variable Findings:
What changed versus the last review:
Non-blocking suggestion:
-- |
|
I want to keep the changes minimal to avoid potential merge conflicts. Regarding the environment masking feature, implementing it might require updates to the existing configuration schema (e.g., adding an enabled field or a list of target environments). I am concerned that large-scale changes to the config structure might lead to merge difficulties or deviate from the project's design philosophy. I would prefer a solution that is as non-intrusive as possible to keep the PR focused and easy to integrate. |
|
@bluelovers - I prefer things done properly in the first go to keep the quality of the codebase high |
d15621e to
d0a0325
Compare
- Add secureEnvVars array to server config to track which env vars should be masked - Add Shield/ShieldOff toggle button per variable in the editor to mark as secure - Instance info and logs view conditionally show *** for secure variables - Case-insensitive matching using toUpperCase() for secure var lookup - Add i18n messages for secure toggle states across all locales
Keep the secure flag in the list even after the variable is removed, allowing it to persist if the variable is re-added later.
|
PR builds are available as GitHub Actions artifacts: https://github.com/NeuralNomadsAI/CodeNomad/actions/runs/23974801196 Artifacts expire in 7 days. |
1 similar comment
|
PR builds are available as GitHub Actions artifacts: https://github.com/NeuralNomadsAI/CodeNomad/actions/runs/23974801196 Artifacts expire in 7 days. |
|
Do your thing again |
|
Gatekeeper review for the latest PR state. What I understood: you wanted another fresh gatekeeper pass on the newest revision, with emphasis on regressions, implementation quality, and whether the branch now follows the earlier suggestion to support per-variable secure masking. Conclusion on the suggestion: yes, the new direction now broadly matches that suggestion. The branch introduces a Findings:
What changed versus the prior review:
Additional notes:
-- |
… editor - Remove duplicate normalizeSecureEnvVars, isSecureEnvVar, toggleSecureEnvVar - Mask value input as password when variable is marked secure in editor
|
Do your thing |
|
Gatekeeper review for the latest PR state. What I understood: another fresh gatekeeper pass on the current revision, with focus on whether the previous blockers were resolved and whether the implementation is now merge-ready. Current status:
Findings:
Why this matters:
Everything else I previously flagged appears resolved in this revision. Non-blocking suggestion:
-- |
|
@bluelovers - Are you planning to work on this, please let me know |
my agens is very dead now |
Summary
Motivation
Environment variable values (which may contain sensitive data like API keys, tokens, or secrets) were displayed in plain text across multiple UI surfaces. This change:
type="password"for value inputs, preventing shoulder-surfing and accidental exposure in screenshots or screen recordings