Skip to content

Calibration Artifact

A calibration artifact defines how domain-native metrics map to the simulation parameters λ\lambda (growth pressure) and γ\gamma (structural stability). The artifact is a JSON file loaded at runtime by the Substrate evaluation pipeline.

{
"schemaVersion": 1,
"domain": "ai_safety",
"adapterVersion": 1,
"lambdaScaling": { "...scaling function..." },
"gammaScaling": { "...scaling function..." },
"secondaryProxies": [],
"composite": null,
"calibratedAt": "2026-03-16T15:44:42.085Z",
"corpusScore": null
}
FieldTypeDescription
schemaVersionu32Must be 1
domainstringDomain identifier (e.g., ai_safety, robotics) — must match the license
adapterVersionu32Echoed in every EvaluationResponse.adapterVersion for audit
lambdaScalingScalingFunctionPrimary λ\lambda mapping
gammaScalingScalingFunctionPrimary γ\gamma mapping
secondaryProxiesSecondaryProxy[]Additional metrics contributing to λ\lambda or γ\gamma
compositeCompositeConfig?Optional aggregation for combining multiple scaled values
calibratedAtstringISO 8601 timestamp of artifact creation
corpusScoreCorpusScore?Optional calibration corpus statistics

Each scaling function maps a single domain metric to a simulation parameter.

{
"proxy": "capabilityIndex",
"fn": "log",
"inputRange": [1, 1000],
"outputRange": [0.1, 0.95],
"clamp": true,
"sigmoidK": null
}
FieldTypeDescription
proxystringName of the domain metric in snapshot.metrics
fnstringScaling function type (see below)
inputRange[f64, f64]Domain-native input range [min, max]
outputRange[f64, f64]Simulation output range [min, max]
clampboolIf true, inputs outside inputRange are clamped
sigmoidKf64?Steepness parameter for sigmoid only (higher = sharper transition)
TypeBehaviorGood for
linearLinear interpolation between rangesMetrics with uniform sensitivity
logLogarithmic mapping — compresses high-end inputsMetrics with diminishing returns (e.g., capability scores)
sigmoidS-curve with configurable steepness (kk)Metrics with a critical transition zone
inverseInverse relationship — high input maps to low outputMetrics where more = less stable
stepBinary threshold at the midpoint of inputRangeHard cutoff metrics

When clamp is true, metric values outside inputRange are clamped to the nearest bound before scaling:

  • Value below inputRange[0] → scaled as inputRange[0]
  • Value above inputRange[1] → scaled as inputRange[1]

When clamp is false, out-of-range values may produce outputs outside outputRange.

Secondary proxies allow additional metrics to contribute to λ\lambda or γ\gamma:

{
"proxy": "autonomyLevel",
"mapsTo": "lambda",
"fn": "sigmoid",
"inputRange": [0, 10],
"outputRange": [0.05, 0.95],
"clamp": true,
"sigmoidK": 5
}
FieldTypeDescription
proxystringMetric name
mapsTo"lambda" or "gamma"Which parameter this proxy contributes to
fnstringScaling function type
inputRange[f64, f64]Input range
outputRange[f64, f64]Output range
clampboolClamping behavior
sigmoidKf64?Sigmoid steepness (sigmoid only)

When secondary proxies are present, their scaled values are combined with the primary scaling value. Without a composite configuration, the default aggregation is used.

For advanced configurations, the composite block defines explicit aggregation strategies for combining multiple scaled values:

{
"composite": {
"lambda": {
"aggregation": "weighted_mean",
"components": [
{ "metric": "capabilityIndex", "weight": 0.7 },
{ "metric": "autonomyLevel", "weight": 0.3 }
]
},
"gamma": {
"aggregation": "weighted_mean",
"components": [
{ "metric": "alignmentScore", "weight": 0.5 },
{ "metric": "guardrailCoverage", "weight": 0.3 },
{ "metric": "humanOversightFreq", "weight": 0.2 }
]
}
}
}
TypeFormula
weighted_meanwivi/wi\sum w_i \cdot v_i / \sum w_i
weighted_maxmax(wivi)\max(w_i \cdot v_i)
weighted_minmin(wivi)\min(w_i \cdot v_i)
productviwi\prod v_i^{w_i}

The optional corpusScore block records calibration quality metrics from the corpus used to generate the artifact:

{
"corpusScore": {
"meanAgentF1": 0.92,
"meanAbsDelta": 0.03,
"withinTolerancePct": 94.5,
"corpusVersion": 1
}
}
FieldDescription
meanAgentF1Average F1 score across agents in the calibration corpus
meanAbsDeltaMean absolute delta between predicted and observed gamma
withinTolerancePctPercentage of corpus evaluations within tolerance
corpusVersionVersion of the calibration corpus used
{
"schemaVersion": 1,
"domain": "ai_safety",
"adapterVersion": 1,
"lambdaScaling": {
"proxy": "capabilityIndex",
"fn": "log",
"inputRange": [1, 1000],
"outputRange": [0.1, 0.95],
"clamp": true
},
"gammaScaling": {
"proxy": "alignmentScore",
"fn": "linear",
"inputRange": [0, 100],
"outputRange": [0.05, 0.95],
"clamp": true
},
"secondaryProxies": [
{
"proxy": "autonomyLevel",
"mapsTo": "lambda",
"fn": "sigmoid",
"inputRange": [0, 10],
"outputRange": [0.05, 0.95],
"clamp": true,
"sigmoidK": 5
},
{
"proxy": "humanOversightFreq",
"mapsTo": "gamma",
"fn": "log",
"inputRange": [0, 100],
"outputRange": [0.05, 0.95],
"clamp": true
},
{
"proxy": "guardrailCoverage",
"mapsTo": "gamma",
"fn": "linear",
"inputRange": [0, 100],
"outputRange": [0.05, 0.95],
"clamp": true
}
],
"composite": null,
"calibratedAt": "2026-03-16T15:44:42.085Z",
"corpusScore": null
}

This artifact:

  • Maps capabilityIndexλ\lambda via logarithmic scaling (compresses high capability values)
  • Maps alignmentScoreγ\gamma via linear scaling
  • Adds autonomyLevel as a sigmoid-scaled secondary contributor to λ\lambda
  • Adds humanOversightFreq and guardrailCoverage as secondary contributors to γ\gamma