You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
3. Focus on `plausible` regressions. Ignore `flaky` and `inconclusive` items unless they help explain a plausible shift.
19
19
4. Split the summary into:
20
20
-`Attributed`
21
-
-`Unattributed`
21
+
-`To bisect`
22
+
-`To watch`
23
+
5. Show the current summary
24
+
6. Execute the bisect script for each "to bisect" entry in parallel, then wait for all of them to finish.
25
+
The builds can take many hours without the script showing any output, make sure you wait for them with a long timeout.
26
+
If running in codex: round-robin poll the processes with `write_stdin` and 1 hour timeout (the configuration might cap this at a lower timeout in practice)
27
+
7. Collect the bisect results and move any benchmarks that were attributed by the bisections.
28
+
8. Show the final summary. Note any failed bisects.
22
29
23
30
## Useful JSON Queries
24
31
```bash
@@ -67,10 +74,16 @@ git diff --stat GOOD..BAD
67
74
68
75
## Output Contract
69
76
- List findings first, not process notes.
70
-
- Keep two top-level sections: `Attributed` and `Unattributed`.
77
+
- Keep three top-level sections (if not empty): `Attributed` and `To bisect` and `To watch`
71
78
- In the attributed section, use this header format: `abcd1234efgh | author@oracle.com | Full subject`
72
-
- In the unattributed section, say whether the item looks real, flaky, or likely the same cause as another attributed item.
79
+
- Unattributed changes that look plausible go to "to bisect", flaky ones go to "to watch"
80
+
- In the "to bisect" section, add an invocation (don't execute yet) of `scripts/bisect_benchmark_regression.py` that can bisect it (use unabbreviated commits in this case)
81
+
- In the "to watch" section, say whether the item looks flaky, or likely the same cause as another attributed item.
73
82
- Do not abbreviate commit subjects.
74
83
- Keep author emails.
75
84
- Abbreviate commit IDs to 12 characters.
76
-
- Do not list every benchmark; only the worst examples from each affected suite.
85
+
- Do not list every benchmark if there are many; only the worst examples from each affected suite. If you didn't list all, say "and X others".
86
+
87
+
## Guardrails
88
+
- If the script or you can't find `bench-cli`, ask the user to provide it from the `bench-server` repo.
89
+
- Don't submit more than 5 bisect jobs. If there are more in the "to bisect" list, pick 5 that look the most serious and leave the rest as "to bisect".
0 commit comments