1#![deny(missing_docs)]
2#![deny(rust_2018_idioms)]
3#![deny(rustdoc::broken_intra_doc_links)]
4
5pub mod approver_registry;
19pub mod audit;
20pub mod clock;
21pub mod emit;
22pub mod error;
23pub mod key_registry;
24pub mod ops_event;
25pub mod redactor;
26pub mod run_context;
27pub mod runtime;
28pub mod signer;
29pub mod source_identity_registry;
30pub mod tenant;
31pub mod types;
32
33pub use approver_registry::{ApproverId, ApproverRegistry, StaticApproverRegistry};
34pub use audit::OpsAuditSink;
35#[cfg(feature = "hot-reload")]
36pub use key_registry::HotReloadableEd25519Registry;
37pub use key_registry::{
38 load_ed25519_yaml, Ed25519KeyRegistry, KeyRegistryError, StaticEd25519KeyRegistry,
39};
40pub use signer::{SignedPayload, SignerError, SignerProvider, SoftwareSigner};
41pub use source_identity_registry::{
42 SourceIdentityRegistry, SourceIdentityRegistryError, StaticSourceIdentityRegistry,
43};
44
45#[cfg(feature = "supervisor")]
46pub mod supervisor;
47
48#[cfg(feature = "governor")]
49pub mod governor;
50
51#[cfg(feature = "gates")]
52pub mod gates;
53
54#[cfg(feature = "escalation")]
55pub mod escalation;
56
57#[cfg(feature = "worklog")]
58pub mod worklog;
59
60#[cfg(feature = "handoff")]
61pub mod handoff;
62
63#[cfg(feature = "crypter")]
64pub mod crypter;
65#[cfg(feature = "crypter")]
66pub use crypter::{Crypter, CrypterError, KeyProvider, StaticKeyProvider, TenantKeyedCrypter};
67
68#[cfg(feature = "test-utils")]
69pub mod test_fixtures;
70
71pub use emit::emit_ops_event;
72pub use error::{BuildError, OpsError};
73pub use ops_event::OpsEvent;
74pub use run_context::{current_run_context, scope_run_context, spawn_with_run_context, RunContext};
75pub use runtime::OpsRuntime;
76pub use tenant::{spawn_with_context, TenantResolver};
77pub use types::{
78 AgentId, AgentMeta, BudgetScope, KillReason, KillTrigger, ProviderId, RuntimeState, TenantId,
79};