app

Local-first trade for farms and co-ops
git clone https://radroots.dev/git/app.git
Log | Files | Refs | README | LICENSE

lib.rs (3257B)


      1 #![doc = "HarvestCircle application runtime."]
      2 
      3 pub mod actor;
      4 pub mod app_core;
      5 pub mod availability_outcomes;
      6 pub mod availability_ports;
      7 pub mod availability_query;
      8 mod change_stream;
      9 pub mod config;
     10 pub mod custody;
     11 pub mod identities;
     12 pub mod ports;
     13 mod profile_refresh;
     14 pub mod recovery;
     15 pub mod secrets;
     16 pub mod session;
     17 pub mod snapshot;
     18 pub mod state_machine;
     19 
     20 #[cfg(test)]
     21 mod test_support;
     22 
     23 pub use actor::{
     24     ActiveSessionBinding, ActorMailbox, CommandContext, CommandEnvelope, CommandReceipt,
     25     CommandRejection, CommandResult, CommandSubmission, CommandTicket, LifecycleGate, RequestId,
     26     RuntimeCommandClass, RuntimeLifecycle, SessionGeneration, TaskCorrelation,
     27 };
     28 pub use app_core::{AppCore, RemovalConfirmationToken, RemovalImpact};
     29 pub use availability_outcomes::{
     30     AvailabilityDiscoveryOutcome, AvailabilityDiscoveryProgress, AvailabilityDiscoveryRequest,
     31     AvailabilityDiscoveryState, AvailabilityDiscoveryStopReason,
     32     AvailabilityDiscoveryTargetOutcome, AvailabilityDiscoveryUsage,
     33     DISCOVERY_FETCH_RAW_RESERVATION_BYTES, MAX_DISCOVERY_FETCH_CALLS, MAX_DISCOVERY_METADATA_BYTES,
     34     MAX_DISCOVERY_RETURNED_EVENTS, MAX_DISCOVERY_RETURNED_PER_TARGET, MAX_DISCOVERY_TARGETS,
     35 };
     36 pub use availability_ports::{
     37     AvailabilityLocalAdmission, AvailabilityLocalReadPort, AvailabilityMonotonicClock,
     38     AvailabilityQueryService, AvailabilityRefreshOperation, AvailabilityRefreshPort,
     39 };
     40 pub use availability_query::{AvailabilityLocalQueryScope, ScopedAvailabilityQuery};
     41 pub use change_stream::{
     42     ChangeSubscriptionId, OrderedSnapshotChanges, SnapshotChange, SnapshotChangeReceiver,
     43 };
     44 pub use config::{RelayEndpointInput, relay_configuration_from_endpoints};
     45 pub use custody::{
     46     GENERATED_KEY_STAGE_TTL, GeneratedKeyRecoveryHandle, GeneratedKeyStage, GeneratedKeyStageView,
     47     RecoveryStageId, StagedGeneratedKey,
     48 };
     49 #[cfg(test)]
     50 pub use identities::InMemoryOperationJournal;
     51 pub use identities::{GenerateIdentityReceipt, ImportIdentityReceipt, InMemoryIdentityRepository};
     52 pub use ports::{
     53     AppStateRepository, BoxFuture, CachedProfile, Clock, DurableIdentityOperation,
     54     DurableOperationKind, DurableOperationPhase, DurableOperationReceipt,
     55     DurableOperationRepository, DurableOperationStart, DurableRequestId, DurableTerminalOutcome,
     56     GeneratedKeyMaterial, IdentityNamespaceRepository, IdentityPreferenceKey, IdentityRepository,
     57     ImportedKeyMaterial, KeyMaterialProvider, NostrClient, OperationDiagnostic,
     58     OperationPriorState, ProfileFetchResult, ProfileRefreshStatus, ProfileRepository,
     59     RelayFetchCompleteness,
     60 };
     61 #[cfg(test)]
     62 pub use ports::{
     63     IdentityOperationKind, IdentityOperationPhase, OperationId, OperationJournal,
     64     PendingIdentityOperation,
     65 };
     66 pub use profile_refresh::ProfileRefreshPlan;
     67 pub use radroots_transport_nostr::{
     68     RelayAccess, RelayEndpoint, RelayProfileKind, RelayUrl, RelayUrlPolicy,
     69 };
     70 pub use secrets::{
     71     FailureSecretStore, InMemorySecretStore, SecretStore, SecretStoreCall, SecretStoreOperation,
     72 };
     73 pub use snapshot::{
     74     ActiveIdentitySnapshot, AppLifecycle, AppSnapshot, MAX_CONFIGURED_RELAYS, ProfileLoadState,
     75     RelayConfiguration, RelayConnectionState, SessionState, SnapshotRevision,
     76 };
     77 pub use state_machine::{StateMachine, StateTransition};