You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Address PR #347 R7: bump schema versions to 2.0 + EfficientDiD library vs ES_avg note
Two P1 findings from R7, both addressed.
P1 #1 (schema version bump): the new ``headline.status`` /
``headline_metric.status`` value ``"no_scalar_by_design"`` added
in R4 for the dCDH ``trends_linear=True, L_max>=2`` configuration
is a breaking change per REPORTING.md stability policy (new
status-enum values are breaking — agents doing exhaustive match
will break on unknown enums). Bumped
``BUSINESS_REPORT_SCHEMA_VERSION`` and
``DIAGNOSTIC_REPORT_SCHEMA_VERSION`` from ``"1.0"`` to ``"2.0"``,
updated the in-tree schema-version tests (one explicit
``== "1.0"`` assertion and six ``"schema_version": "1.0"`` stub
dicts in BR / DR test files), added a REPORTING.md "Schema
version 2.0" note, and documented the bump in the CHANGELOG
Unreleased entry. The schemas remain marked experimental so the
formal deprecation policy does not yet apply.
P1 #2 (EfficientDiD library vs paper estimand): both
EfficientDiD branches now explicitly state that BR/DR's headline
``overall_att`` is the library's cohort-size-weighted average
over post-treatment ``(g, t)`` cells, NOT the paper's ``ES_avg``
uniform event-time average. The regime (PT-All / PT-Post)
describes identification; the aggregation choice is a separate
library-level policy that REGISTRY.md Sec. EfficientDiD
documents. Added ``cohort-size-weighted`` + ``ES_avg`` /
``post-treatment`` assertions to ``test_efficient_did_pt_all``
and ``test_efficient_did_pt_post`` so the wording is pinned.
354 BR/DR + guide + target-parameter tests pass. Black and ruff
clean.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8
8
## [Unreleased]
9
9
10
10
### Added
11
-
- **`target_parameter` block in BR/DR schemas (experimental)** — BusinessReport and DiagnosticReport now emit a top-level `target_parameter` block naming what the headline scalar actually represents for each of the 16 result classes. Closes BR/DR foundation gap #6 (target-parameter clarity). Fields: `name`, `definition`, `aggregation` (machine-readable dispatch tag), `headline_attribute` (raw result attribute), `reference` (citation pointer). BR's summary emits the short `name` right after the headline; DR's overall-interpretation paragraph does the same; both full reports carry a "## Target Parameter" section with the full definition. Per-estimator dispatch is sourced from REGISTRY.md and lives in the new `diff_diff/_reporting_helpers.py::describe_target_parameter`. A few branches read fit-time config (`EfficientDiDResults.pt_assumption`, `StackedDiDResults.clean_control`, `ChaisemartinDHaultfoeuilleResults.L_max` / `covariate_residuals` / `linear_trends_effects`); others emit a fixed tag (the fit-time `aggregate` kwarg on CS / Imputation / TwoStage / Wooldridge does not change the `overall_att` scalar — disambiguating horizon / group tables is tracked under gap #9). See `docs/methodology/REPORTING.md` "Target parameter" section.
11
+
- **`target_parameter` block in BR/DR schemas (experimental; schema version bumped to 2.0)** — `BUSINESS_REPORT_SCHEMA_VERSION` and `DIAGNOSTIC_REPORT_SCHEMA_VERSION` bumped from `"1.0"` to `"2.0"` because the new `"no_scalar_by_design"` value on the `headline.status` / `headline_metric.status` enum (dCDH `trends_linear=True, L_max>=2` configuration) is a breaking change per the REPORTING.md stability policy. BusinessReport and DiagnosticReport now emit a top-level `target_parameter` block naming what the headline scalar actually represents for each of the 16 result classes. Closes BR/DR foundation gap #6 (target-parameter clarity). Fields: `name`, `definition`, `aggregation` (machine-readable dispatch tag), `headline_attribute` (raw result attribute), `reference` (citation pointer). BR's summary emits the short `name` right after the headline; DR's overall-interpretation paragraph does the same; both full reports carry a "## Target Parameter" section with the full definition. Per-estimator dispatch is sourced from REGISTRY.md and lives in the new `diff_diff/_reporting_helpers.py::describe_target_parameter`. A few branches read fit-time config (`EfficientDiDResults.pt_assumption`, `StackedDiDResults.clean_control`, `ChaisemartinDHaultfoeuilleResults.L_max` / `covariate_residuals` / `linear_trends_effects`); others emit a fixed tag (the fit-time `aggregate` kwarg on CS / Imputation / TwoStage / Wooldridge does not change the `overall_att` scalar — disambiguating horizon / group tables is tracked under gap #9). See `docs/methodology/REPORTING.md` "Target parameter" section.
0 commit comments