Scoring and Keys
Scoring and Keys
Section titled “Scoring and Keys”This page documents how openclaw_architecture computes composite scores and how to configure scoring behavior.
Composite Outputs
Section titled “Composite Outputs”openclaw_architecture emits these composite keys:
openclaw_architecture.config_security_scoreopenclaw_architecture.skill_governance_scoreopenclaw_architecture.observability_scoreopenclaw_architecture.supply_chain_scoreopenclaw_architecture.overall_openclaw_health
All composite values are 0..1, where higher is better.
Scoring Formula
Section titled “Scoring Formula”For each axis, Arxo computes a weighted average of detector scores in that axis:
axis_score = weighted_mean_applicable(detector_scores, detector_weights)Applicability rule:
- Detectors marked
not_applicable(for example via disable config) are excluded from axis averaging. - If an axis has no applicable detectors, the axis score defaults to
1.0.
Overall formula:
overall_openclaw_health = config_security_score * w_config_security + skill_governance_score * w_skill_governance + observability_score * w_observability + supply_chain_score * w_supply_chainThe overall score is clamped to 0..1.
Default Weights
Section titled “Default Weights”Default axis weights:
config_security:0.35skill_governance:0.35observability:0.15supply_chain:0.15
Default detector weights are defined per detector and normalized within each axis.
Config Surface
Section titled “Config Surface”metrics[].config supports scoring controls:
scoring.metric_weightsscoring.axis_weightsscoring.disabled_metricsscoring.disabled_axes
Example:
metrics: - id: openclaw_architecture enabled: true config: scoring: metric_weights: gateway_auth_gap_score: 2.0 tool_poisoning_susceptibility_score: 2.5 openclaw_architecture.skill_virus_scan_absence_score: 3.0 axis_weights: config_security: 0.40 skill_governance: 0.35 observability: 0.10 supply_chain: 0.15 disabled_metrics: - shadow_mcp_server - openclaw_architecture.reasoning_trace_capture_absence_score disabled_axes: - observabilityNormalization Semantics
Section titled “Normalization Semantics”- Negative weights are clamped to
0. metric_weightsare normalized independently per axis.axis_weightsare normalized across all four axes.- If all axis weights are
0, defaults are restored. - If all metric weights in an axis are
0, that axis falls back to default detector weights (normalized).
Detector Key Contract
Section titled “Detector Key Contract”For the full detector list (result keys, rule IDs, impact/effort, recommendations), see: