jjpr releases
← Back to jjpr · RSS
-
- fix *(graph)* Truncate commit ids by chars, not bytes
-
- fix *(watch)* [**breaking**] Give up after a failing submit, refresh, or merge phase
- other *(mutants)* Skip a sweep, and stop reporting zeros as a pass
-
- feat *(auth)* Report why forge detection failed, and add --remote
- other *(config)* Document the [identity] section
- other Format the tree with rustfmt's 2024 style edition
- other Enforce cargo fmt and document the per-change gates
-
- fix *(forge)* Ignore empty path components in remote URLs
- other Fail CI when jj is missing instead of skipping silently
- other *(mutants)* Force diff prefixes so the gate cannot silently pass
- other *(mutants)* Ignore mutants.out and record what triage gets wrong
-
- other *(forge)* Reject a remote path missing either owner or repo
- other *(graph)* Cover the segment link when the leaf is traversed first
- other *(mutants)* Mutation-test changed code on PRs and pushes
- other Install jj so the integration suites actually run
- other *(release)* 0.36.1
-
- feat Recognize GitHub native stacks; add get_stack for the merge pre-flight
- feat *(submit)* Refuse to publish both copies of a divergent change
- fix *(merge)* Screen the whole segment range for conflicts before pushing
- fix *(jj)* Treat a bookmark line with no identity as malformed
- fix *(graph)* Never close a cycle in the adjacency list
- fix *(graph)* Key the change graph by commit id, not change id
- other *(notes)* GitHub native stacks public preview — merge unblocked
- other *(notes)* Map GitHub's stack-merge behavior and jjpr's response
- other *(notes)* Answer the three design-blocking questions
- other *(dev)* Map the reconcile machinery; why GitHub declines and what jjpr can know
- other *(agents)* Record jjpr's fuzzing specifics
- other *(recovery)* Fix the equivalent-restacks flake; assert the race that actually happens
- other *(fuzz)* Add a cargo-fuzz workspace with six targets
- other *(repo)* Ignore Playwright MCP session artifacts
- other *(fuzz)* Replay the corpus per push, explore overnight
-
- feat *(forge)* Add read-only native_stacks() probe for GitHub stacks
- feat *(merge)* Skip needless descendant rebase on merge-commit landings
- feat *(forge)* Detect dismiss-stale-approvals across all forges
- feat *(forge)* Warn when a push will dismiss standing approvals
- fix *(forge)* Detect forge from credential-embedded HTTPS remotes
- other *(forges)* Record merge, review, and dismiss-stale findings
- other *(e2e)* Add multi-forge e2e harness (GitHub, GitLab, Forgejo)
- other *(e2e)* Feature-2 dismiss-stale detection across forges
- other *(e2e)* Feature-1 skip-rebase scenario across all forges
- other *(e2e)* Point tests + docs at renamed forge-e2e-sandbox repo
- other *(repo)* Adopt AGENTS.md and decouple install from pushing
-
- feat *(cli)* Add "st" as a short alias for status
-
- fix *(forge)* Read every page of GitHub check-runs and statuses
- fix *(forge)* Size the connection pool to the request fan-out
- fix *(deps)* Bump rustls-webpki for RUSTSEC-2026-0104
- other *(forge)* Move the checks-ref rule onto PullRequest
- other *(forge)* Give status, merge, and watch one way to read PR state
- other Explain how status talks to the forge; bump to 0.34.0
- other Cover how merge and watch read forge state
- other *(forge)* Add bounded parallel map for independent forge calls
- other *(forge)* Batch GitHub PR status into one GraphQL query
- other *(merge,watch)* Batch the PR state they read
- other *(forge)* E2E-check the >100-context batch refill against real data
-
- feat *(status)* Show PR links and clearer push/sync state
- feat *(status)* Show the whole stack to trunk, author-agnostic
- feat *(identity)* Recognize your work across machines/emails (login match)
- feat *(identity)* Auto-recognize other-email work in submit/merge (Tier 2)
- feat *(identity)* Seed the watch flow
- other *(identity)* Real-forge E2E coverage for cross-identity recognition