omena_variational/
hover.rs1use serde::Serialize;
2
3use crate::{
4 VARIATIONAL_FEATURE_GATE_V0, VARIATIONAL_LAYER_MARKER_V0, VARIATIONAL_SCHEMA_VERSION_V0,
5};
6
7#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
8#[serde(rename_all = "camelCase")]
9pub struct VariationalHoverBudgetV0 {
10 pub schema_version: &'static str,
11 pub product: &'static str,
12 pub layer_marker: &'static str,
13 pub feature_gate: &'static str,
14 pub total_budget_ms: u64,
15 pub fragment_budget_ms: u64,
16 pub enabled_by_default: bool,
17}
18
19pub fn variational_hover_budget_v0() -> VariationalHoverBudgetV0 {
20 VariationalHoverBudgetV0 {
21 schema_version: VARIATIONAL_SCHEMA_VERSION_V0,
22 product: "omena-variational.hover-budget",
23 layer_marker: VARIATIONAL_LAYER_MARKER_V0,
24 feature_gate: VARIATIONAL_FEATURE_GATE_V0,
25 total_budget_ms: 25,
26 fragment_budget_ms: 6,
27 enabled_by_default: false,
28 }
29}