Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
Package api β WebSocket stream handler for the run inspector.
|
Package api β WebSocket stream handler for the run inspector. |
|
clients
|
|
|
go/worker
Package worker is the shared library every saga-action worker imports to run as a worker.
|
Package worker is the shared library every saga-action worker imports to run as a worker. |
|
go/worker/testing
Package workertest provides an in-process harness so per-service worker tests can verify their handlers in isolation without RabbitMQ + gRPC + the real go-saga-orchestration stack.
|
Package workertest provides an in-process harness so per-service worker tests can verify their handlers in isolation without RabbitMQ + gRPC + the real go-saga-orchestration stack. |
|
Package clock abstracts time so the engine + verbs can be tested without real wall-clock delays.
|
Package clock abstracts time so the engine + verbs can be tested without real wall-clock delays. |
|
cmd
|
|
|
api
command
Command go-saga-orchestration-api is the REST surface for go-saga-orchestration.
|
Command go-saga-orchestration-api is the REST surface for go-saga-orchestration. |
|
engine
command
Command go-saga-orchestration-engine runs the saga coordinator: it consumes saga.advance messages, dispatches steps, runs the timer dispatcher, and serves the gRPC worker API (ExecuteStep streams) on the configured port (default :9090).
|
Command go-saga-orchestration-engine runs the saga coordinator: it consumes saga.advance messages, dispatches steps, runs the timer dispatcher, and serves the gRPC worker API (ExecuteStep streams) on the configured port (default :9090). |
|
Package domain contains the in-process types go-saga-orchestration exchanges with its HTTP layer, store, and engine.
|
Package domain contains the in-process types go-saga-orchestration exchanges with its HTTP layer, store, and engine. |
|
Package engine contains the saga coordinator and the built-in verb dispatch table.
|
Package engine contains the saga coordinator and the built-in verb dispatch table. |
|
verbs
Package verbs holds built-in verb handlers.
|
Package verbs holds built-in verb handlers. |
|
examples
|
|
|
basic
command
Command basic is a minimal, runnable example of embedding the saga orchestration engine as a library β no Postgres or RabbitMQ required.
|
Command basic is a minimal, runnable example of embedding the saga orchestration engine as a library β no Postgres or RabbitMQ required. |
|
internal
|
|
|
cel
Package cel embeds google/cel-go to give go-saga-orchestration built-in verbs and rule definitions one shared expression language.
|
Package cel embeds google/cel-go to give go-saga-orchestration built-in verbs and rule definitions one shared expression language. |
|
config
Package config loads go-saga-orchestration process-level configuration from environment variables.
|
Package config loads go-saga-orchestration process-level configuration from environment variables. |
|
dispatch
Package dispatch provides transport-specific delivery of action dispatch payloads for the ActionRegistration dispatch descriptor (issue #59).
|
Package dispatch provides transport-specific delivery of action dispatch payloads for the ActionRegistration dispatch descriptor (issue #59). |
|
grpc
Package grpc wires the engine-side gRPC server.
|
Package grpc wires the engine-side gRPC server. |
|
logging
Package logging configures the process-wide zerolog logger.
|
Package logging configures the process-wide zerolog logger. |
|
mq
Package mq wraps the platform RabbitMQ for go-saga-orchestration's needs.
|
Package mq wraps the platform RabbitMQ for go-saga-orchestration's needs. |
|
rules
Package rules evaluates rule definitions.
|
Package rules evaluates rule definitions. |
|
storefactory
Package storefactory selects and opens a store.Store backend based on the STORE_TYPE environment variable.
|
Package storefactory selects and opens a store.Store backend based on the STORE_TYPE environment variable. |
|
Package licensing resolves feature flags for verb license-group gating.
|
Package licensing resolves feature flags for verb license-group gating. |
|
proto
|
|
|
Package saga is the embedding entrypoint: construct an in-process saga engine, register workflows and custom verbs, and drive runs β without running the engine binaries.
|
Package saga is the embedding entrypoint: construct an in-process saga engine, register workflows and custom verbs, and drive runs β without running the engine binaries. |
|
Package secrets resolves a secret_ref string (e.g.
|
Package secrets resolves a secret_ref string (e.g. |
|
Package store defines the persistence interface go-saga-orchestration uses for definitions, runs, events, and registry rows.
|
Package store defines the persistence interface go-saga-orchestration uses for definitions, runs, events, and registry rows. |
|
memory
Package memory is an in-process store used by unit tests.
|
Package memory is an in-process store used by unit tests. |
|
postgres
Package postgres is the production Store implementation.
|
Package postgres is the production Store implementation. |
|
redis
Package redis is a Redis/Valkey-backed store.Store implementation.
|
Package redis is a Redis/Valkey-backed store.Store implementation. |
|
storetest
Package storetest provides a backend-agnostic conformance ("contract") test suite for the store.Store interface.
|
Package storetest provides a backend-agnostic conformance ("contract") test suite for the store.Store interface. |
Click to show internal directories.
Click to hide internal directories.