test(scale): calibrate the py-LSP quadratic detector to detect quadratic (#1527) - #1528
Merged
Merged
Conversation
…tic (#1527) The detector's 100x bound blocked the v0.10.1 release twice on macos-15-intel with 101.1x — and control runs on a quiet arm64 host measure the SAME curve as 57-68x, deterministically. The resolve path has never been linear for this fixture shape: per-function cost grows 0.5ms -> 1.7ms from 100 to 2000 functions, the audited short-name-lookup/no-negative-memo superlinearity now tracked as #1527. A bound calibrated as "linear plus generous overhead" on a curve that was never linear measures host constants, not complexity. The bound moves to 200x — mid-way in log space between the known ~60-100x curve and clear quadratic near 400x — so a real quadratic regression still fails by 2x margin while known behavior stops producing release-blocking false alarms on slower hosts. The measured table is pinned in the test comment; when #1527 fixes the curve, the bound comes back down to ~40x. Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The 100x bound blocked the v0.10.1 release twice on macos-15-intel (101.1x) — and quiet arm64 control runs measure the same curve deterministically (57–68x, per-function cost 0.5ms → 1.7ms from 100 → 2000 functions). The resolve path has never been linear at this fixture shape: it is the audited short-name-lookup / no-negative-memo superlinearity, now tracked as #1527 with the full measured table. The detector was flagging host constants, not a complexity change.
Bound moves to 200x — log-space midpoint between the known ~60–100x curve and clear quadratic (~400x) — so a genuine quadratic regression still fails with 2x margin while known behavior stops producing false release blocks on slower hosts. When #1527 fixes the curve, the bound tightens back to ~40x (comment in the test says exactly this).
Test-only; unblocks re-dispatching the v0.10.1 release (the #1522 fix release).