Skip to main content

saddle_core/
lib.rs

1//! Stable contracts shared by Saddle components.
2//!
3//! Business applications should depend on the `saddle` facade instead of this
4//! crate directly.
5
6mod bootstrap_rendezvous;
7mod context;
8mod db_physical_disposition;
9mod deployment_applicability;
10mod error;
11mod generation_pair;
12mod golden_c8_applicability;
13mod golden_c8_startup_assembly;
14mod lifecycle;
15mod observability_block_state;
16mod observability_identity;
17mod rendezvous_manifest;
18mod trusted_candidate_set;
19
20#[doc(hidden)]
21pub use bootstrap_rendezvous::{
22    BootstrapApplicationHalf, BootstrapBindingReceipt, BootstrapListenerHalf,
23    BootstrapListenerIssuer, BootstrapRendezvousError, BootstrapRendezvousIssuer,
24    BootstrapRendezvousWhole, BootstrapRuntimeBindingReceipt, BootstrapRuntimeBindingRemainder,
25    BoundBootstrapRendezvous, GeneratedApplicationFreezeSource, ListenerStartupFreezeSource,
26    VerifiedBootstrapRuntimeBinding, bind_bootstrap_receipt, pair_bootstrap_rendezvous,
27    recover_verified_runtime_bootstrap_binding, restore_bound_bootstrap_rendezvous,
28    take_runtime_bootstrap_receipt, verify_runtime_bootstrap_binding,
29};
30pub use context::{
31    ApplicationId, CallContext, MAX_TRACE_CORRELATION_ID_BYTES, ModuleId, OperationId,
32    RpcCorrelationId, ServiceId, SpanId, TraceCorrelationId, TraceCorrelationIdError, TraceId,
33};
34#[doc(hidden)]
35pub use db_physical_disposition::{
36    DbPhysicalDisposition, DbPhysicalDispositionIssuer, DbPhysicalDispositionOwner,
37    DbPhysicalDispositionReceipt, DbPhysicalExecutionHalf, DbPhysicalProcessCapability,
38    DbPhysicalRequestHalf, DbPhysicalRequestIssuer, DbPhysicalStartupHalf, DbRequestNotUsedReceipt,
39    DbScopeContinuation, DbScopeLogFields, DbScopeObservation, DbScopeTerminalObservation,
40    pair_db_physical_disposition, seal_db_request_not_used,
41};
42#[doc(hidden)]
43pub use deployment_applicability::{
44    DeploymentApplicabilityError, DeploymentSplitError, RevocationSnapshotReceipt,
45    RuntimeResourceShape, RuntimeResourceShapeError, TrustedDeploymentPolicyReceipt,
46    TrustedTimeReceipt, VerifiedDeploymentBundleApplicabilityOwner,
47    VerifiedDeploymentDirectoryAuthority, VerifiedDeploymentDirectoryPermit,
48    VerifiedDeploymentGateBuildAuthoritySeed, VerifiedDeploymentGateBuildOwner,
49    VerifiedDeploymentResourceObservationOwner, VerifiedDeploymentResourcePermit,
50    VerifiedDeploymentSchedulerObservationOwner, VerifiedDeploymentSchedulerObservationSeed,
51    VerifiedDeploymentStartupAuthoritySeed, VerifiedDeploymentSubjectContinuation,
52    VerifiedDeploymentSupervisorStartupOwner, VerifiedDeploymentSupervisorStartupSeed,
53    VerifiedFilesystemServiceBudgetAuthoritySeed, VerifiedFinalDirectoryReceipt,
54    VerifiedFinalDirectoryReceiptPair, VerifiedFinalFilesystemCreatorBinding,
55    VerifiedFinalGeneratedReceipt, VerifiedFinalPairingParts, VerifiedFinalPairingReceipts,
56    VerifiedFinalResourceReceipt, VerifiedFinalSubjectReceipt, VerifiedFinishedFinalDirectorySeal,
57    VerifiedReceiptIssuerTrustAnchorOwner, VerifiedRuntimeResourceParts,
58    VerifiedStartupTimePolicyOwner, consume_deployment_binding_split,
59    consume_final_pairing_receipts, finish_final_pairing_parts,
60    pair_deployment_applicability_generation, pair_deployment_directory_permit,
61    pair_final_startup_receipts, recover_rejected_final_pairing_receipts,
62    restore_final_directory_receipt_pair, seal_verified_runtime_resource_parts,
63    verify_canonical_deployment_resource_observation, verify_deployment_bundle_applicability,
64    verify_deployment_bundle_applicability_pair, verify_production_deployment_receipts,
65};
66pub use error::{ErrorKind, Result, SaddleError};
67pub use generation_pair::{
68    CanonicalSignedFiveLeafGenerationV2Input, FiveLeafGenerationV2NonAuthorityView,
69    FiveLeafV2SignerResponse, FiveLeafV2SigningError, FiveLeafV2SigningRequest,
70    GenerationPairError, VerifiedComponentGenerationPairingReceipt,
71    VerifiedFiveLeafGenerationV2Owner, VerifiedFiveLeafGenerationV2PairedOwner,
72    VerifiedFiveLeafV2SignerPolicyOwner, VerifiedFiveLeafV2SigningRequestApprovalOwner,
73    VerifiedGeneratedComponentGenerationOwner,
74    VerifiedGeneratedComponentGenerationV2FinalTransaction,
75    VerifiedGeneratedComponentGenerationV2Owner, VerifiedGenerationKeyApplicabilityReceipt,
76    VerifiedObservabilityCapacityView, VerifiedSignedDeploymentGenerationOwner,
77    begin_generated_component_generation_v2_final_transaction, bind_generated_component_generation,
78    bind_generated_component_generation_v2, capture_untrusted_five_leaf_v2_signer_response,
79    consume_component_generation_pairing, pair_component_generation,
80    pair_verified_five_leaf_generation_v2, prepare_five_leaf_v2_signing_request,
81    restore_generated_component_generation_v2_final_transaction,
82    verify_approved_five_leaf_generation_v2, verify_five_leaf_v2_signing_response,
83};
84#[doc(hidden)]
85pub use golden_c8_applicability::{
86    ApprovedGoldenC8ApplicabilityInput, GoldenC8ApplicabilityRejection,
87    VerifiedGoldenC8ApplicabilityOwner, approved_golden_c8_applicability_input,
88    verify_golden_c8_applicability,
89};
90#[doc(hidden)]
91pub use golden_c8_startup_assembly::{
92    ApprovedGoldenC8StartupAssemblyInput, GoldenC8StartupAssemblyRejection,
93    VerifiedGoldenC8StartupAssemblyInputOwner, approved_golden_c8_startup_assembly_input,
94    verify_golden_c8_startup_assembly_input,
95};
96pub use lifecycle::{ComponentLifecycle, LifecycleFuture};
97#[doc(hidden)]
98pub use observability_block_state::{
99    ObservabilityBlockState, allocate_observability_block_states,
100    observability_block_state_array_layout, observability_block_state_schema_identity,
101};
102#[doc(hidden)]
103pub use observability_identity::{
104    ObservabilityBundleIdentityAuthority, ObservabilityBundleIdentityContinuation,
105    SignedDirectoryIssuerError, VerifiedSignedDirectorySubjectContinuation,
106    issue_final_directory_receipts, issue_observability_bundle_identity,
107    pair_signed_directory_subject_generation, pair_signed_directory_subject_generation_v2,
108    verify_observability_bundle_binding, verify_signed_directory_subject,
109    verify_signed_directory_subject_deployment_pair,
110};
111#[doc(hidden)]
112pub use rendezvous_manifest::{
113    CanonicalSignedRendezvousManifestInput, RendezvousManifestPreflightError,
114    StructurallyVerifiedRendezvousManifestPreflightOwner,
115    VerifiedRendezvousManifestKeyApplicabilityReceipt,
116    verify_rendezvous_manifest_structural_preflight,
117};
118#[doc(hidden)]
119pub use trusted_candidate_set::{
120    ApprovedTrustedCandidateSetInput, TrustedCandidateSetRejection,
121    VerifiedTrustedCandidateSetOwner, approved_trusted_candidate_set_input,
122    rollback_trusted_candidate_set, verify_trusted_candidate_set,
123};