1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*
* Hanzo Cloud API
*
* The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
*
* The version of the OpenAPI document: v1
*
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct RiskSurface {
/// Folded is how many buckets of the tenant's own feature surface were folded into the model when it became resident.
#[serde(rename = "folded", skip_serializing_if = "Option::is_none")]
pub folded: Option<i32>,
/// Gap says why the fold did not happen or did not complete, when that is the case. An empty surface and an unreachable warehouse are different facts and a model must not report them as the same one.
#[serde(rename = "gap", skip_serializing_if = "Option::is_none")]
pub gap: Option<String>,
/// Refused is how many buckets of this organisation's own surface the fold could not fold, because a subject on them is longer than this plane's own field bound. It is history the model does not have, said out loud.
#[serde(rename = "refused", skip_serializing_if = "Option::is_none")]
pub refused: Option<i32>,
/// Replayed is how many of this organisation's own recorded observations rebuilt its sliding aggregates when the model became resident. It is what says a rollout was a rebuild rather than a blindness: the aggregates are a projection of a durable record, so a restart costs a replay and not a control.
#[serde(rename = "replayed", skip_serializing_if = "Option::is_none")]
pub replayed: Option<i32>,
/// Rolled is how many windows of this organisation's own source planes — product events, captured failures, metered inference — were rolled up into its feature surface before that fold. Zero with no gap means the surface was already current, which is a different fact from the rollup never running.
#[serde(rename = "rolled", skip_serializing_if = "Option::is_none")]
pub rolled: Option<i32>,
/// Window is the lookback the fold covered.
#[serde(rename = "window", skip_serializing_if = "Option::is_none")]
pub window: Option<String>,
}
impl RiskSurface {
pub fn new() -> RiskSurface {
RiskSurface {
folded: None,
gap: None,
refused: None,
replayed: None,
rolled: None,
window: None,
}
}
}