Skip to content

fix(cli): fail closed on destructive confirmations [EXT-69] - #292

Merged
ruby-automation merged 2 commits into
mainfrom
ext-69-fail-safe-bulk-confirmation
Sep 28, 2026
Merged

ruby-automation merged 2 commits into
mainfrom
ext-69-fail-safe-bulk-confirmation

Conversation

@ruby-automation

@ruby-automation ruby-automation commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Add Prompt.confirm_destructive?/1 with a fail-closed default: false.
  • Use it for filter-only issue unassign and both issue move confirmation paths.
  • Preserve the affirmative Prompt.yes?/1 behavior for non-destructive prompts.
  • Add EOF, blank, invalid-input, explicit-answer, and command-level mutation guards.
  • Record the superseding Phase 12 confirmation decision and update the command documentation.

Verification

  • mise exec -- mix ci — passed (606 app tests, 58 root tests, Credo clean, audits clean).
  • Focused prompt, unassign, and move tests — passed (126 tests).
  • git diff HEAD^ HEAD --check — passed.

Linear issue: https://linear.app/the-rubyists/issue/EXT-69/make-bulk-mutation-confirmation-fail-safe-on-eof-and-non-tty-input

@ruby-automation ruby-automation changed the title EXT-69: Fail closed on destructive confirmations fix(cli): fail closed on destructive confirmations [EXT-69] Sep 28, 2026
@ruby-automation
ruby-automation merged commit d5ee641 into main Sep 28, 2026
6 checks passed
@ruby-automation
ruby-automation deleted the ext-69-fail-safe-bulk-confirmation branch September 28, 2026 03:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants