-
Notifications
You must be signed in to change notification settings - Fork 0
Calibration
Chuyue Wang edited this page May 19, 2026
·
3 revisions
Calibration establishes personal baseline distributions used by state scoring and trigger personalization. Cortex 0.2.0 keeps the original seed capture and adds richer baseline statistics for robust z-score/percentile logic.
- Baseline artifacts now include per-metric distribution stats:
-
mu,sigma,p10,p90
-
- Baseline loader includes migration logic so legacy baseline JSON files still load.
- Blink threshold personalization support is available from EAR sample percentiles.
- Config includes rolling re-baseline and decay knobs for longitudinal adaptation.
cortex-calibrate --duration 120Optional simulation mode:
cortex-calibrate --simulateUserBaselines now persists both legacy scalar baselines and additive distribution metadata:
{
"hr_baseline": 72.0,
"hrv_baseline": 50.0,
"blink_rate_baseline": 17.0,
"mouse_velocity_baseline": 500.0,
"metric_distributions": {
"hr": {"mu": 72.0, "sigma": 4.2, "p10": 66.0, "p90": 78.0},
"hrv": {"mu": 50.0, "sigma": 9.5, "p10": 38.0, "p90": 63.0}
}
}The full UserBaselines schema (including hr_std, mouse_variance_baseline, shoulder_neutral_y, resp_baseline, circadian_hr_cosinor, and rolling/decay knobs) lives in cortex/libs/schemas/state.py.
- Pulse/HRV sub-scores use personalized z-score style logic when distribution stats exist.
- FLOW/HYPER rules reference personalized baseline bands before fallback heuristics.
- Stress integral normalization can use baseline variance (
sigma) rather than absolute ms deficit. - Trigger threshold adaptation and dismissal modeling use feedback tied to personal history.
Legacy files without metric_distributions are auto-migrated in runtime load paths. No manual data migration is required.