use super::scenario::ContractScenario;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct AlloyContractReport {
pub scenario: ContractScenario,
pub scope: &'static str,
pub evidence_artifact_name: String,
pub evidence_report_line: String,
pub replay_bundle_artifact_name: String,
pub scenario_manifest_summary: String,
pub permits_release: bool,
pub telemetry_scope: &'static str,
pub health_component: String,
pub health_readiness: &'static str,
pub health_liveness: &'static str,
pub degradation_reason: Option<String>,
pub trace_operation: String,
pub trace_id: String,
pub span_id: String,
pub parent_span_id: Option<String>,
pub correlation_id: Option<String>,
pub baseline_metric_names: Vec<&'static str>,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct RestartRequeryAssertion {
pub assertion_id: &'static str,
pub description: &'static str,
pub required: bool,
pub outcome: String,
pub artifact_name: String,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct EvidenceArtifactRef {
pub artifact_name: String,
pub media_type: &'static str,
pub role: &'static str,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct RestartRequeryReplayPayload {
pub replay_bundle_artifact_name: String,
pub scenario_manifest_summary: String,
pub trace_operation: String,
pub trace_id: String,
pub span_id: String,
pub correlation_id: Option<String>,
pub reproduction_commands: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct RestartRequeryEvidenceV1 {
pub schema: &'static str,
pub assurance_scope: &'static str,
pub telemetry_scope: &'static str,
pub workload_identity: WorkloadIdentity,
pub checked_at_epoch_seconds: u64,
pub permits_release: bool,
pub assertions: Vec<RestartRequeryAssertion>,
pub attached_artifacts: Vec<EvidenceArtifactRef>,
pub replay_payload: RestartRequeryReplayPayload,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct WorkloadIdentity {
pub workload_id: &'static str,
pub workload_label: &'static str,
pub fixture_id: &'static str,
pub executor: &'static str,
pub commit_or_version: String,
pub planner_surface: &'static str,
}