# CLP changelog

## 1.2.0 — 9 October 2026

### Numerical inference

- Added the six-column `r(fieller)` matrix, with explicit types for the entire real line, a bounded interval or singleton, two exterior intervals, either half-line, the empty set and unavailable results.
- Normalized the Fieller inequality coefficients and used a stable quadratic-root calculation. Degenerate linear inequalities now receive explicit half-line classifications.
- Kept the existing 29 columns of `r(table)` in their original order. `fl_lb` and `fl_ub` may contain finite half-line endpoints even when `fl_bounded` is zero; the new set type resolves this ambiguity.
- Returned missing intersection-union p-values when an endpoint standard error or test statistic is unavailable.

### Estimation and output

- Encoded time-effect categories internally on the linear `xtreg, fe` path so negative event-time values do not fail Stata's factor-variable requirements. The declared time variable is unchanged.
- Honored custom graph names supplied through `graphoptions(name(...))` and used temporary component graphs to preserve unrelated user graphs. The default combined graph remains `clp`, with replacement.
- Clarified that slopes, curvature and fitted contrasts are measured on the projection scale: the log mean for PPML and the outcome or transformed-outcome mean for linear estimation.
- Validated all horizon-specific `estore()` names before fitting. Stored coefficients support coefficient tables; native residual prediction is explicitly unsupported because generated outcomes or time-effect indicators may not remain available.
- Added `fl_type` to the saved results dataset and expanded its specification characteristics to include estimator, transformation, accumulation, controls, shape alternative, supplied outcomes, command line, horizons and release version. Stored numeric precision is retained.

### Reproducibility

- Added `clp_selftest.do` as an ancillary package file for a deterministic synthetic-panel test suite, retrieved with `net get clp`.
- Adopted fixed seeds, relative paths, recorded dependency versions and named numerical assertions from the AER-Skills reproducibility workflow. This is software validation, not AEA certification or manuscript acceptance.
- Retained the declared Stata 16 minimum. Development tests use Stata 19.5; execution on Stata 16 has not been established by the version declaration.

## 1.1.1 — 9 October 2026

Previous release used as the upgrade baseline. The 1.2.0 entry records the changes made from that source; it does not reconstruct earlier development history.
