Skip to main content

ahri_tre_protocol/
execution_profile.rs

1//! Safe Execution-profile discovery and logical-selection contracts.
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
6#[serde(deny_unknown_fields)]
7pub struct ExecutionProfileListRequest {}
8
9#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
10#[serde(deny_unknown_fields)]
11pub struct ExecutionProfileSelectRequest {
12    pub execution_profile: String,
13}
14
15#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
16#[serde(deny_unknown_fields)]
17pub struct ExecutionProfileSummary {
18    pub identifier: String,
19    pub display_label: String,
20    pub description: String,
21    pub datastore: String,
22    pub configured_default: bool,
23}
24
25#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
26#[serde(deny_unknown_fields)]
27pub struct ExecutionProfileListResponse {
28    pub execution_profiles: Vec<ExecutionProfileSummary>,
29}
30
31#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
32#[serde(deny_unknown_fields)]
33pub struct ExecutionProfileSelectResponse {
34    pub execution_profile: ExecutionProfileSummary,
35}