Update public CLI confirmation gates
This commit is contained in:
parent
66fec04e75
commit
7a80d87376
4 changed files with 250 additions and 5 deletions
|
|
@ -108,6 +108,27 @@ async function main() {
|
|||
assert(
|
||||
report.run_start.machine_error.next_actions.includes("disasmer quota status")
|
||||
);
|
||||
|
||||
const confirmation = await runDisasmer([
|
||||
"process",
|
||||
"cancel",
|
||||
"--coordinator",
|
||||
"127.0.0.1:9",
|
||||
"--json",
|
||||
]);
|
||||
assert.strictEqual(confirmation.signal, null, confirmation.stderr);
|
||||
assert.strictEqual(confirmation.code, 23, confirmation.stderr);
|
||||
const confirmationReport = JSON.parse(confirmation.stdout);
|
||||
assert.strictEqual(confirmationReport.status, "confirmation_required");
|
||||
assert.strictEqual(confirmationReport.coordinator_request_sent, false);
|
||||
assert.strictEqual(confirmationReport.machine_error.category, "policy");
|
||||
assert.strictEqual(
|
||||
confirmationReport.machine_error.process_exit_code_applied,
|
||||
true
|
||||
);
|
||||
assert(
|
||||
confirmationReport.next_actions.some((action) => action.includes("--yes"))
|
||||
);
|
||||
}
|
||||
|
||||
main()
|
||||
|
|
|
|||
|
|
@ -92,6 +92,11 @@ expect(
|
|||
"locality failure safe guidance",
|
||||
/If direct transfer or locality assumptions fail[\s\S]*connectivity-category safe failures[\s\S]*coordinator bulk relay was not used/
|
||||
);
|
||||
expect(
|
||||
criteria,
|
||||
"mutating commands require confirmation",
|
||||
/Mutating or dangerous commands support `--yes`[\s\S]*confirmation-required safe failure[\s\S]*do not send coordinator requests/
|
||||
);
|
||||
expect(
|
||||
cliFirstAcceptance,
|
||||
"CLI-first acceptance report",
|
||||
|
|
@ -202,6 +207,8 @@ for (const [name, pattern] of [
|
|||
["CLI error classifier coverage", /fn cli_error_classifier_distinguishes_mvp_failure_categories\(\)/],
|
||||
["CLI command exit-code coverage", /fn command_report_exit_code_marks_command_failures_only\(\)/],
|
||||
["CLI top-level logout alias coverage", /fn top_level_logout_alias_removes_only_cli_session_state\(\)/],
|
||||
["CLI confirmation gate helper", /fn confirmation_required_report[\s\S]*coordinator_request_sent[\s\S]*confirmation_required/],
|
||||
["CLI mutating confirmation coverage", /fn mutating_commands_require_yes_before_side_effects\(\)/],
|
||||
["CLI run rejection category coverage", /fn run_rejection_reports_machine_readable_error_category\(\)/],
|
||||
["CLI locality failure classifier", /fn classify_cli_error_message\(message: &str\)[\s\S]*message_mentions_locality_failure\(&message\)[\s\S]*return "connectivity"/],
|
||||
["CLI locality failure report helper", /fn task_locality_failure_from_reason\(reason: &Value\) -> Value[\s\S]*coordinator_bulk_relay_used[\s\S]*safe_next_actions/],
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue