FE-1505: Time each interviewer turn by purpose - #9347
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
PR SummaryLow Risk Overview A new The brunch-agent dev app registers OpenTelemetry via Tests cover the purpose splitter, incremental timing persistence under hard stop, and a baseline fixture path that refuses the first sweep then repairs so repair timings are exercised. Reviewed by Cursor Bugbot for commit 45ab0cd. Bugbot is set up for automated code reviews on this repo. Configure here. |
74e157d to
0f9ff91
Compare
5ce8bb3 to
ef9b8ab
Compare
0f9ff91 to
35549b9
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 35549b9. Configure here.
Record Flue wall-clock timings in run artifacts so latency evidence no longer relies on token-volume inference. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Allow short cross-check runs and persist each completed turn's timing records immediately so interrupted runs retain evidence. Co-authored-by: Cursor <cursoragent@cursor.com>
Select the applied sweep explicitly now that timing coverage exercises a refused repair path, and allow the incremental-write probe enough time under the full suite. Co-authored-by: Cursor <cursoragent@cursor.com>
The purpose-splitter unit test imports Flue observation types, so the hermetic entry-point inventory has to name it or the architecture gate fails. Co-authored-by: Cursor <cursoragent@cursor.com>
ef9b8ab to
aa0c7f4
Compare
35549b9 to
45ab0cd
Compare


🌟 What is the purpose of this PR?
Condition 5 measured about 145 seconds per interviewer turn without saying where the time goes. This branch attributes each model call, compaction, and repair to a harness purpose, emits privacy-safe server telemetry spans, and makes baseline timing runs kill-safe and bounded so the per-purpose split can be read from a short run or from the Proof 0 panel run.
Draft: opened so the stack is visible end to end. The description is completed when the branch is tied off.
🔗 Related links
🚫 Blocked by
ln/fe-1506-legible-panel-status; lands after it.🔍 What does this change?
Per-purpose turn timing in the Flue binding and the baseline runner; OpenTelemetry spans in the server;
BRUNCH_BASELINE_HARD_STOPand incrementalcondition-5.timings.jsonlwrites; run-specific timing evidence preserved.Pre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
📜 Does this require a change to the docs?
The changes in this PR: