Skip to content

perf(status): batch git process spawning in status command#671

Merged
kaihowl merged 2 commits intomasterfrom
claude/review-issues-plans-e8d3n
Apr 6, 2026
Merged

perf(status): batch git process spawning in status command#671
kaihowl merged 2 commits intomasterfrom
claude/review-issues-plans-e8d3n

Conversation

@kaihowl
Copy link
Copy Markdown
Owner

@kaihowl kaihowl commented Apr 5, 2026

Replace N+1 sequential git calls with 2 git calls regardless of how many
commits have pending measurements:

  • Add get_commits_with_notes_content() that runs git notes list followed
    by a single git log --no-walk --notes= to fetch commit metadata and
    note content together in one pass.
  • Update gather_pending_status() to use the new batch function, eliminating
    the per-commit get_notes_for_commit() and get_commit_details() calls.
  • Remove now-dead get_notes_for_commit() and get_commit_details() functions.

Closes #608

https://claude.ai/code/session_01Gf2dy3haEC63m3f3qC4zYG

Replace N+1 sequential git calls with 2 git calls regardless of how many
commits have pending measurements:

- Add get_commits_with_notes_content() that runs git notes list followed
  by a single git log --no-walk --notes=<ref> to fetch commit metadata and
  note content together in one pass.
- Update gather_pending_status() to use the new batch function, eliminating
  the per-commit get_notes_for_commit() and get_commit_details() calls.
- Remove now-dead get_notes_for_commit() and get_commit_details() functions.

Closes #608

https://claude.ai/code/session_01Gf2dy3haEC63m3f3qC4zYG
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 5, 2026

Performance Report

Performance Results

Audit Results

Auditing measurement "add-benchmark" (os=ubuntu-22.04/rust=beta):
  ⏭️ 'add-benchmark'
  Only 1 historical measurement found. Less than requested min_measurements of 10. Skipping test.
  Aggregation: min
  z-score (mad): ↓
  Head: μ: 15.5ms σ: N/A MAD: 0ns n: 1
  Tail: μ: 20.1ms σ: N/A MAD: 0ns n: 1
   [-22.79% – +0.00%] █▁

Auditing measurement "add-benchmark" (os=ubuntu-22.04/rust=stable):
  ⏭️ 'add-benchmark'
  Only 1 historical measurement found. Less than requested min_measurements of 10. Skipping test.
  Aggregation: min
  z-score (mad): ↑
  Head: μ: 20.3ms σ: N/A MAD: 0ns n: 1
  Tail: μ: 14.5ms σ: N/A MAD: 0ns n: 1
   [+0.00% – +39.96%] ▁█

Auditing measurement "release-binary-size" (os=ubuntu-22.04/rust=stable):
  ✅ 'release-binary-size'
  Aggregation: min
  z-score (stddev): ↑ 1.24
  Head: μ: 8.1MB σ: N/A MAD: 0B n: 1
  Tail: μ: 8MB σ: 45.9kB MAD: 38.5kB n: 35
   [-1.57% – +1.16%] ▇▇█▆▆▆▆▆▆▆▆▆▆▆▅▅▅▅▅▅▅▅▅▅▅▅▄▄▄▄▄▁███▇

Auditing measurement "report" (os=ubuntu-22.04/rust=beta):
  ✅ 'report'
  Aggregation: min
  z-score (stddev): ↓ 1.31
  Head: μ: 19.2ms σ: N/A MAD: 0ns n: 1
  Tail: μ: 22.8ms σ: 2.7ms MAD: 299.6µs n: 36
   [-28.11% – +6.29%] ▇▇▇▇▇▆█▂▂▇▇▇▆▂▂▇▇▇▇▆▁▂█▆▁▇▂▇▇▇▇▆▇▇▇▂▃

Auditing measurement "report" (os=ubuntu-22.04/rust=stable):
  ✅ 'report'
  Aggregation: min
  z-score (stddev): ↑ 0.29
  Head: μ: 24.6ms σ: N/A MAD: 0ns n: 1
  Tail: μ: 23.9ms σ: 2.2ms MAD: 356.8µs n: 36
   [-29.22% – +8.43%] ▁▆▆▂▆▆▂█▇▁▇▇▇▆▆▆▆▇▇▆▆▆▇▇▇▆▇█▆▇▇▆▆▆▇▆▇

Auditing measurement "report-benchmark" (os=ubuntu-22.04/rust=beta):
  ⏭️ 'report-benchmark'
  Only 1 historical measurement found. Less than requested min_measurements of 10. Skipping test.
  Aggregation: min
  z-score (stddev): ↓
  Head: μ: 18.9ms σ: N/A MAD: 0ns n: 1
  Tail: μ: 24.5ms σ: N/A MAD: 0ns n: 1
   [-22.87% – +0.00%] █▁

Auditing measurement "report-benchmark" (os=ubuntu-22.04/rust=stable):
  ⏭️ 'report-benchmark'
  Only 1 historical measurement found. Less than requested min_measurements of 10. Skipping test.
  Aggregation: min
  z-score (stddev): ↑
  Head: μ: 25.1ms σ: N/A MAD: 0ns n: 1
  Tail: μ: 17.9ms σ: N/A MAD: 0ns n: 1
   [+0.00% – +40.05%] ▁█

Auditing measurement "report-size" (os=ubuntu-22.04/rust=beta):
  ✅ 'report-size'
  Aggregation: min
  z-score (stddev): ↑ 1.67
  Head: μ: 20.3kB σ: N/A MAD: 0B n: 1
  Tail: μ: 15.3kB σ: 3kB MAD: 2.9kB n: 36
   [-18.78% – +31.30%] ████████▄▄▄▄▄▄▄▄▄▄▄▄▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█

Auditing measurement "report-size" (os=ubuntu-22.04/rust=stable):
  ✅ 'report-size'
  Aggregation: min
  z-score (stddev): ↑ 1.67
  Head: μ: 20.3kB σ: N/A MAD: 0B n: 1
  Tail: μ: 15.3kB σ: 3kB MAD: 2.9kB n: 36
   [-18.78% – +31.30%] ████████▄▄▄▄▄▄▄▄▄▄▄▄▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█

Auditing measurement "report-size-benchmark" (os=ubuntu-22.04/rust=beta):
  ⏭️ 'report-size-benchmark'
  Only 8 historical measurements found. Less than requested min_measurements of 10. Skipping test.
  Aggregation: median
  z-score (stddev): →
  Head: μ: 20.3kB σ: N/A MAD: 0B n: 1
  Tail: μ: 20.3kB σ: 0B MAD: 0B n: 8
   [+0.00% – +0.00%] ▅▅▅▅▅▅▅▅▅

Auditing measurement "report-size-benchmark" (os=ubuntu-22.04/rust=stable):
  ⏭️ 'report-size-benchmark'
  Only 8 historical measurements found. Less than requested min_measurements of 10. Skipping test.
  Aggregation: median
  z-score (stddev): →
  Head: μ: 20.3kB σ: N/A MAD: 0B n: 1
  Tail: μ: 20.3kB σ: 0B MAD: 0B n: 8
   [+0.00% – +0.00%] ▅▅▅▅▅▅▅▅▅

Overall: PASSED (11/11 groups passed)

Measurement Storage Size

Live Measurement Size Report
============================

⚠️  Shallow clone detected - measurement counts may be incomplete (see FAQ)

Number of commits with measurements: 312
Total measurement data size (on-disk (compressed)): 417.4kB

Repository Statistics (for context):
-------------------------------------
  Loose objects: 0 (0B)
  Packed objects: 11997 (2.8MB)
  Total repository size: 2.8MB

Created by git-perf

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 5, 2026

🧬 PR Mutation Testing Results

Status: ✅ All mutants caught - excellent test coverage!

Mutation Testing Metrics (Changed Code Only)

Metric Count
Total Mutants 5
✅ Caught 3
❌ Missed 0
⏱️ Timeout 0
🚫 Unviable 2

Mutation Score: 100.0% (3/3 viable mutants caught)

✅ Great Job!

All mutants in your changes were caught by the test suite. Your code is well-tested!


Incremental mutation testing only tests code modified in this PR.
Full mutation testing runs weekly to catch issues in unchanged code.

📦 Artifacts

Download full mutation report

@kaihowl kaihowl merged commit 8c462af into master Apr 6, 2026
24 checks passed
@kaihowl kaihowl deleted the claude/review-issues-plans-e8d3n branch April 6, 2026 06:06
@release-plz-token release-plz-token Bot mentioned this pull request Apr 6, 2026
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.

perf(status): optimize git process spawning in status command

2 participants