Releases: igerber/diff-diff
Releases · igerber/diff-diff
v3.4.1
What's Changed
- Lift Gate 1: HC2/HC2-BM for TwoWayFixedEffects via full-dummy auto-route by @igerber in #469
- PR-C: PreTrendsPower R
pretrendsparity goldens at commit122731d082by @igerber in #471 - SpilloverDiD survey_design= on HC1/CR1 via Binder TSL (Wave E.1) by @igerber in #468
- Thread vcov_type through SunAbraham (Phase 1b 1/8) by @igerber in #472
- SpilloverDiD vcov_type='conley' + survey_design= via panel-aware stratified-Conley sandwich on per-period PSU totals (Wave E.2) by @igerber in #474
- HeterogeneousAdoptionDiD methodology-review-tracker promotion: In Progress -> Complete by @igerber in #473
- ContinuousDiD methodology-review-tracker promotion: In Progress -> Complete by @igerber in #476
- Lift hc2_bm + weights gates via clubSandwich WLS-CR2 port by @igerber in #475
- SpilloverDiD conley + survey + lag>0 via panel-block composition (Wave E.2 follow-up) by @igerber in #477
- Release 3.4.1: SpilloverDiD survey + Conley lifts, SunAbraham vcov_type, WLS-CR2 BM, methodology-tracker promotions by @igerber in #480
Full Changelog: v3.4.0...v3.4.1
v3.4.0
What's Changed
- TODO.md cleanup: drop SHIPPED rows, refresh stale refs, add Tier A/B/C/D backlog by @igerber in #447
- dCDH heterogeneity: per-path + global placebo predict_het R-parity + df threading by @igerber in #449
- Refresh METHODOLOGY_REVIEW.md to reflect current estimator catalog by @igerber in #448
- Add Goodman-Bacon (2021) paper review by @igerber in #451
- Regenerate clubsandwich_cr2_golden.json from authoritative R clubSandwich by @igerber in #450
- SpilloverDiD: ring-indicator spillover-aware DiD (Butts 2021) by @igerber in #446
- dCDH heterogeneity wrap-up: post-drop rank df + negative-baseline path test by @igerber in #452
- Wave 3 estimator observability: HonestDiD M=0 test, Wooldridge canonical-link warning, ARP vertex diagnostic by @igerber in #453
- BaconDecomposition methodology audit (Goodman-Bacon 2021) by @igerber in #454
- Wave 4 Tier A drain: EfficientDiD anticipation note, generate_ddd_panel_data, TROP data-setup helper by @igerber in #455
- BaconDecomposition R parity goldens by @igerber in #457
- SpilloverDiD: event_study=True per-event-time × ring decomposition (Wave C) by @igerber in #456
- DiD-absorb HC2/HC2-BM: auto-route to fixed_effects internally by @igerber in #458
- Lift MultiPeriodDiD-absorb HC2/HC2-BM gate via auto-route by @igerber in #459
- SpilloverDiD: Gardner GMM first-stage correction (Wave D) by @igerber in #462
- PreTrendsPower: Roth (2022) paper review + silent-failure guard by @igerber in #463
- Lift Gate 6: cluster-aware CR2 Bell-McCaffrey contrast DOF for MultiPeriodDiD avg_att by @igerber in #465
- Surface agent_workflow() + curated dir() for LLM discoverability (#460) by @igerber in #464
- Add agent-discoverability contract test (#461) by @igerber in #467
- PreTrendsPower implementation audit (Roth 2022 — PR-B) by @igerber in #466
- Release 3.4.0: SpilloverDiD (Butts 2021), Bacon R-parity goldens, agent-discoverability surface, PreTrendsPower R-parity audit by @igerber in #470
Full Changelog: v3.3.3...v3.4.0
v3.3.3
What's Changed
- docs: utility coverage gaps (RTD audit Batch C) by @igerber in #403
- Bump AI PR review to gpt-5.5 + add Single-Pass Completeness Mandate by @igerber in #404
- HAD Phase 5 wave 1: agent-facing surfaces (_handle_had + llms-full.txt) by @igerber in #402
- dCDH by_path Wave 3 #8+#9: non-binary treatment + paths_of_interest by @igerber in #401
- docs: fix 86 Sphinx ERRORs (PR 1 of 2-PR cleanup) by @igerber in #405
- Add inference-field aliases on staggered result classes by @igerber in #406
- docs: add :no-index: to page-level autoclass directives (PR 2 of 2) by @igerber in #407
- Compose by_path / paths_of_interest with survey_design (Wave 4 #10) by @igerber in #408
- Tutorial 21: HAD pre-test workflow (composite QUG + Stute + Yatchew) by @igerber in #409
- docs: custom autosummary template + residual triage (PR 2.5) by @igerber in #410
- Replace CI Codex agent with single-shot Responses API + tighten verdict bar by @igerber in #415
- docs: enforce Sphinx -W in CI (Sphinx cleanup PR 3) by @igerber in #413
- dCDH by_path Wave 5 #11: + heterogeneity (predict_het per-by_level) by @igerber in #412
- Revert AI review CI to Codex + gpt-5.4 (reverts #404, #415) by @igerber in #416
- Create new comment on synchronize/reopened (not update canonical) by @igerber in #418
- Use refs/pull/N/head for AI review checkout (unblock /ai-review on merged PRs) by @igerber in #417
- Broaden dCDH by_path R-parser caveat to cover negative integers (re-audit follow-up to #401) by @igerber in #419
- Address residual P2s+P3 from re-audit of PR #402 by @igerber in #420
- Add Conley (1999) spatial HAC SE on DiD/TWFE/MultiPeriodDiD (Phase 1 of spillover-conley) by @igerber in #411
- Address residual P1+P2s from re-audit of PR #412 by @igerber in #422
- Address residual P3 docs drift from re-audit of PR #408 by @igerber in #424
- Add Codex CLI backend to /ai-review-local by @igerber in #421
- Add tutorial notebook prose extraction to AI review prompt by @igerber in #423
- Pin T21 deterministic p-values quoted in tutorial (re-audit of PR #409) by @igerber in #425
- Skip fork PRs in AI review workflow (closes CodeQL #11, #12) by @igerber in #427
- Add TripleDifferenceResults exemplar + lock alias asdict-exclusion (re-audit of #406) by @igerber in #428
- Address #412 holistic re-audit residuals (R2) by @igerber in #430
- Phase 2: Conley space-time HAC + panel-estimator wire-up (MPD/TWFE) by @igerber in #426
- Fix #402 holistic audit residuals: HAD↔ContinuousDiD Step-4 + fit() Union annotation + REGISTRY contracts by @igerber in #431
- Fix #401 holistic audit residuals: two stale docstrings around dCDH by_path / paths_of_interest by @igerber in #434
- Fix #408 holistic audit residuals: sibling-surface replicate-weight test gaps + stale by_path gate list by @igerber in #435
- Phase 4.5 C: stratified survey-design support for HAD Stute family by @igerber in #432
- Conley Wave A: DiD/cluster combo, sparse k-d-tree, callable metric by @igerber in #433
- Fix #406 holistic audit residuals: alias-doc completeness + test helper bugs by @igerber in #437
- docs: shorten 3 top-nav labels + bump pydata-sphinx-theme floor by @igerber in #438
- Fix #409 holistic audit residuals: T20+T21 notebook cross-check + TODO status by @igerber in #439
- fix-audit-410-r2: restore rendered-doc navigation regressed by #410 by @igerber in #441
- Dismiss CodeQL #14 (untrusted-checkout-toctou) with guard test by @igerber in #436
- fix-audit-407-r2: restore inventory + cross-refs for 19 :no-index: orphan classes by @igerber in #442
- fix-audit-405-r2: mirror PR #405 CV notation + bacon Parameters fix into sibling surfaces by @igerber in #444
- Add Tutorial 22: Survey-Weighted HAD walkthrough by @igerber in #440
- docs: add retrospective paper reviews for TROP and Wooldridge ETWFE by @igerber in #443
- Release 3.3.3: Conley spatial-HAC SE, HAD stratified-survey Stute bootstrap, dCDH by_path × survey_design, Tutorials 21+22 by @igerber in #445
Full Changelog: v3.3.2...v3.3.3
v3.3.2
What's Changed
- chore: add community standards files; remove stray BRIEFING.md by @igerber in #388
- Lift by_path + controls gate (DID^X residualization) by @igerber in #378
- chore(ci): declare workflow-level permissions on publish.yml by @igerber in #390
- docs: HAD ecosystem completion (RTD audit Batch A) by @igerber in #389
- README: swap monthly downloads badge for cumulative; drop docs-passing badge by @igerber in #395
- chore(rust): bump rand 0.8 -> 0.10, rand_xoshiro 0.6 -> 0.8 by @igerber in #391
- HAD Phase 4: trends_lin (Eq 17/18) + R-package end-to-end parity by @igerber in #392
- Fix latent doc-snippet bugs from PR #389 (HAD ecosystem) by @igerber in #396
- Add LinkedIn carousel for HAD estimator announcement by @igerber in #398
- dCDH by_path: lift trends_linear + trends_nonparam gates (Wave 3 #6+#7) by @igerber in #393
- Add Tutorial 20: HAD for National Brand Campaign with Regional Spend Intensity by @igerber in #394
- Add docs-tests.yml; remove test_doc_snippets.py from rust-test.yml by @igerber in #399
- Add yatchew_hr_test(null='mean_independence') mode by @igerber in #397
- Release 3.3.2: dCDH by_path × trends extensions, Yatchew mean_independence, HAD Phase 4 R-parity by @igerber in #400
Full Changelog: v3.3.1...v3.3.2
v3.3.1
What's Changed
- Wave 2: PanelProfile outcome/dose shape extensions + autonomous-guide worked examples by @igerber in #366
- Close SDID placebo R-parity gap: warm-start + R-anchored fixture + test seam by @igerber in #369
- dCDH by_path + placebo: per-path backward-horizon placebos (Wave 2 #3) by @igerber in #371
- Add Tutorial 19: dCDH for Marketing Pulse Campaigns by @igerber in #373
- HAD Phase 4.5 C: linearity-family pretests under survey by @igerber in #370
- Docs refresh: trim README to a 188-line landing page; redirect contributor conventions by @igerber in #372
- Add per-path joint sup-t bands to ChaisemartinDHaultfoeuille.by_path by @igerber in #374
- Refocus Tutorial 19 on dCDH alone (drop TWFE comparison) by @igerber in #375
- chore(ci): add Dependabot config and workflow permissions by @igerber in #377
- Chore(deps): Bump actions/download-artifact from 4 to 8 by @dependabot[bot] in #379
- Chore(deps): Bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #385
- Chore(deps): Bump actions/github-script from 7 to 9 by @dependabot[bot] in #383
- Consolidate HAD survey-design API to single survey_design= kwarg by @igerber in #376
- Chore(deps): Bump actions/checkout from 4 to 6 by @dependabot[bot] in #381
- Chore(deps): Bump actions/setup-python from 5 to 6 by @dependabot[bot] in #380
- Release 3.3.1: HAD survey-design consolidation, dCDH by_path placebos + sup-t bands, Phase 4.5 C by @igerber in #387
New Contributors
- @dependabot[bot] made their first contribution in #379
Full Changelog: v3.3.0...v3.3.1
v3.3.0
What's Changed
- Precompute stratum-PSU scaffolding in aggregate_survey (~19x BRFSS speedup) by @igerber in #338
- Close BR/DR gap #4: canonical-dataset regression guards + wording fixes by @igerber in #341
- Phase 1c: Bias-corrected local-linear CI (CCT 2014) by @igerber in #340
- Delete compute_synthetic_weights shim; inline Frank-Wolfe in rank_control_units by @igerber in #344
- Remove dead Rust compute_synthetic_weights (follow-up to PR #344) by @igerber in #345
- Unify Rust TROP inner solver to SVD (close finding #23 grid-search divergence) by @igerber in #348
- Phase 2a: HeterogeneousAdoptionDiD class (single-period, 3 design paths) by @igerber in #346
- Close BR/DR gap #6: target-parameter block in schemas by @igerber in #347
- Fix SyntheticDiD bootstrap p-value dispatch and SE formula by @igerber in #349
- HAD Phase 2b: multi-period event-study extension (Appendix B.2) by @igerber in #350
- HAD Phase 3: pre-test diagnostics (qug_test, stute_test, yatchew_hr_test, composite workflow) by @igerber in #352
- Add SyntheticDiD variance_method='bootstrap_refit' and coverage MC study by @igerber in #351
- Fix TROP bootstrap SE backend divergence under fixed seed by @igerber in #354
- HAD Phase 3 follow-up: joint Stute pretest + event-study workflow by @igerber in #353
- dCDH: add
by_pathper-path event-study disaggregation by @igerber in #357 - Restore SDID survey-bootstrap via weighted Frank-Wolfe + Rao-Wu composition by @igerber in #355
- Fix TROP local-method backend parity: drop Rust weight normalization + Python cache-fallthrough by @igerber in #358
- HAD Phase 4.5: survey support on continuous-dose paths by @igerber in #359
- dCDH by_path R-parity fixtures + TestDCDHDynRParityByPath by @igerber in #360
- Fix CHANGELOG: rename survey-bootstrap PR placeholder #352 to #355 by @igerber in #361
- Add profile_panel() + autonomous LLM guide for agent-facing workflows by @igerber in #356
- HAD Phase 4.5 B: weighted mass-point 2SLS + event-study survey composition + sup-t bootstrap by @igerber in #363
- dCDH by_path + n_bootstrap support (library-consistent percentile CI) by @igerber in #364
- Restore SDID survey support for placebo and jackknife variance methods by @igerber in #365
- HAD Phase 4.5 C0: QUG-under-survey decision gate by @igerber in #367
- Release 3.3.0: HAD estimator, profile_panel, dCDH by_path, SDID survey complete by @igerber in #368
Full Changelog: v3.2.0...v3.3.0
v3.2.0
What's Changed
- Add Zenodo DOI badge, citation metadata, and identifiers by @igerber in #325
- Guard TROP bootstrap loops against silent high-failure-rate runs by @igerber in #324
- Add cell-period IF allocator for dCDH survey variance by @igerber in #323
- Surface PowerAnalysis simulation-failure count and narrow except clause by @igerber in #326
- Extend PR #312 Y-normalization contract into SDID diagnostic methods by @igerber in #328
- Extend dCDH heterogeneity SE to cell-period allocator by @igerber in #329
- Exclude flaky wall-clock timing tests from default CI by @igerber in #330
- Phase 1a: Kernel infrastructure + HC2/Bell-McCaffrey variance by @igerber in #327
- Surface row-count for axis-E silent coercion / drop sites by @igerber in #331
- Surface silent np.linalg.solve fallbacks across axis-A minor solver paths by @igerber in #334
- Skip wall-clock timing tests on CI to stop false-positive flake by @igerber in #336
- Add practitioner-workflow performance baseline by @igerber in #333
- Extend dCDH PSU-level wild bootstrap to cell granularity by @igerber in #332
- Add axis-G Rust vs Python backend parity edge-case tests by @igerber in #337
- Phase 1b: MSE-optimal bandwidth selector (CCF 2018 DPI) by @igerber in #335
- Add BusinessReport and DiagnosticReport (experimental preview) by @igerber in #318
- Close axis-C/J silent-failures audit: B-spline derivative + PA survey cache by @igerber in #339
- Release 3.2.0: BusinessReport preview, dCDH survey completion, silent-failures audit by @igerber in #342
Full Changelog: v3.1.3...v3.2.0
v3.1.3
What's Changed
- Add replicate-weight variance and PSU-level bootstrap to dCDH by @igerber in #311
- Signal non-convergence in TROP alternating-minimization solvers by @igerber in #317
- Add CITATION.cff to bump-version skill by @igerber in #320
- Add Zenodo DOI auto-minting config for GitHub Releases by @igerber in #321
- Signal silent sparse -> dense lstsq fallback in ImputationDiD and TwoStageDiD by @igerber in #319
- Release 3.1.3: dCDH replicate weights, sparse fallback signaling, Zenodo config by @igerber in #322
Full Changelog: v3.1.2...v3.1.3
v3.1.2
What's Changed
- Add SyntheticDiD validation diagnostics by @igerber in #309
- Bundle LLM guide files in wheel with get_llm_guide() accessor by @igerber in #310
- Add survey support to dCDH estimator by @igerber in #307
- Fix SyntheticDiD catastrophic cancellation at extreme Y scale by @igerber in #312
- Refresh ROADMAP to drop phase numbering and reflect shipped state by @igerber in #313
- Signal non-convergence in FE imputation alternating-projection solvers by @igerber in #314
- Signal non-convergence in Frank-Wolfe SC weight solver (numpy path) by @igerber in #315
- Release 3.1.2: SDID scale fix, convergence warnings, roadmap refresh by @igerber in #316
Full Changelog: v3.1.1...v3.1.2