Cyclium.Strategy.Template.ObserveClassifyConverge (Cyclium v0.1.13)

Copy Markdown View Source

Data-driven strategy template: Gather → Classify (rules) → Converge.

Uses a named gatherer to collect data, then applies rule-based classification without LLM synthesis. Suitable for simple threshold/rule actors.

Strategy config shape

%{
  "gatherer" => "client_metrics",
  "classify_rules" => [
    %{"field" => "mrr", "op" => "lt", "value" => 500, "class" => "at_risk", "severity" => "high"},
    %{"field" => "last_login_days_ago", "op" => "gt", "value" => 30, "class" => "inactive", "severity" => "medium"}
  ],
  "default_class" => "healthy",
  "default_severity" => "low",
  "finding_config" => %{
    "actor_id_field" => "client_health_actor",
    "finding_key_template" => "client:health:${subject_id}",
    "subject_kind" => "client",
    "subject_id_key" => "client_id"
  }
}

Rule operators

  • "lt" — less than
  • "gt" — greater than
  • "eq" — equals
  • "neq" — not equals
  • "in" — value in list
  • "not_in" — value not in list

Rules are evaluated in order. First match wins.