Sprint B.6: CLI guardrails — --dry-run, protected_repos, VULP_AGENT marker
- global --dry-run: sync/release/init/collab/license print 'DRY RUN: would...' and exit 0 (no auth needed for previews where possible) - config protected_repos (name/basename, case-insensitive): mutating commands exit 1 on listed repos unless --force; checked before dry-run - VULP_AGENT env: activity::log centrally appends '· via agent' to detail, covering both CLI and TUI writers - sync: unknown --action now rejected before touching any repo
This commit is contained in:
1 parent
f1432d1cd3
commit
8119cdeba7
8 files changed
+133
-14
No files matched your search
+4
-1
@@ -22,6 +22,9 @@ pub async fn run(cli: Cli) -> Result<()> {
|
||||
Some(Commands::Auth(args)) => crate::auth::run(args, &cfg).await,
|
||||
|
||||
// ── everything else: non-interactive CLI ──
|
||||
Some(cmd) => crate::cli_cmds::run(cmd, cli.json, &cfg).await,
|
||||
Some(cmd) => {
|
||||
let guard = crate::cli_cmds::Guard { dry_run: cli.dry_run, force: cli.force };
|
||||
crate::cli_cmds::run(cmd, cli.json, guard, &cfg).await
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user