perf-gate: new-row late frames are a known breach; debug popup snapshot allowed
Merged
TE
18d ago+15+15+01234567890123456789-5-5-0123456789
The cmux-next perf gate has been red on feat-cmux-next since #21825 merged, for two reasons:
- New rows a frame late. In the
new_workspacesscenario, 3 to 6 of the 50 new rows commit one frame late on the mini. The row itself is drawn from the press with no walk (walks0 in every run), but the list's commit of the insert takes 34 to 39 ms at p99 once there are 33 to 70 workspaces. This happened in feat-cmux-next runs 39292677937, 39296303954 and 39300730843. - Source guard.
DebugPopups.swift's window snapshot trips the source guard. It's a debug tool, like theControl/Debug*files already exempted.
Changes:
- Up to 8 late rows is now a
KNOWNbreach. It warns and names cx-zf6um; more than 8 fails. Once a full run shows no late rows, the ratchet fails until theKNOWNline is removed. walks0 stays blocking.DebugPopups.swiftjoins the capture allowlist.
Fixing the slow insert commit is the follow-up under cx-zf6um.
Testing
Script-only change; it parses. The scheme compile job on this PR runs the gate. Before this change, the gate's output on base showed exactly these two failures.
Changelog
none
🤖 Generated with Claude Code
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Fixes the cmux-next perf gate being red on feat-cmux-next for two failures: late new-row commits and the debug popup snapshot source guard.
- Up to 8 late new workspace rows now warn as a known breach naming
cx-zf6um; more than 8 still fails, andwalks0 stays blocking. - A full run with no late rows fails the ratchet until the known-breach line is removed, so the fix tightens the gate when it lands.
- Adds
DebugPopups.swiftto the capture allowlist since its window snapshot is a debug tool like the already-exemptedControl/Debug*files.
Script-only change; the gate runs on this PR's compile job and showed exactly these two failures on base.