Skip to main content

platform_core/
lib.rs

1pub mod admin_actions;
2pub mod clock;
3pub mod config;
4pub mod context;
5pub mod db;
6pub mod error;
7pub mod events;
8pub mod execution;
9pub mod execution_logs;
10pub mod health;
11pub mod ids;
12pub mod migrations;
13pub mod outbox;
14pub mod redis;
15pub mod remote_proxy_calls;
16pub mod runtime_config;
17pub mod shutdown;
18pub mod story_events;
19pub mod telemetry;
20pub mod telemetry_attrs;
21pub mod telemetry_query;
22pub mod worker_runtime_config;
23
24pub use admin_actions::{
25    AdminActionStoryRecord, admin_action_story_event_id, insert_admin_action_story_event,
26};
27pub use clock::{Clock, SystemClock};
28pub use config::{
29    AppConfig, AuthConfig, DEFAULT_LINKED_MODULE_PROFILE, DatabaseConfig, HttpConfig,
30    LENSO_COMPOSITION_PROFILE_ENV, LogFormat, ModuleConfig, ModuleSourcesConfig, RedisConfig,
31    RemoteModuleSourceConfig, ServiceConfig, TelemetryConfig, is_local_development_environment,
32    parse_cors_allowed_origins,
33};
34pub use context::{
35    ActorContext, ActorResolutionRequest, ActorResolver, AppContext, CorrelationId,
36    DevActorResolver, RequestContext, RequestId, TenantId, TraceContext,
37};
38pub use db::{DbPool, connect_pool};
39pub use error::{AppError, AppResult, ErrorCode};
40pub use events::{EventEnvelope, EventPayload, EventPublisher, LoggingEventPublisher};
41pub use execution::{ExecutionContext, ExecutionId};
42pub use execution_logs::{
43    ExecutionLogProvider, ExecutionLogQuery, ExecutionLogRow, PostgresExecutionLogProvider,
44};
45pub use health::{HealthRegistry, HealthStatus};
46pub use ids::{IdGenerator, UuidGenerator};
47pub use lenso_contracts::{StoryDisplayDescriptor, StoryDisplaySource};
48pub use migrations::{Migration, PLATFORM_MIGRATIONS, apply_migrations};
49pub use outbox::{
50    ClaimedOutboxEvent, EventDispatcher, EventHandler, EventHandlerRegistry,
51    LoggingEventDispatcher, OutboxEvent, OutboxPublisher, OutboxRelay, OutboxStatus,
52};
53pub use redis::{RedisConnection, connect_redis};
54pub use remote_proxy_calls::{
55    RemoteHttpProxyCallRecord, insert_remote_http_proxy_call, remote_proxy_call_story_event_id,
56};
57pub use runtime_config::{
58    CONFIG_NOTIFY_CHANNEL, PostgresRuntimeConfigProvider, RuntimeConfigAuditEntry,
59    RuntimeConfigCell, RuntimeConfigDescriptor, RuntimeConfigGeneratedValue,
60    RuntimeConfigGroupDescriptor, RuntimeConfigProvider, RuntimeConfigRegistry, RuntimeConfigScope,
61    RuntimeConfigSnapshot, RuntimeConfigSource, RuntimeConfigType,
62    RuntimeConfigVisibilityCondition, StaticRuntimeConfigProvider, StoredRuntimeConfig,
63};
64pub use shutdown::Shutdown;
65pub use telemetry_attrs::{
66    RuntimeSpanAttributes, generate_trace_context, record_runtime_span_attributes,
67    trace_context_from_headers, trace_context_from_traceparent, trace_headers,
68};
69pub use telemetry_query::{
70    InMemoryTelemetrySpanProvider, NoopTelemetrySpanProvider, TelemetrySpan, TelemetrySpanProvider,
71    TelemetrySpanQuery,
72};
73pub use worker_runtime_config::WorkerRuntimeConfig;