Skip to content

AssessLite 0.2.0

Choose a tag to compare

@heidihelena heidihelena released this 11 Jul 11:12
· 16 commits to main since this release
a7a32c1

Four new attacks/analyses, all folding into the same three-way verdicts and decision rules, native in both R and Python, with audit records validated against one shared JSON Schema.

New in 0.2.0

  • confounding_sensitivity — E-value (VanderWeele & Ding): how strong an unmeasured confounder would have to be to move the interval to no effect. Ratio-scale estimators (Cox HR, logistic OR).
  • graph_check — declare a causal DAG with declare_graph(); the engine tests the conditional independencies the graph implies against the data (partial correlation, self-contained d-separation).
  • adjustment_check — given the declared DAG, does your adjusted covariate set satisfy the backdoor criterion? Flags open backdoor paths (under-adjustment) and adjusted descendants of the exposure (over-adjustment / collider or mediator bias), and reports a minimal sufficient set. Verified on the confounding triangle, mediator, and M-bias.
  • assumption_lattice() — the pooling commitments (cluster / time) as a Hasse lattice: refit the exposure estimate under every pool-or-stratify combination and see whether the conclusion depends on them.

No new dependencies (numpy/pandas and base R). The pure-numpy stratified Cox reproduces R's coxph(ties="breslow") exactly.

Acknowledgement

AssessLite's assumptions-first framing is indebted to Weinstein & Blei, "Geometric Causal Models" (arXiv:2607.05153, 2026).

This release publishes assesslite 0.2.0 to PyPI and archives it on Zenodo.