Directories
¶
| Path | Synopsis |
|---|---|
|
Package command defines the canonical, runtime-independent command/result envelope contract (EGO-WRITE-003): operation identity, correlation, causation, a tenant slot composing tenancy/, a principal slot, governed custom metadata, temporal fields and a six-kind outcome taxonomy.
|
Package command defines the canonical, runtime-independent command/result envelope contract (EGO-WRITE-003): operation identity, correlation, causation, a tenant slot composing tenancy/, a principal slot, governed custom metadata, temporal fields and a six-kind outcome taxonomy. |
|
Package compose is the runtime-neutral half of Ego's composition root (openspec/changes/ego-arch-003/design.md).
|
Package compose is the runtime-neutral half of Ego's composition root (openspec/changes/ego-arch-003/design.md). |
|
goakt
Package goakt is Ego's composition root for the GoAkt runtime (openspec/changes/ego-arch-003/design.md).
|
Package goakt is Ego's composition root for the GoAkt runtime (openspec/changes/ego-arch-003/design.md). |
|
internal/adapters
Package adapters is the runtime-free start-and-probe loop Ego's composition roots run over the adapters they own (openspec/changes/ego-arch-004/design.md §D4).
|
Package adapters is the runtime-free start-and-probe loop Ego's composition roots run over the adapters they own (openspec/changes/ego-arch-004/design.md §D4). |
|
internal/lifecycle
Package lifecycle is the runtime-free start/stop sequencer shared by Ego's composition roots (openspec/changes/ego-arch-003/design.md §D1, §D6, §D7).
|
Package lifecycle is the runtime-free start/stop sequencer shared by Ego's composition roots (openspec/changes/ego-arch-003/design.md §D1, §D6, §D7). |
|
internal
|
|
|
engine/durablestate
Package durablestate implements the durable state actor, which keeps the current state of an entity in a state store and versions every write.
|
Package durablestate implements the durable state actor, which keeps the current state of an entity in a state store and versions every write. |
|
engine/enginetest
Package enginetest holds test fixtures shared by the engine actor packages and engine's own tests: sample behaviors and a discarding logger.
|
Package enginetest holds test fixtures shared by the engine actor packages and engine's own tests: sample behaviors and a discarding logger. |
|
engine/eventsource
Package eventsource implements the event sourced actor and the child actors it uses to persist: the events writer, the snapshots writer and the events janitor that applies the retention policy.
|
Package eventsource implements the event sourced actor and the child actors it uses to persist: the events writer, the snapshots writer and the events janitor that applies the retention policy. |
|
engine/projection
Package projection implements the projection host actor: the singleton that runs one projectionrunner.Runner for a registered projection and reports a runner that stopped permanently.
|
Package projection implements the projection host actor: the singleton that runs one projectionrunner.Runner for a registered projection and reports a runner that stopped permanently. |
|
engine/protocol
Package protocol is the command protocol between the engine and the actors it spawns: the command metadata carried in the context of a dispatch, the deadline gate an actor applies before running a handler, the parsing of a command reply and its classification into a command.Result, the tenant binding answer, and the names of the event and state streams.
|
Package protocol is the command protocol between the engine and the actors it spawns: the command metadata carried in the context of a dispatch, the deadline gate an actor applies before running a handler, the parsing of a command reply and its classification into a command.Result, the tenant binding answer, and the names of the event and state streams. |
|
engine/saga
Package saga implements the saga actor: a process manager that subscribes to the event stream, reacts to events through a saga behavior, persists its own events and coordinates commands to other entities.
|
Package saga implements the saga actor: a process manager that subscribes to the event stream, reacts to events through a saga behavior, persists its own events and coordinates commands to other entities. |
|
goaktlog
Package goaktlog presents a kit-logger Logger to the GoAkt actor runtime through GoAkt's own log.Logger interface.
|
Package goaktlog presents a kit-logger Logger to the GoAkt actor runtime through GoAkt's own log.Logger interface. |
|
instrumentation
Package instrumentation owns ego's OpenTelemetry contract: the metric instruments (names, kinds, descriptions), the span names and attribute keys, and the global propagator the engine installs.
|
Package instrumentation owns ego's OpenTelemetry contract: the metric instruments (names, kinds, descriptions), the span names and attribute keys, and the global propagator the engine installs. |
|
logging
Package logging holds the logger-resolution glue that both the GoAkt runtime adapter (package engine) and application-layer packages such as migration need: the default kit-logger instance and the typed-nil-safe fallback used whenever a caller may hand in a nil or typed-nil Logger.
|
Package logging holds the logger-resolution glue that both the GoAkt runtime adapter (package engine) and application-layer packages such as migration need: the default kit-logger instance and the typed-nil-safe fallback used whenever a caller may hand in a nil or typed-nil Logger. |
|
projectionrunner
Package projectionrunner executes a projection: it pulls events from the events store shard by shard, hands them to the projection handler under the configured recovery policy, forwards failed events to the dead letter handler, and commits the processed offsets.
|
Package projectionrunner executes a projection: it pulls events from the events store shard by shard, hands them to the projection handler under the configured recovery policy, forwards failed events to the dead letter handler, and commits the processed offsets. |
|
runtimeconsumer
Package runtimeconsumer is evidence for #147, not API: consumer code written only against the runtime-neutral contracts — port/runtime, port/behavior and the internal/testpb messages — never against package ego or GoAkt (openspec/changes/ego-runtime-001/design.md §D8).
|
Package runtimeconsumer is evidence for #147, not API: consumer code written only against the runtime-neutral contracts — port/runtime, port/behavior and the internal/testpb messages — never against package ego or GoAkt (openspec/changes/ego-runtime-001/design.md §D8). |
|
Package migration provides utilities for migrating event-sourced entities from the legacy format (where events carried resulting_state inline) to the new format (where snapshots are stored separately in a SnapshotStore).
|
Package migration provides utilities for migrating event-sourced entities from the legacy format (where events carried resulting_state inline) to the new format (where snapshots are stored separately in a SnapshotStore). |
|
conformance
Package conformance is a store-agnostic, cross-tenant isolation conformance suite for the three store interfaces in package persistence: EventsStore, StateStore, and SnapshotStore.
|
Package conformance is a store-agnostic, cross-tenant isolation conformance suite for the three store interfaces in package persistence: EventsStore, StateStore, and SnapshotStore. |
|
port
|
|
|
adapter
Package adapter is the part of the adapter SPI that is common to every port: how an adapter says which ports it serves and which optional capabilities it has, and the optional lifecycle interfaces Starter and Pinger (ego-arch-004 design §D1–§D3).
|
Package adapter is the part of the adapter SPI that is common to every port: how an adapter says which ports it serves and which optional capabilities it has, and the optional lifecycle interfaces Starter and Pinger (ego-arch-004 design §D1–§D3). |
|
adapter/adaptertest
Package adaptertest is the conformance suite every adapter can run in its own tests: publishers, stores and future adapters.
|
Package adaptertest is the conformance suite every adapter can run in its own tests: publishers, stores and future adapters. |
|
behavior
Package behavior defines the runtime-neutral contracts for the domain code a user writes for Ego: the command and event handlers of an event-sourced entity (EventSourced), of a durable state entity (DurableState), and of a saga (Saga).
|
Package behavior defines the runtime-neutral contracts for the domain code a user writes for Ego: the command and event handlers of an event-sourced entity (EventSourced), of a durable state entity (DurableState), and of a saga (Saga). |
|
publishing
Package publishing defines the contracts Ego uses to hand persisted events and durable state to external systems such as message brokers.
|
Package publishing defines the contracts Ego uses to hand persisted events and durable state to external systems such as message brokers. |
|
publishing/publishingtest
Package publishingtest is the conformance suite for publishers: the publisher-specific rules of ego-arch-004 design §D8, which every publishing.EventPublisher and publishing.StatePublisher runs in its own tests next to port/adapter/adaptertest.
|
Package publishingtest is the conformance suite for publishers: the publisher-specific rules of ego-arch-004 design §D8, which every publishing.EventPublisher and publishing.StatePublisher runs in its own tests next to port/adapter/adaptertest. |
|
runtime
Package runtime is the runtime-neutral contract of the application side of Ego's runtime SPI: the types, spawn options and errors that code running entities, sagas and projections needs, whichever runtime hosts them.
|
Package runtime is the runtime-neutral contract of the application side of Ego's runtime SPI: the types, spawn options and errors that code running entities, sagas and projections needs, whichever runtime hosts them. |
|
publisher
|
|
|
kafka
module
|
|
|
nats
module
|
|
|
pulsar
module
|
|
|
websocket
module
|
|
Click to show internal directories.
Click to hide internal directories.