Back to blog

Release

Measurement contracts for CI and release verification

Ink/charcoal doodle: a measurement contract flows into a checked report.

Reports now record and enforce estimator measurement contracts under CI/release profiles, and proof pack suites can cleanly split calibration vs execution.

2 min read
InvarLock Team

Release: InvarLock 0.3.6 - Enforced estimator contracts and phased proof-pack suites

Highlights

  • Guard estimator “measurement contracts” recorded in reports and enforced by verify --profile ci|release.
  • Proof pack suite can split into --calibrate-only and --run-only.
  • B200 calibration defaults avoid CPU SVD bottlenecks by defaulting guard order away from spectral/RMT.

This release is for anyone who has looked at two runs and asked: were these actually measured the same way? 0.3.6 makes that answer easier by recording approximation-only, GPU/MPS-first guard estimator measurement contracts in reports and enforcing them under invarlock verify --profile ci|release.

It also improves the reality of long suites. Proof packs can now be run in phases: generate calibration outputs first with --calibrate-only, then come back later with --run-only to finish remaining tasks without turning recovery into a manual exercise. PACK_GUARDS_ORDER gives controlled experiments a direct way to choose guard order.

For B200 calibration, the defaults are intentionally pragmatic. Generated presets now carry guard order explicitly, avoid slow CPU-bound SVD by dropping spectral/RMT unless enabled, and place Hugging Face caches under the output directory by default. evaluate now honors the preset’s guard order too, so execution matches the calibration contract instead of silently forcing the canonical full chain.

For the immutable release record, read the tagged CHANGELOG.md for v0.3.6.

More from the blog

Continue through recent releases and implementation notes.