Skip to content

Source COMMAND_STARTED from the actor output, not the dispatched event #818

Description

@tobyhede

Parent

#799. Design record: .scratch/render-execution-unit/spec.md.

What to build

Build the COMMAND_STARTED observation from the command actor's output rather than from the dispatched event.

Its two sibling effects — command-completed and policy-denied — already spread the actor output. COMMAND_STARTED is the only one of the three still reaching into the event for data the output carries. Both arms of the actor's output union carry the rendered command and the display command, the latter documented "for observations".

This is a precondition for emptying the EXECUTE_COMMAND event later, and it stands on its own as consistency.

Acceptance criteria

  • The effect is built from the actor output; the event's command fields have no remaining reader in the observation path.
  • Emission order is unchanged — started still precedes completed on the stream — and that order is asserted by a test rather than guaranteed by statement position.
  • The absent-output case is decided and tested. Today an EXECUTE_COMMAND that produces no actor output still emits a started event for a command that never ran; sourcing from the output emits nothing. Whichever is chosen, a test states it.

Blocked by

None — can start immediately.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2: mediumFeature / architectural cleanupenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions