Skip to content

feat: add multivariate temporal inference - #2

Merged
jousudo merged 1 commit into
mainfrom
codex/causa-v015-time-series
Aug 16, 2026
Merged

feat: add multivariate temporal inference#2
jousudo merged 1 commit into
mainfrom
codex/causa-v015-time-series

Conversation

@jousudo

@jousudo jousudo commented Aug 16, 2026

Copy link
Copy Markdown
Owner

Summary

  • add stdlib-only reduced-form VAR fitting with defensive coefficient, residual, and innovation-covariance accessors
  • select lag order with common-sample AIC, BIC, and Hannan-Quinn scores, plus residual cross-autocorrelation diagnostics
  • add conditional multivariate Granger F-tests that retain all supplied histories and remove only the proposed cause lags
  • add moving-block and Politis-Romano stationary bootstraps, including context-aware and Gaussian-effect variants
  • bound VAR design memory and reject adversarial maxLags before allocation
  • document v0.15.0, the relevant data regimes, and the boundary between predictive VAR and structural/interventional causality

Validation

  • independent base-R oracle for coefficients, innovation covariance, information criteria, F statistic, and p-value
  • synthetic known-VAR(2), observed-confounder, direct-effect, lag-selection, underfit-diagnostic, serial-dependence, cancellation, and hostile-input tests
  • go test ./...
  • go test -race ./...
  • statement coverage: 91.3% (gate: 90%)
  • go vet ./...
  • go build ./...
  • staticcheck ./...
  • govulncheck ./... (0 reachable vulnerabilities)
  • 10-second fuzz smoke: 179,631 executions

Statistical scope

This is predictive reduced-form VAR/Granger inference, not SVAR identification. It controls only histories that the caller supplies. Hidden drivers, unit roots, cointegration, regime changes, nonlinear dynamics, irregular sampling, residual autocorrelation, and uncorrected searches over many pairs remain explicit limitations rather than silently asserted capabilities.

Add reduced-form VAR fitting, common-sample lag selection, conditional Granger tests, residual diagnostics, and dependence-preserving block bootstraps. Cross-check the numeric path against an independent base R oracle and document the predictive, non-structural scope.

Co-Authored-By: OpenAI Codex <codex@openai.com>
@jousudo
jousudo merged commit e59d06a into main Aug 16, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant