Versions in this module Expand all Collapse all v1 v1.0.3 Oct 15, 2026 v1.0.2 Oct 14, 2026 Changes in this version + const DefaultAPIKeyEnv + const DefaultModel + const DefaultTimeout + const DefaultURL + const MaxTimeout + type Decision struct + Detail string + Duration time.Duration + Outcome Outcome + Reason Reason + Requests int + Response *systemone.Response + type Judge struct + Config func() Settings + Getenv func(string) string + Now func() time.Time + Provider func(settings Settings, key string) Provider + func (j *Judge) Evaluate(ctx context.Context, r systemone.Request) Decision + func (j *Judge) Status() Status + type Mode string + const ModeDegraded + const ModeDisabled + const ModeReady + const ModeUnconfigured + type Outcome string + const Accepted + const Fallback + type Provider interface + Evaluate func(context.Context, systemone.Request) (systemone.Response, error) + type Reason string + const ReasonCancelled + const ReasonCoolingDown + const ReasonDisabled + const ReasonRateLimited + const ReasonRejected + const ReasonTimeout + const ReasonUnavailable + const ReasonUnconfigured + const ReasonUnusable + type Settings struct + APIKeyEnv string + Enabled bool + Model string + Timeout time.Duration + URL string + func DefaultSettings() Settings + func (s Settings) Validate() error + type Status struct + CoolingUntil *time.Time + Detail string + Mode Mode + Model string + Reason Reason