Added
causal-ts-discoveryagent skill (Claude Code / OpenAI Codex) shipped in the package for model-driven causal discoverycausal-ts inspect <file>— data-health facts plus an algorithm / CI-test / C-preset recommendation and a cost class (JSON)causal-ts discover --json— echoes the run summary, a named edge list, and adiagnosticsblock (density, self-loops, contemporaneous/lagged counts, hub in-degree,empty/saturatedflags) to stdoutcausal-ts discover --validate(with--n-bootstrap/--window-frac) — temporal-bootstrap edge-stability checkcausal-ts discover --pvalues— opt-in p-value matrix in the output (off by default as a high-dimensional memory safeguard)causal-ts install-skill— install the skill into~/.claude/skillsand~/.agents/skills.claude-plugin/manifests — the skill can also be added as a Claude Code plugin from a checkoutinclude_Candc_presetfor GRACE —run_cdnots_gated,run_stability_selection,run_ci_skeleton, andcausal-ts discover --algorithm grace/grace-ssnow let you configure the C node of the skeleton GRACE refines, rather than always building one with thelinearbasis.include_Cdefaults toTrue(the previous behaviour); multi-column presets such aslinear+sinare supported end to end.- Public Python entry points
inspect_df,recommend_config,discover_df - Observed-data (non)stationarity detection (ADF + KPSS) and trend-form detection for C-preset selection
- Multi-format data reader (csv / parquet / feather) with an optional
parquetextra guided_discoveryexample notebook — the inspect → recommend → discover → interpret workflow end to end- Causal feature selection —
select_featuresfor O(d) single-target discovery (causalts.feature_selection) - Correlation / association plots —
corrplotandcompute_association_matrix(causalts.plotting) - Temporal-subsampling detection —
detect_subsamplingandDetectionResult(causalts.utils)
Fixed
causal-ts discover --algorithm cdnots+was an accepted choice with no dispatch branch — it produced no graph and exited successfully. CDNOTS+ now runs (and honours--impute).--c-presetwas never forwarded torun_cdnots, so every CDNOTS run silently used the defaultlinearbasis regardless of the flag.--no-chad no effect on GRACE, whose skeleton always included a C node.discover_dfsilently droppedalphafor CEDAR and droppedalpha,include_C,c_preset, andci_testfor GRACE. Everything it can honour is now forwarded, and anything it cannot raises instead of being ignored.alphanow defaults toNone, meaning "use the algorithm's own default", so CEDAR keeps its 0.01 thresholds.discover --validateran its bootstrap windows without the main run's--imputesettings, so persistence was measured under a different configuration than the graph it annotated.- GRACE high-dimensional memory usage in
run_cdnots_gated - Documentation: the README CI-test table listed
linsig, which the package does not ship — the path-space test issigkci - Documentation: the GRACE examples in the algorithms guide unpacked a tuple, but
run_cdnots_gated/run_stability_selectionreturn aGraceResult; copying them raisedTypeError - Documentation: absolute-value notation in two docstrings was parsed as an RST substitution reference, producing errors in the docs build
See CHANGELOG.md for the full history.