Skip to content

fix(jj): read change counts from the diff summary - #711

Merged
sirmalloc merged 1 commit into
sirmalloc:mainfrom
vishnujayvel:oss/occ-v5d-jj-summary-counts
Oct 29, 2026
Merged

sirmalloc merged 1 commit into
sirmalloc:mainfrom
vishnujayvel:oss/occ-v5d-jj-summary-counts

Conversation

@vishnujayvel

Copy link
Copy Markdown
Contributor

fix(jj): read change counts from the diff summary

JJ Insertions and JJ Deletions can display numbers from filenames such as 777 insertions.txt instead of the actual change totals. Read the totals from the final jj diff --stat summary line so filenames cannot override them.

Type: bug fix · Risk: low — the change only limits where the existing count parser reads totals.

Changes

File Change
src/utils/jj.ts Parse insertion and deletion counts from the final summary line.
src/utils/__tests__/jj.test.ts Add regressions for filenames containing insertion and deletion counts.

How verified

  • Before the fix, bun test src/utils/__tests__/jj.test.ts failed both new regressions: 777 insertions instead of 1, and 888 deletions instead of 1.
  • After the fix, bun test src/utils/__tests__/jj.test.ts src/widgets/__tests__/JjInsertions.test.ts src/widgets/__tests__/JjDeletions.test.ts passed all 23 tests, including existing singular/plural, empty-output, and command-failure cases.
  • bun run lint passed.

@sirmalloc
sirmalloc merged commit a88d544 into sirmalloc:main Oct 29, 2026
3 checks passed
pcvelz added a commit to pcvelz/ccstatusline-usage that referenced this pull request Oct 29, 2026
Upstream: Extra Usage Limit widget (sirmalloc#756), live widget preview while picking (sirmalloc#755), Fast Mode widget (sirmalloc#754), transcript block fallback fixes (sirmalloc#752), editor keys on a global install (sirmalloc#751), git cache TTL (sirmalloc#750), npx cached copy skip (sirmalloc#749), Block Usage hide at 100% (sirmalloc#747), Block Reset Timer hide until 100% (sirmalloc#697), fish-style branch abbreviation (sirmalloc#614), jj detached HEAD (sirmalloc#705), hooks save warning (sirmalloc#703), dev reload (sirmalloc#700), merge ends at a hidden widget (sirmalloc#698), Block Forecast and Block Limit Timer widgets (sirmalloc#699), contributor guide (sirmalloc#706), POSIX path case fix (sirmalloc#707), whitespace-distinct conflict filenames (sirmalloc#709), Quick Start reorder (sirmalloc#715), bunx launch guidance (sirmalloc#714), jj diff summary counts (sirmalloc#711), powerline manual separators (sirmalloc#713), keychain credential by account (sirmalloc#532), Keychain probe timeout (sirmalloc#760), usage cache scoped per CLAUDE_CONFIG_DIR (sirmalloc#266), test isolation (sirmalloc#717, sirmalloc#753), dev-dependency bumps (sirmalloc#745)

Conflicts resolved per the standard-resolution table; fork deletions re-applied.

Hand edits outside conflicts:
- src/utils/global-command-resolution.ts: fork-rename (ccstatusline@ -> ccstatusline-usage@ in upstream's new bunx pattern)
- src/utils/__tests__/global-package-manager.test.ts: fork-rename (package dir ccstatusline-usage in upstream's new tests)
- src/utils/usage-fetch.ts: compat fix - cacheUsageData gained a fetchedAtMs arg (upstream sirmalloc#266); adapted the fork-only fetchFreshUsageData call site
- src/utils/__tests__/usage-fetch.test.ts: compat fixes - cache/lock now hashed per CLAUDE_CONFIG_DIR (usageFilePath helper) in four fork tests; upstream fableUsage renamed to fork's weeklyFableUsage; seedUsageCache takes TokenHome
- src/utils/__tests__/usage-prefetch.test.ts: compat fix - mockFetchUsageData renamed to upstream's mockFetchUsage in cleanly-merged tests
- README.md: took upstream's Quick Start move (sirmalloc#715) and dropped the fork's old copy; fork-rename of its ccstatusline@ specifiers; links to fork-deleted docs (docs/USAGE.md, docs/WINDOWS.md) replaced with the fork's inline text
- CONTRIBUTING.md: links to the fork-deleted docs/DEVELOPMENT.md pointed at the README Development section
- docs/test-retirements.md: ledger entries for the 12 upstream test renames (sirmalloc#697, sirmalloc#698, sirmalloc#700, sirmalloc#705, sirmalloc#713, sirmalloc#760)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants