|
313 | 313 |
|
314 | 314 |
|
315 | 315 | # --------------------------------------------------------------------------- |
316 | | -# Performance dimension (PR3). Shipped at a small, ADVISORY weight - the whole |
317 | | -# pillar is bounded by a single 1.0 category cap, so even a file riddled with |
318 | | -# perf hits loses at most one health point on this dimension. Promotion to a |
319 | | -# co-equal weight waits on PR4's cross-function precision study. |
| 316 | +# Performance dimension (PR3). Originally shipped at a small, ADVISORY weight |
| 317 | +# (a single 1.0 category cap), which left the pillar reading near-perfect even |
| 318 | +# on repos dense with open perf findings. With the cross-function pass landed |
| 319 | +# (PR4) and per-marker precision multipliers in place, the cap is raised to |
| 320 | +# 2.0 so open findings visibly move the score - still a deliberately |
| 321 | +# conservative ceiling for this first release (a file loses at most two |
| 322 | +# points regardless of hit count). Raising it further to a co-equal budget |
| 323 | +# waits on corpus precision data for the remaining advisory markers. |
320 | 324 | # --------------------------------------------------------------------------- |
321 | 325 |
|
322 | 326 | # Per-biomarker weight on the performance dimension. ``io_in_loop`` is the |
|
339 | 343 | # Phase 6 dialect markers. Both are high-precision syntactic shapes (Go |
340 | 344 | # `go vet`/`gocritic` ship defer-in-loop; the regex marker gates on a static |
341 | 345 | # literal pattern in Java/Go/Rust). Ship advisory pending this session's |
342 | | - # test-repo gate; bounded by the 1.0 perf cap either way. |
| 346 | + # test-repo gate; bounded by the perf category cap either way. |
343 | 347 | "regex_compile_in_loop": 0.6, |
344 | 348 | "defer_in_loop": 0.6, |
345 | 349 | "resource_construction_in_loop": 0.7, |
|
400 | 404 | "sql_cartesian_join": "performance", |
401 | 405 | } |
402 | 406 |
|
403 | | -# One bounded performance category cap. ~1.0 keeps performance advisory. |
| 407 | +# One bounded performance category cap. 2.0 is a deliberately conservative |
| 408 | +# first-release ceiling: enough for open findings to register on the pillar, |
| 409 | +# small enough that an all-advisory marker set cannot crater a file. Upgrade |
| 410 | +# path: raise toward the defect-style multi-point budget once the remaining |
| 411 | +# advisory markers clear their corpus precision gates (MARKER_BACKLOG.md). |
404 | 412 | _PERFORMANCE_CATEGORY_CAPS: dict[str, float] = { |
405 | | - "performance": 1.0, |
| 413 | + "performance": 2.0, |
406 | 414 | } |
407 | 415 |
|
408 | 416 | # Perf biomarkers home to ``performance`` for display / per-pillar filtering. |
@@ -565,7 +573,7 @@ def score_file(results: Iterable[BiomarkerResult]) -> tuple[dict[str, float | No |
565 | 573 | identical to the pre-split ``score_file`` (the load-bearing guarantee). |
566 | 574 | ``scores["performance"]`` is now measured (PR3): a file with no perf |
567 | 575 | findings scores 10.0; the perf detectors deduct under a single bounded |
568 | | - ``performance`` cap. It is still capped low (advisory) and never blends |
| 576 | + ``performance`` cap (2.0, a conservative ceiling). It never blends |
569 | 577 | into ``defect``. |
570 | 578 | - ``defect_deductions`` is each finding's contribution to the DEFECT score |
571 | 579 | after category capping, parallel to *results*. It populates |
|
0 commit comments