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 bounded_diagnostic;
8pub use bounded_diagnostic::DiagnosticOccurrence;
9pub use bounded_diagnostic::RegisteredDiagnosticCode;
10mod context;
11mod db_physical_disposition;
12mod deployment_applicability;
13mod diagnostic;
14pub use bounded_diagnostic::{
15    BoundedDiagnostic, BoundedDiagnosticCause, BusinessOutcome, CleanupOutcome,
16    DiagnosticFactUnavailable, DiagnosticOutcomeAxes, InlineDiagnosticText, OperationOutcome,
17    PhysicalDispositionFact, ResponseDelivery,
18};
19mod error;
20pub use diagnostic::{
21    CaptureSite, DeferredDiagnosticStack, Diagnostic, DiagnosticCategory, DiagnosticCause,
22    DiagnosticCode, DiagnosticDriverDetails, DiagnosticInputLocation, DiagnosticLocator,
23    DiagnosticObject, DiagnosticObjectKind, DiagnosticStage, DiagnosticTypeName,
24    DiagnosticTypeUnavailable, ResolvedDiagnosticStack,
25};
26mod generation_pair;
27mod golden_c8_applicability;
28mod golden_c8_startup_assembly;
29mod lifecycle;
30mod observability_block_state;
31mod observability_identity;
32mod rendezvous_manifest;
33mod trusted_candidate_set;
34
35#[doc(hidden)]
36pub use bootstrap_rendezvous::{
37    BootstrapApplicationHalf, BootstrapBindingReceipt, BootstrapListenerHalf,
38    BootstrapListenerIssuer, BootstrapRendezvousError, BootstrapRendezvousIssuer,
39    BootstrapRendezvousWhole, BootstrapRuntimeBindingReceipt, BootstrapRuntimeBindingRemainder,
40    BoundBootstrapRendezvous, GeneratedApplicationFreezeSource, ListenerStartupFreezeSource,
41    VerifiedBootstrapRuntimeBinding, bind_bootstrap_receipt, pair_bootstrap_rendezvous,
42    recover_verified_runtime_bootstrap_binding, restore_bound_bootstrap_rendezvous,
43    take_runtime_bootstrap_receipt, verify_runtime_bootstrap_binding,
44};
45pub use context::{
46    ApplicationId, CallContext, MAX_TRACE_CORRELATION_ID_BYTES, ModuleId, OperationId,
47    RpcCorrelationId, ServiceId, SpanId, TraceCorrelationId, TraceCorrelationIdError, TraceId,
48};
49#[doc(hidden)]
50pub use db_physical_disposition::{
51    DbPhysicalDisposition, DbPhysicalDispositionIssuer, DbPhysicalDispositionOwner,
52    DbPhysicalDispositionReceipt, DbPhysicalExecutionHalf, DbPhysicalProcessCapability,
53    DbPhysicalRequestHalf, DbPhysicalRequestIssuer, DbPhysicalStartupHalf, DbRequestNotUsedReceipt,
54    DbScopeContinuation, DbScopeDiagnosticContext, DbScopeDiagnosticIdentity, DbScopeLogFields,
55    DbScopeObservation, DbScopeTerminalObservation, pair_db_physical_disposition,
56    seal_db_request_not_used,
57};
58#[doc(hidden)]
59pub use deployment_applicability::{
60    DeploymentApplicabilityError, DeploymentSplitError, RevocationSnapshotReceipt,
61    RuntimeResourceShape, RuntimeResourceShapeError, TrustedDeploymentPolicyReceipt,
62    TrustedTimeReceipt, VerifiedDeploymentBundleApplicabilityOwner,
63    VerifiedDeploymentDirectoryAuthority, VerifiedDeploymentDirectoryPermit,
64    VerifiedDeploymentGateBuildAuthoritySeed, VerifiedDeploymentGateBuildOwner,
65    VerifiedDeploymentResourceObservationOwner, VerifiedDeploymentResourcePermit,
66    VerifiedDeploymentSchedulerObservationOwner, VerifiedDeploymentSchedulerObservationSeed,
67    VerifiedDeploymentStartupAuthoritySeed, VerifiedDeploymentSubjectContinuation,
68    VerifiedDeploymentSupervisorStartupOwner, VerifiedDeploymentSupervisorStartupSeed,
69    VerifiedFilesystemServiceBudgetAuthoritySeed, VerifiedFinalDirectoryReceipt,
70    VerifiedFinalDirectoryReceiptPair, VerifiedFinalFilesystemCreatorBinding,
71    VerifiedFinalGeneratedReceipt, VerifiedFinalPairingParts, VerifiedFinalPairingReceipts,
72    VerifiedFinalResourceReceipt, VerifiedFinalSubjectReceipt, VerifiedFinishedFinalDirectorySeal,
73    VerifiedReceiptIssuerTrustAnchorOwner, VerifiedRuntimeResourceParts,
74    VerifiedStartupTimePolicyOwner, consume_deployment_binding_split,
75    consume_final_pairing_receipts, finish_final_pairing_parts,
76    pair_deployment_applicability_generation, pair_deployment_directory_permit,
77    pair_final_startup_receipts, recover_rejected_final_pairing_receipts,
78    restore_final_directory_receipt_pair, seal_verified_runtime_resource_parts,
79    verify_canonical_deployment_resource_observation, verify_deployment_bundle_applicability,
80    verify_deployment_bundle_applicability_pair, verify_production_deployment_receipts,
81};
82pub use error::{ErrorKind, Result, SaddleError};
83pub use generation_pair::{
84    CanonicalSignedFiveLeafGenerationV2Input, FiveLeafGenerationV2NonAuthorityView,
85    FiveLeafV2SignerResponse, FiveLeafV2SigningError, FiveLeafV2SigningRequest,
86    GenerationPairError, VerifiedComponentGenerationPairingReceipt,
87    VerifiedFiveLeafGenerationV2Owner, VerifiedFiveLeafGenerationV2PairedOwner,
88    VerifiedFiveLeafV2SignerPolicyOwner, VerifiedFiveLeafV2SigningRequestApprovalOwner,
89    VerifiedGeneratedComponentGenerationOwner,
90    VerifiedGeneratedComponentGenerationV2FinalTransaction,
91    VerifiedGeneratedComponentGenerationV2Owner, VerifiedGenerationKeyApplicabilityReceipt,
92    VerifiedObservabilityCapacityView, VerifiedSignedDeploymentGenerationOwner,
93    begin_generated_component_generation_v2_final_transaction, bind_generated_component_generation,
94    bind_generated_component_generation_v2, capture_untrusted_five_leaf_v2_signer_response,
95    consume_component_generation_pairing, pair_component_generation,
96    pair_verified_five_leaf_generation_v2, prepare_five_leaf_v2_signing_request,
97    restore_generated_component_generation_v2_final_transaction,
98    verify_approved_five_leaf_generation_v2, verify_five_leaf_v2_signing_response,
99};
100#[doc(hidden)]
101pub use golden_c8_applicability::{
102    ApprovedGoldenC8ApplicabilityInput, GoldenC8ApplicabilityRejection,
103    VerifiedGoldenC8ApplicabilityOwner, approved_golden_c8_applicability_input,
104    verify_golden_c8_applicability,
105};
106#[doc(hidden)]
107pub use golden_c8_startup_assembly::{
108    ApprovedGoldenC8StartupAssemblyInput, GoldenC8StartupAssemblyRejection,
109    VerifiedGoldenC8StartupAssemblyInputOwner, approved_golden_c8_startup_assembly_input,
110    verify_golden_c8_startup_assembly_input,
111};
112pub use lifecycle::{ComponentLifecycle, LifecycleFuture};
113#[doc(hidden)]
114pub use observability_block_state::{
115    ObservabilityBlockState, allocate_observability_block_states,
116    observability_block_state_array_layout, observability_block_state_schema_identity,
117};
118#[doc(hidden)]
119pub use observability_identity::{
120    ObservabilityBundleIdentityAuthority, ObservabilityBundleIdentityContinuation,
121    SignedDirectoryIssuerError, VerifiedSignedDirectorySubjectContinuation,
122    issue_final_directory_receipts, issue_observability_bundle_identity,
123    pair_signed_directory_subject_generation, pair_signed_directory_subject_generation_v2,
124    verify_observability_bundle_binding, verify_signed_directory_subject,
125    verify_signed_directory_subject_deployment_pair,
126};
127#[doc(hidden)]
128pub use rendezvous_manifest::{
129    CanonicalSignedRendezvousManifestInput, RendezvousManifestPreflightError,
130    StructurallyVerifiedRendezvousManifestPreflightOwner,
131    VerifiedRendezvousManifestKeyApplicabilityReceipt,
132    verify_rendezvous_manifest_structural_preflight,
133};
134#[doc(hidden)]
135pub use trusted_candidate_set::{
136    ApprovedTrustedCandidateSetInput, TrustedCandidateSetRejection,
137    VerifiedTrustedCandidateSetOwner, approved_trusted_candidate_set_input,
138    rollback_trusted_candidate_set, verify_trusted_candidate_set,
139};