syntax = "proto3";

package worldmonitor.intelligence.v1;

import "sebuf/http/annotations.proto";
import "worldmonitor/intelligence/v1/intelligence.proto";

// GetRiskScoresRequest specifies parameters for retrieving risk scores.
message GetRiskScoresRequest {
  // Optional region filter. Empty returns all tracked regions.
  string region = 1 [(sebuf.http.query) = { name: "region" }];
}

// GetRiskScoresResponse contains composite risk scores and strategic assessments.
message GetRiskScoresResponse {
  // Composite Instability Index scores.
  repeated CiiScore cii_scores = 1;
  // Strategic risk assessments.
  repeated StrategicRisk strategic_risks = 2;
  // True when upstream scoring inputs failed and the response is served from
  // a stale cache or from the baseline-only cold fallback.
  bool degraded = 3;
  // True when degraded=true because a stale cached score payload was served.
  // Baseline-only cold fallback sets degraded=true and stale=false.
  bool stale = 4;
}
