keep
Entry point for the keep audit in journal conversational DSL (F006 AC1).
Starts the chain keep.audit \in\` journal` which sets the saga's journal and resolves the payload codec from the PayloadCodec companion registry.
Usage:
// Register once at startup:
PayloadCodec.register<OrderEvent>(orderCodec)
// Inside sagaExecutor { } block:
sagaExecutor<OrderCtx, OrderResult> {
keep.audit `in` roomJournal // T = OrderEvent inferred, codec resolved
first call Step.CHARGE with { ... }
}Content copied to clipboard
Typed escape hatch: if you prefer not to use the registry (e.g., in tests, or when using a persistent adapter with a custom codec), use the typed factory directly:
sagaExecutor<OrderCtx, OrderResult, OrderEvent>(
journal = roomJournal,
) { ... }Content copied to clipboard