Files
git.stella-ops.org/etc/excititor-calibration.yaml.sample

143 lines
4.0 KiB
Plaintext

# Trust Vector Calibration Configuration
# This file controls how trust vectors are automatically adjusted based on empirical feedback
# Calibration service configuration
calibration:
enabled: true
# Calibration epoch configuration
# An epoch is a period during which feedback is collected before adjustments are applied
epoch:
# How often to run calibration (in days)
intervalDays: 30
# Minimum samples required before calibration runs
minimumSamples: 100
# Maximum samples to consider per epoch (prevents over-fitting)
maximumSamples: 10000
# Learning rate configuration
# Controls how aggressively trust vectors are adjusted
learningRate:
# Base learning rate (0.0 = no change, 1.0 = full replacement)
base: 0.15
# Adaptive learning based on confidence in calibration data
adaptive: true
# Reduce learning rate when variance is high
varianceReduction: true
# Maximum adjustment per epoch (safety limit)
maxAdjustmentPerEpoch: 0.25
# Feedback sources
# Where calibration data comes from
feedbackSources:
# Ground truth from reachability analysis
- source: "reachability"
weight: 1.0
enabled: true
# Customer-reported false positives/negatives
- source: "customer_feedback"
weight: 0.8
enabled: true
# Automated testing results
- source: "integration_tests"
weight: 0.7
enabled: false # Only enable if test suite is comprehensive
# Provider-specific calibration settings
providerCalibration:
# Enable per-provider calibration (vs. global only)
perProviderEnabled: true
# Minimum samples needed for provider-specific calibration
providerMinimumSamples: 50
# Fall back to global calibration if insufficient provider samples
fallbackToGlobal: true
# Calibration manifest signing
manifest:
# Sign calibration manifests for auditability
signManifests: true
# Signature algorithm
signatureAlgorithm: "EdDSA" # or "RSA", "ECDSA"
# Store manifests for historical analysis
storeManifests: true
# Retention period for calibration manifests (days)
retentionDays: 365
# Rollback configuration
rollback:
# Enable automatic rollback if calibration degrades performance
enabled: true
# Threshold for automatic rollback (performance degradation %)
degradationThreshold: 10
# Evaluation window for rollback decision (days)
evaluationWindowDays: 7
# Alerts and notifications
alerts:
# Notify when calibration epoch completes
onEpochComplete: true
# Notify when significant adjustments are made
onSignificantAdjustment: true
significantAdjustmentThreshold: 0.15
# Notify when calibration fails or is rolled back
onFailureOrRollback: true
# Comparison engine configuration
# How calibration compares expected vs. actual outcomes
comparisonEngine:
# Metrics to track
metrics:
- precision # True positives / (True positives + False positives)
- recall # True positives / (True positives + False negatives)
- f1Score # Harmonic mean of precision and recall
- falsePositiveRate
- falseNegativeRate
# Weighting of metrics in optimization
metricWeights:
precision: 0.4
recall: 0.4
f1Score: 0.2
# Comparison granularity
granularity:
byProvider: true # Track performance per provider
bySeverity: true # Track performance per CVE severity
byStatus: true # Track performance per VEX status
# Calibration storage
storage:
# PostgreSQL schema for calibration data
schema: "excititor_calibration"
# Table for calibration manifests
manifestsTable: "calibration_manifests"
# Table for feedback samples
samplesTable: "calibration_samples"
# Table for adjustment history
adjustmentsTable: "trust_vector_adjustments"
# Environment variable overrides
# STELLAOPS_CALIBRATION_ENABLED=true
# STELLAOPS_CALIBRATION_EPOCH_INTERVAL_DAYS=30
# STELLAOPS_CALIBRATION_LEARNING_RATE=0.15
# STELLAOPS_CALIBRATION_MIN_SAMPLES=100