# Local Modifications To Vendored BMS Source

- Upstream repository: `https://github.com/zeugner/BMS`
- Vendored commit: `cd115f04971c5ca7277725126d8f896eb5f71a47`
- Short commit: `cd115f0`
- Vendored on: `2026-04-18`

## Purpose

This vendored copy exists so the project can implement and audit a repo-local
extension for MCMC-frequency posterior covariance support without modifying the
installed `BMS` package.

## Local Changes

- Added `.mcmc.posterior.second.moment()` in `R/aux_inner.R`
  - reconstructs model-specific posterior covariance and second moments from
    the current sampler state.
- Added `bms_mcmc_cov()` in `R/bma.R`
  - mirrors upstream `bms()` for MCMC samplers,
  - accumulates `b12mo`, the full unconditional posterior second-moment
    matrix,
  - optionally stores draw-level history for validation,
  - leaves upstream `bms()` untouched.
- Removed the internal `set.seed(as.numeric(Sys.time()))` calls from the
  vendored samplers so an explicit caller-supplied seed is honored. The
  replication analysis sets seed `20260607` immediately before BMA estimation.

## Notes

- This extension is intentionally additive. Existing upstream functions remain
  available.
- The installed `BMS` package is still used as a benchmark for quantities it
  already exposes, but the new MCMC covariance path is sourced from this local
  vendored copy.
