[autoresearch] baseline: system prompt quality tests (5/5 passing)
This commit is contained in:
1 parent
05cc036f6d
commit
60b0101717
142 files changed
+18589
-9947
No files matched your search
@@ -0,0 +1,100 @@
|
||||
---
|
||||
description: Profile-driven performance optimization workflow
|
||||
---
|
||||
|
||||
# Performance Optimization Workflow
|
||||
|
||||
**Trigger:** User provides profiling data, asks to optimize performance, or benchmarks show regression.
|
||||
|
||||
**Skill prerequisite:** Read `.agents/skills/perf-optimization/SKILL.md` before starting.
|
||||
|
||||
// turbo-all
|
||||
|
||||
## Steps
|
||||
|
||||
### 1. Load the Skill
|
||||
Read the perf-optimization skill and the relevant language module:
|
||||
```
|
||||
view_file .agents/skills/perf-optimization/SKILL.md
|
||||
view_file .agents/skills/perf-optimization/languages/{language}.md
|
||||
```
|
||||
|
||||
### 2. Collect Profile Data
|
||||
|
||||
**If the user provides a profile file or URL:**
|
||||
- Use the language-appropriate extraction script (e.g., `scripts/go-pprof.sh cpu profile.prof`)
|
||||
|
||||
**If the user asks to profile from scratch:**
|
||||
- Run the extraction script in `bench` mode to generate AND analyze profiles in one step:
|
||||
```bash
|
||||
bash .agents/skills/perf-optimization/scripts/go-pprof.sh bench ./path/to/package/... BenchmarkName
|
||||
```
|
||||
|
||||
### 3. Analyze
|
||||
|
||||
Create a structured analysis document:
|
||||
```
|
||||
docs/research_logs/{component}-perf-analysis.md
|
||||
```
|
||||
|
||||
Follow the analysis methodology from SKILL.md:
|
||||
1. Focus on cumulative, trace flat back to user-land code
|
||||
2. Identify top 3-5 offenders
|
||||
3. Separate benchmark artifacts from production cost
|
||||
4. Identify irreducible floors (reference the language module's table)
|
||||
|
||||
### 4. Prioritize Fixes
|
||||
|
||||
Create an implementation plan ranking fixes by impact/risk:
|
||||
- Low risk, high impact → do first
|
||||
- High risk, any impact → do last or skip
|
||||
|
||||
Present the plan to the user for approval before proceeding.
|
||||
|
||||
### 5. Implement (one fix at a time)
|
||||
|
||||
For each fix, follow the orchestrator workflow:
|
||||
|
||||
1. **Write tests first** (TDD Red → Green)
|
||||
2. **Implement the fix**
|
||||
3. **Run all existing tests** (`go test -race ./...` or equivalent)
|
||||
4. **Benchmark immediately** — compare ns/op, B/op, allocs/op
|
||||
5. **Run quality checks** (formatter, linter, security scanner)
|
||||
6. **Commit independently** with conventional format: `perf(scope): description`
|
||||
|
||||
**Rule:** One fix per commit. Never batch optimizations.
|
||||
|
||||
### 6. Final Verification
|
||||
|
||||
After all fixes are applied:
|
||||
1. Run the full benchmark suite with `-count=3` minimum
|
||||
2. Compare against the original baseline (before any fixes)
|
||||
3. Run the complete test suite with `-race`
|
||||
4. Run all quality checks (formatter, linter, security scanner, build)
|
||||
|
||||
### 7. Document Results
|
||||
|
||||
Update the analysis document with:
|
||||
- Before/after benchmark comparison table
|
||||
- Which fixes were applied and which were skipped (and why)
|
||||
- Any remaining optimization opportunities for future sessions
|
||||
|
||||
### 8. Ship
|
||||
|
||||
Commit and present the final results to the user with:
|
||||
- Cumulative benchmark improvement table
|
||||
- List of commits
|
||||
- Any follow-up items
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Phase | Output | Gate |
|
||||
|---|---|---|
|
||||
| Profile | Raw data + extracted markdown | Data collected |
|
||||
| Analyze | `docs/research_logs/{component}-perf-analysis.md` | Top offenders identified |
|
||||
| Prioritize | Implementation plan | User approved |
|
||||
| Implement | Tests + code + benchmark per fix | Each fix passes tests |
|
||||
| Verify | Full benchmark comparison | All checks pass |
|
||||
| Ship | Conventional commits | User notified |
|
||||
Reference in new issue
Block a user