151 Commits

Author SHA1 Message Date
Sameen Karim a27a4f5ad9 rename flag to --skip-prs 2026-03-18 01:02:59 -04:00
Sameen Karim f66e95cac9 add sticky header to view tui 2026-03-13 04:40:21 -04:00
Sameen Karim 2879cfe9b1 add links to downstack prs in body 2026-03-13 03:34:05 -04:00
Sameen Karim f3a797b250 rebase lowest unmerged branch with tip of trunk 2026-03-13 03:08:50 -04:00
Sameen Karim d5903fe4cd hyperlinked PRs in output 2026-03-13 02:30:52 -04:00
Sameen Karim 49e05a0049 interactive prompt or autogenerate for pr title 2026-03-13 02:22:19 -04:00
Sameen Karim 34eeac434f clean up duplicate msgs 2026-03-13 01:48:53 -04:00
Sameen Karim 1520353f58 skip interactive prompt if prefix and numbering is set 2026-03-13 00:40:55 -04:00
Sameen Karim 3a7700e5cb consistent merged check 2026-03-12 22:51:11 -04:00
Sameen Karim 10c3e1b89f update description to reflect base as parent head sha 2026-03-12 21:08:05 -04:00
Sameen Karim deed1ed3e2 rm old if 2026-03-12 21:05:39 -04:00
Sameen Karim 7d3ceb4975 typo cleanup 2026-03-12 20:26:31 -04:00
Sameen Karim 487f148ff2 Fix workflow permissions warning 2026-03-12 20:20:54 -04:00
Sameen Karim 50c8999f78 add basic tests 2026-03-12 19:13:05 -04:00
Sameen Karim c2ddf60fb1 Add testable interfaces for git and github packages
Introduce Ops interface and MockOps for git operations, and ClientOps
interface with MockClient for GitHub API operations. This enables
command-level tests to inject mocks without changing production code.

- git.Ops interface wraps all 34 public git functions
- Package-level functions now delegate through a swappable ops variable
- SetOps()/CurrentOps() allow tests to inject MockOps
- github.ClientOps interface covers all Client methods
- MockClient provides configurable function-field test doubles
- All defaults return zero values; no-op for error returns

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-12 14:02:10 -04:00
Sameen Karim c1aa1f2aad abbreviated workflow to quickly add to stacks 2026-03-12 13:30:06 -04:00
Sameen Karim 07ea259bcb checkout for local stacks 2026-03-12 10:25:42 -04:00
Sameen Karim 9c8d2fb9a3 block add to stack if all branches merged 2026-03-12 09:25:57 -04:00
Sameen Karim d5305eb4ba improved handling of merged branches 2026-03-12 09:24:32 -04:00
Sameen Karim b7c15c1da6 interactive terminal ui for view 2026-03-12 01:26:51 -04:00
Sameen Karim 071748c3f4 handle edges cases from review 2026-03-12 01:21:38 -04:00
Sameen Karim 7767bb499d handle rebase restore failures 2026-03-12 00:37:51 -04:00
Sameen Karim b9bfd8644f init as empty slice 2026-03-11 23:23:01 -04:00
Sameen Karim e4b0b6e6e9 use cached pr info 2026-03-11 23:07:58 -04:00
Sameen Karim 423f492ecb check if empty stack 2026-03-11 21:36:12 -04:00
Sameen Karim 9dc7980468 output msgs nits 2026-03-11 21:33:57 -04:00
Sameen Karim 910b69ce71 force push with lease by default 2026-03-11 15:24:58 -04:00
Sameen Karim c2a11067c6 show pr status in view 2026-03-11 15:15:16 -04:00
Sameen Karim d77d2fe2d0 update readme 2026-03-11 09:31:24 -04:00
Sameen Karim 5937a75151 addressing review comments 2026-03-11 09:15:55 -04:00
Sameen Karim 03c4b92270 enable git rerere 2026-03-11 01:29:49 -04:00
Sameen Karim f1421adfb4 rebase onto for handling squashed prs 2026-03-11 00:01:14 -04:00
Sameen Karim 2661ee705f sync command to fetch, rebase, and push 2026-03-10 19:24:54 -04:00
Sameen Karim cf62538481 sync state of prs in stack 2026-03-10 19:08:15 -04:00
Sameen Karim 25ff8a15c7 schema for storage format 2026-03-10 17:08:39 -04:00
Sameen Karim fdaa11fba0 updated storage format 2026-03-10 17:06:05 -04:00
Sameen Karim 3bf143c5e5 collect feedback via discussions 2026-03-10 01:46:06 -04:00
Sameen Karim b39609a8d7 disambiguate for multiple stacks 2026-03-10 01:10:28 -04:00
Sameen Karim f3db397593 block init inside an existing stack 2026-03-10 00:07:38 -04:00
Sameen Karim 157d87c045 rename update to rebase 2026-03-09 17:06:38 -04:00
Sameen Karim 86d342e88f delete stack locally 2026-03-09 09:51:35 -04:00
Sameen Karim ad9d170f58 push branches and create prs 2026-02-18 04:15:54 -05:00
Sameen Karim 58d154999d placeholders for checkout and merge 2026-02-18 03:57:18 -05:00
Sameen Karim cc21c25589 cascading rebase 2026-02-18 03:18:09 -05:00
Sameen Karim 775d0b3ef3 navigation commands 2026-02-18 02:13:11 -05:00
Sameen Karim 2536e9a5d4 view stack 2026-02-17 19:35:26 -05:00
Sameen Karim 8ade8bc521 stack init and add 2026-02-17 12:09:24 -05:00
Sameen Karim de5a93709c basic terminal setup 2026-02-13 07:57:36 -05:00
Sameen Karim c6da4fcc1a init gh cli extension 2026-02-05 00:29:25 -05:00
Sameen Karim f28ab2ced3 update license 2026-02-05 00:11:59 -05:00