performance-investigation

Compares benchmark results and CPU profiles between git branches to diagnose performance regressions.

Updated Jul 24, 2026
One-click install
npx skills add https://github.com/saad-tayyab/lumora --skill performance-investigation-saad-tayyab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: performance-investigation
Source: https://github.com/saad-tayyab/lumora/tree/main/.agents/skills/performance-investigation
Command: npx skills add https://github.com/saad-tayyab/lumora --skill performance-investigation-saad-tayyab

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It helps developers identify and diagnose performance regressions between code branches by automating benchmark comparisons and CPU profile analysis, replacing slow manual profiling workflows. ## Core Features & Use Cases - Branch Benchmark Comparison: Run pnpm bench:compare to automatically benchmark a branch against main and generate a summary report. - CPU Profile Analysis: Inspect generated .cpuprofile files and their Markdown summaries to find hotspot changes in runtime internals like reactivity/batch.js. - Targeted Benchmark Loops: Run only selected benchmarks by substring for fast iteration, and use profile-diff.mjs for quick hotspot deltas between branches. - Use Case: After modifying reactivity internals, compare your feature branch against main, review the report for the largest regressions, inspect per-benchmark CPU profile summaries, and verify fixes with pnpm test runtime-runes. ## Quick Start Ask the assistant to compare the performance of your current branch against main and summarize the largest regressions with their CPU profile hotspots.

Frequently Asked Questions about performance-investigation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I compare benchmark performance between two git branches?

Run pnpm bench:compare with your branch name, and it automatically benchmarks it against main. The summary report is written to benchmarking/compare/.results/report.txt with raw JSON numbers per branch.

How to find CPU hotspots in a benchmark profile?

Each benchmark run generates .cpuprofile files plus Markdown summaries under benchmarking/compare/.profiles. Open the .md summaries first, then use node benchmarking/compare/profile-diff.mjs to see top function sample-share deltas between branches.

Can I run only specific benchmarks instead of the full suite?

Yes, pass benchmark name substrings to pnpm bench, for example pnpm bench kairo_mux kairo_deep. This runs only matching reactivity benchmarks for faster iteration during optimization work.

Why does bench:compare fail with uncommitted changes?

The bench:compare script checks out branches while running, so uncommitted changes can be lost or block checkout. Commit or stash your work before starting a comparison run.

What tests should I run after a performance optimization?

Run pnpm test runtime-runes after changing reactivity internals, since runtime reactivity regressions most often surface in the runes runtime test suite.