synth_control_baci() no longer requires the simulator-only oracle
column ite; it runs on a real panel and attaches ite/oracle_unit
only when the input carries them (F1).bacipair_abstention condition (also carrying orchestra_refusal),
per the orchestra's refusal/abstention naming convention, rather than
a bare stop() (F4).R-CMD-check GitHub Actions workflow (F10).synth_control_baci() is the uncorrected estimator, and
quotes the uncorrected audit-grade bias (0.0347 pp against the
0.15 pp floor) rather than implying reproduction of a corrected
extension that is not in the package API (F2).deliverables/RDT-20/... paths that do not ship with the package
(F13).CER/ACCU/HIR/MRV
acronym cluster on first use, and removed a + used as a prose
conjunction.@param documentation of additionality_mean_pp /
additionality_sd_pp in simulate_staggered_panel(): the draw is
an untruncated Normal, not truncated-Normal as previously
documented, and can realise a negative additionality for a pair
flagged as genuinely additional (F3, documentation only -- the
simulator's numerical behaviour is unchanged in this release).@return documentation of baci_paired_did()'s
coefficients element: the returned vector holds the ATT
interaction and non-base-year dummies on the demeaned design, not
an intercept, treated-arm dummy or post-treatment dummy, all three
of which are absorbed by demeaning and were never returned (F16).@examples to the two exported functions that previously had
none, is_bacipair_abstention() and write_oracle_recovery_log().Initial scaffold release.
simulate_staggered_panel() -- staggered-treatment HIR-style BACI
panel simulator with explicit oracle panel-average and per-unit ATT.baci_paired_did() -- paired difference-in-differences on a BACI
panel with proponent-cluster-robust standard errors (CR1).synth_control_baci() -- time-varying synthetic-control comparator
with simplex-constrained donor weights and rainfall / elevation /
baseline-cover predictors.proponent_cluster_bootstrap() -- proponent-level resampling
bootstrap for the synthetic-control or paired-DiD point estimate.goodman_bacon_decomp() -- Goodman-Bacon (2021) two-by-two
decomposition of staggered-DiD weights, exposed as a guarded
wrapper around bacondecomp::bacon().bacipair_targets_plan() -- targets-skeleton helper that returns
a list of targets::tar_target calls covering simulate -> SC fit ->
paired-DiD fit -> bootstrap -> Goodman-Bacon decomposition ->
oracle-recovery JSON log.stop() with
diagnostic messages.R CMD check --as-cran clean (zero warnings, zero notes other
than first-release notes).getting-started.Rmd covers the synthetic
ground-truth-recovery audit and the published kill-gate JSON log.If you use this package, please cite both the package and the source methodology paper:
Macintosh, A., et al. (2024). Australian human-induced native forest regeneration carbon offset projects have limited impact on changes in woody vegetation cover and carbon removals. Communications Earth & Environment, 5, Article 149. https://doi.org/10.1038/s43247-024-01313-x