Skip to content

Commit 573200c

Browse files
igerberclaude
andcommitted
Address PR #440 R4 review (1 P2 + 2 P3)
P2 — T22 §3 said "Both fits use the same weighted local-linear estimator at d_lower". `_fit_continuous` only switches to weighted moments when `weights_arr is not None` (`had.py:3747-3760`, `:3803-3808`); the naive fit uses unweighted moments. Rewrote §3 to say "same local-linear estimator family" with explicit per-fit moment-form distinction (naive: unweighted; survey: weighted via `bias_corrected_local_linear(..., weights=weights_arr)` plus weighted `np.average` for `dy_mean` and the denominator). P3 #1 — CHANGELOG/REGISTRY/test docstring/comments said the bootstrap p-value pins use ">= 0.25 abs tolerance bands", but the R3 tightened bands are width 0.30 total (± 0.15 around seeded centers). The "abs tolerance >= 0.25" wording is ambiguous between half-width and total-width interpretations. Updated all three surfaces to "anchored windows of total width 0.30 (± 0.15 around seeded centers)" so the prose is unambiguous and matches the actual assertions. P3 #2 — T22 §3 quotes "around 1.10x" SE inflation but the drift suite only checked direction (`survey.se > naive.se`). The seeded ratio could drift to 1.05 or 1.20 silently. Added `test_survey_se_inflation_ratio_in_band` asserting `1.00 <= ratio <= 1.20` — locks the seed=87 captured ratio (~1.0985) tightly enough to flag drift but loosely enough to not flake on RNG-path differences. Bumped CHANGELOG/REGISTRY test count from 30 → 31 to match. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 9e2b147 commit 573200c

4 files changed

Lines changed: 27 additions & 10 deletions

File tree

0 commit comments

Comments
 (0)