step

object step

Sentinel that marks the each(step, …) position in the interceptor DSL chain.

Usage:

before.each(step) { phase -> ... }   // before-phase interceptor
after.each(step) { result -> ... } // after-phase interceptor

The sentinel MUST be the first argument in a regular function call (before.each(step) { }), not used in infix style (before each step { }). Infix syntax causes Kotlin to parse step { } as a call to SagaBuilder.step(name), which conflicts with the existing step-builder DSL.

Inside the interceptor lambda, step resolves to the HaltScope.step / AfterEachScope.step property (a TypedValue), not this sentinel, because the lambda receiver's member takes precedence over outer-scope names.