Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

v0.19.2

Latest

Choose a tag to compare

@github-actions github-actions released this 21 Jun 21:55
· 73 commits to main since this release
02e7137
This commit was created on GitHub.com and signed with GitHub’s verified signature.
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.

This release is a broad performance pass — batching git and GitHub
operations to eliminate N+1 calls across nearly every command — together
with a sync --dry-run correctness fix and cleaner sync output.

Highlights

  • sync --dry-run is now a true read-only preview. Previously it could perform side effects; it now never fast-forwards trunk, deletes branches, restacks, or pushes to GitHub — it just shows you what sync would do (#1236).
  • Faster commands across the board. Git and GitHub operations are now batched throughout submit, sync, merge, delete, create, reorder, fold, absorb, log, and the dashboard, removing per-branch N+1 calls. The global revision cache was replaced with explicit batched readers, so large stacks feel noticeably snappier.
  • Cleaner sync output. The streaming and interactive sync output was decluttered and polished, and empty phase headers are now suppressed in the interactive sync TUI (#1237, #1238, #1268).
  • Accurate file and commit counts. info and stack-info now count changed files against the stack's divergence point rather than whole history, and commit lists are based on the divergence point too — so counts reflect the branch's actual changes (#1260, #1261, #1265).

Fixes

  • Make sync --dry-run a true read-only preview (#1236).
  • Base commit lists on the divergence point, not whole history (#1265).
  • Count changed files in info against the divergence point (#1261).
  • Count changed files in stack-info against the divergence point (#1260).
  • Don't report a worktree as removed when anchor branch deletion fails (#1248).
  • Escape Slack mrkdwn special characters in share output (#1246).
  • Declutter and polish sync streaming output (#1237).
  • Suppress empty phase headers in the interactive sync TUI (#1238).
  • Polish sync output quality (#1268).

Performance

  • Batch behind-branch pulls and prefetch remote branch statuses in a parallel block on sync (#1206, #1207).
  • Batch orphaned-metadata cleanup into one transaction on sync (#1230).
  • Batch PR-info writes, warm caches, and batch revision resolution in submit planning (#1228, #1256).
  • Read external-parent remote status in one batch on submit (#1229).
  • Batch PR-info writes during consolidation merge, sync, and submit validation (#1205, #1216).
  • Batch child reparenting on insert in create (#1226) and pre-reparent of children in delete (#1227).
  • Resolve PR node IDs in one GraphQL query and batch PR state/body fetch in consolidation cleanup (#1231, #1233).
  • Batch ref deletions in DeleteBranch to match DeleteBranches (#1239).
  • Batch child metadata writes in RenameBranch (#1220).
  • Batch commit-to-branch lookups in absorb (#1221).
  • Reparent same-parent children in one pass for fold and pluck (#1222).
  • Reparent via batched ReparentBranchesToParents in reorder and flatten (#1225).
  • Warm revision and stat caches before per-branch loops (#1223).
  • Batch PR status and warm caches for the stack in stack-info (#1224).
  • Batch commit messages in the dashboard shippable rebuild (#1262).
  • Annotate the log action from batched BranchStats (#1257).
  • Read stack metadata in a single cat-file lookup (#1232).

Refactors

  • Remove the global revision cache in favor of explicit batched readers (#1258).
  • Add per-concern batch readers for branch state (#1252).
  • Bound batchByBranch fan-out and add a concurrency rule (#1264).
  • Plan flatten from batched revision/divergence values (#1253).
  • Annotate log from batched stats, keeping forge status a separate concern (#1254, #1259).
  • Trim the batch cleanup APIs (#1234).
  • Consolidate split-hunk cleanup with a deferred branch restore (#1247).
  • Extract helpers to cut duplication — applyPRMetadata, buildBatchPRNodeQuery, Plan.BranchNames(), and splitNulTerminated (#1204, #1243, #1255, #1273).
  • Remove redundant GetBranch calls in InfoAction (#1272).
  • Tidy review nits in the branch-state readers (#1263).

Chore

  • Update all Go and frontend dependencies to latest versions (#1240).
  • Add the /optimize-tests dev skill for coverage-guarded test speedups, hardened with parallel-hazard detection and a union coverage guard (#1208, #1213).
  • Parallelize the action test suite for faster runs (#1209, #1210, #1211, #1212).
  • Add a golden-output transcript harness for sync (#1217, #1218).

What's Changed

  • refactor: extract applyPRMetadata helper to remove duplication by @jonnii in #1204
  • perf: batch PR info writes during consolidation merge by @jonnii in #1205
  • feat: add /optimize-tests skill for coverage-guarded test speedups by @jonnii in #1208
  • perf(test): parallelize action-package tests and harden /optimize-tests skill by @jonnii in #1214
  • perf(test): parallelize fold/move/pluck action subtests by @jonnii in #1209
  • perf(test): parallelize sync action subtests by @jonnii in #1210
  • perf(test): parallelize 10 action subpackages' scenario tests by @jonnii in #1211
  • perf(test): parallelize root actions package tests (excluding stdin-mutating modify) by @jonnii in #1212
  • feat(skill): harden /optimize-tests with parallel-hazard detection and union coverage guard by @jonnii in #1213
  • Merging 2 PRs by @jonnii in #1215
  • perf(sync): batch behind-branch pulls by @jonnii in #1206
  • perf(sync): prefetch remote branch statuses in Phase 1 parallel block by @jonnii in #1207
  • perf: batch PR info writes during sync and submit validation by @jonnii in #1216
  • Merging 2 PRs by @jonnii in #1219
  • refactor: extract reusable golden helper and sync prompt-description helpers by @jonnii in #1217
  • test: add golden-output transcript harness for sync by @jonnii in #1218
  • perf(create): batch child reparenting on insert via ReparentBranchesRecompute by @jonnii in #1226
  • perf(submit): read external parent remote status in one batch by @jonnii in #1229
  • perf(delete): batch pre-reparent of children via ReparentBranchesToParents by @jonnii in #1227
  • Merging 12 PRs by @jonnii in #1235
  • perf(engine): batch child metadata writes in RenameBranch by @jonnii in #1220
  • perf(absorb): batch commit-to-branch lookups via FindBranchesForCommits by @jonnii in #1221
  • perf(fold,pluck): reparent same-parent children via ReparentBranches by @jonnii in #1222
  • perf: warm revision/stat caches before per-branch loops by @jonnii in #1223
  • perf(stack-info): batch PR status and warm caches for the stack by @jonnii in #1224
  • perf(reorder,flatten): reparent via per-branch ReparentBranchesToParents by @jonnii in #1225
  • perf(submit): batch PR-info writes and warm caches during planning by @jonnii in #1228
  • perf(sync): batch orphaned-metadata cleanup in one transaction by @jonnii in #1230
  • perf(merge): resolve PR node IDs in one GraphQL query by @jonnii in #1231
  • perf(git): read stack metadata in one cat-file lookup by @jonnii in #1232
  • perf(merge): batch PR state/body fetch in consolidation cleanup by @jonnii in #1233
  • refactor: trim batch cleanup APIs by @jonnii in #1234
  • perf: batch ref deletions in DeleteBranch to match DeleteBranches by @jonnii in #1239
  • chore: update all dependencies to latest versions by @jonnii in #1240
  • refactor: add Plan.BranchNames() to eliminate repeated branch-name extraction loops by @jonnii in #1243
  • feat: Postgres-backed repo store for the API server by @jonnii in #1244
  • feat: add PostgreSQL repo-config store for the API server by @jonnii in #1067
  • feat: serve API server repos from the Postgres store by @jonnii in #1068
  • fix: escape Slack mrkdwn special chars in share output by @jonnii in #1246
  • refactor: consolidate split hunk cleanup with deferred branch restore by @jonnii in #1247
  • fix: don't report worktree as removed when anchor branch deletion fails by @jonnii in #1248
  • refactor: extract buildBatchPRNodeQuery to eliminate duplicated GraphQL boilerplate by @jonnii in #1255
  • test(store): use testcontainers locally instead of a fixed local Postgres by @jonnii in #1266
  • Merging 13 PRs by @jonnii in #1267
  • refactor(engine): per-concern batch readers for branch state by @jonnii in #1252
  • refactor(flatten): plan from batched revision/divergence values by @jonnii in #1253
  • refactor(log): annotate from batched stats, forge status separate by @jonnii in #1254
  • perf(submit): batch revision resolution in planning by @jonnii in #1256
  • perf(log): annotate the log action from batched BranchStats by @jonnii in #1257
  • refactor(git): remove the global revision cache by @jonnii in #1258
  • refactor: finish annotation batching, drop dead reload hook, add guardrail by @jonnii in #1259
  • fix(stack-info): count changed files against the divergence point by @jonnii in #1260
  • fix(info): count changed files against the divergence point by @jonnii in #1261
  • perf(dashboard): batch commit messages in shippable rebuild by @jonnii in #1262
  • refactor: tidy review nits in branch-state readers by @jonnii in #1263
  • refactor(engine): bound batchByBranch fan-out, add concurrency rule by @jonnii in #1264
  • fix(engine): base commit lists on the divergence point, not whole history by @jonnii in #1265
  • Sync output quality by @jonnii in #1269
  • fix: make sync --dry-run a true read-only preview by @jonnii in #1236
  • fix: declutter and polish sync streaming output by @jonnii in #1237
  • fix: suppress empty phase headers in the interactive sync TUI by @jonnii in #1238
  • fix: polish sync output quality by @jonnii in #1268
  • refactor: remove redundant GetBranch calls in InfoAction by @jonnii in #1272
  • refactor: extract splitNulTerminated helper in git package by @jonnii in #1273

Full Changelog: v0.19.1...v0.19.2

Contributors

jonnii
Assets 15
Loading

AltStyle によって変換されたページ (->オリジナル) /