20 Commits

Author SHA1 Message Date
Sameen Karim 37e32a5137 only lock for writes 2026-03-25 20:39:48 -04:00
Sameen Karim 211e563d1f lock failure exit code 2026-03-25 20:06:18 -04:00
Sameen Karim e568d7f005 add file locking to prevent concurrent stack file edits 2026-03-25 19:14:00 -04:00
Sameen Karim 30584211db default to named branches, numbering is a flag set on init 2026-03-24 14:00:23 -04:00
Sameen Karim 260497643a exit codes by error type 2026-03-24 00:38:04 -04:00
Sameen Karim 1a1f49f2fb exit with nonzero status on error 2026-03-23 04:22:45 -04:00
Sameen Karim 50fdc33683 support commit msg editor, update stage all flag to match git commit, better error handling 2026-03-23 03:54:12 -04:00
Sameen Karim 426ad11175 wrap example commands in quotes for non TTY 2026-03-22 20:27:37 -06:00
Sameen Karim 24e18bd088 Handle SIGINT gracefully during interactive prompts
When Ctrl+C is pressed during a prompter interaction, the CLI now prints
a friendly 'Received interrupt, aborting operation' message instead of
ugly wrapped errors like 'failed to read prefix: could not prompt:
interrupt'.

Changes:
- Add isInterruptError(), printInterrupt(), and errInterrupt sentinel
  to cmd/utils.go for centralized interrupt detection
- Update all 8 prompt sites (init, push, checkout, utils) to detect
  survey's terminal.InterruptErr and exit cleanly
- Update callers of resolveStack, pickRemote, and ensureRerere to
  propagate interrupt without double-printing errors
- Change ensureRerere signature to return error so callers can abort
  on interrupt
- Add tests for interrupt detection helpers

Closes td-746bdc

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-22 20:26:26 -06:00
Sameen Karim 47d1a3faa2 use full commit sha 2026-03-22 14:20:14 -07:00
Sameen Karim 22fa202522 shared loadStack helper for all cmds 2026-03-22 08:52:03 -07:00
Sameen Karim e874e26374 push all branches atomically and resolve remotes 2026-03-21 23:35:39 -07:00
Sameen Karim 1520353f58 skip interactive prompt if prefix and numbering is set 2026-03-13 00:40:55 -04:00
Sameen Karim c1aa1f2aad abbreviated workflow to quickly add to stacks 2026-03-12 13:30:06 -04:00
Sameen Karim 9c8d2fb9a3 block add to stack if all branches merged 2026-03-12 09:25:57 -04:00
Sameen Karim 9dc7980468 output msgs nits 2026-03-11 21:33:57 -04:00
Sameen Karim cf62538481 sync state of prs in stack 2026-03-10 19:08:15 -04:00
Sameen Karim fdaa11fba0 updated storage format 2026-03-10 17:06:05 -04:00
Sameen Karim b39609a8d7 disambiguate for multiple stacks 2026-03-10 01:10:28 -04:00
Sameen Karim 8ade8bc521 stack init and add 2026-02-17 12:09:24 -05:00