Skip to content

feat(config): add secure configuration management commands - #78

Merged
benbenbang merged 1 commit into
mainfrom
feature/30-config-editor
Oct 9, 2026
Merged

benbenbang merged 1 commit into
mainfrom
feature/30-config-editor

Conversation

@benbenbang

Copy link
Copy Markdown
Member

Provide safe, predictable configuration workflows while preventing accidental credential exposure and unsafe file access.

  • Resolve local jevwise.toml files with explicit-path and precedence rules, bounded reads, strict file validation, and no unsafe fallback or ancestor searching.
  • Add config init, config view, and config edit for global, local, and explicit configurations without overwriting files or copying credentials from flags or the environment.
  • Secure configuration files with restrictive permissions, safe staging and publishing, trusted-parent checks, symlink protection, shared validation, field-level API key redaction, and direct editor execution.
  • Document configuration behavior, command usage, and privacy boundaries, with coverage for path resolution, file helpers, editor handling, smoke tests, full gates, and race tests.

@benbenbang
benbenbang enabled auto-merge (rebase) October 9, 2026 08:24
@benbenbang
benbenbang force-pushed the feature/30-config-editor branch from 7bf057b to 9d19999 Compare October 9, 2026 08:31
@github-actions github-actions Bot added documentation Improvements or additions to documentation triage labels Oct 9, 2026
Add `config edit` with explicit editor override, selected TOML editor support, and Vim on PATH as the default. Execute the editor directly without shell or argument parsing, passing the absolute selected filename as one argument and forwarding terminal streams through the command context.

Reject missing, nonregular, and final-symlink targets, while allowing Vim repair of invalid TOML and explicit-editor repair of invalid, mistyped, or oversized configuration files. Ignore `EDITOR`, `VISUAL`, and decision timeouts, and bound post-exit pipe waits without managing descendants.

Document the security boundaries and cover editor selection, repair, process errors, pipe handling, native smoke tests, full gates, and race tests.
@benbenbang
benbenbang force-pushed the feature/30-config-editor branch from 9d19999 to 3cd1871 Compare October 9, 2026 08:35
@benbenbang
benbenbang merged commit d28533d into main Oct 9, 2026
5 checks passed
@benbenbang
benbenbang deleted the feature/30-config-editor branch October 9, 2026 08:37
@ptah-bw-technical-app

Copy link
Copy Markdown

🎉 This PR is included in version 1.4.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation released triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant