| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Journal remote-only parent publications independently from local branch backups, use explicit push leases, and retain cumulative recovery checkpoints across keep-going stacks. Read GitHub PR details through REST rather than version-dependent gh pr view fields. Add real-Git regression coverage and patch changesets.
| Back | FazBrowse Home | New Git URL |
Why
After editing a stack parent locally, stack sync --apply can repair and publish its child while leaving the remote parent at the old commit. Separately, older GitHub CLI versions omit headRepository.nameWithOwner, causing sync to reject valid PR JSON.
What Changes
Bare sync remains a non-mutating preview. Publication is scoped to the selected stack, includes parents with remote-only children, and refuses diverged or unknown remote tips. Explicit expected-tip leases guard new parent-publication pushes; these pushes do not implicitly publish tags.
Undo Boundaries
A remote-only publication must not be undone by resetting the local parent. The journal therefore records each destination's before/after tips separately from local branch backups. For example, a parent that started at local A2 / remote A1 returns to that exact split after undo.
Checkpoints precede publication and retain earlier stacks' recovery data during keep-going runs. Undo handles partial publication and partial rollback, but refuses unexpected remote tips. Journals containing remote updates use version 2 so older CLIs reject rather than ignore them; version 1 journals remain readable.
Scope
Independent fixes for the behaviors reported in #21 and #41, with regression tests, documentation, and patch changesets. Request-concurrency work in #43 and CI repository settings are not changed.
Verification
GIT_CONFIG_GLOBAL=/dev/null GIT_CONFIG_SYSTEM=/dev/null bun run test bun run typecheck bun run format:check bun run lint bun run package:smoke bun run changeset:status --since origin/main bun src/cli.ts --help bun src/cli.ts sync --help bun src/cli.ts undo --help git diff --check163 tests pass, with no skipped or expected-failure regressions. Real-Git fixtures cover fork/origin tips, missing refs, stale leases, scoped previews, checkpoint failures, partial publication/undo, keep-going recovery, and tag suppression. The GitHub detail adapter was also smoke-tested with a read-only lookup of #41.