feat(cli): --quiet/--yes globals; echo resolved write target; gate non-local destructive writes (#243)

RFC-011 Decision 9. Writes echo their resolved target + access path to stderr (suppress with --quiet). Destructive writes (cleanup, overwrite load, branch delete) against a non-local scope require consent: --yes, a TTY prompt, or a hard refusal for non-TTY/--json runs. Local file:// writes unaffected.
This commit is contained in:
Andrew Altshuler 2026-06-15 14:35:55 +03:00 committed by GitHub
parent a09045028f
commit 2ed05d2cb1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 295 additions and 2 deletions

View file

@ -550,6 +550,8 @@ fn remote_branch_delete_removes_branch() {
.arg("--config")
.arg(&config)
.arg("feature")
// Served target is non-local → destructive-confirm gate (RFC-011 D9).
.arg("--yes")
.arg("--json"),
));
assert_eq!(deleted["name"], "feature");