Pudu programming language
Menu
Package

@chrismichaelps / pudu-lang-mediator

In-process messaging for Pudu: requests, notifications, streams, pipeline behaviors, processors, and exception handling

0.1.0Apache-2.01

InstallClose

ADR-0003-pipeline-order.md

Markdown34 lines1.0 KB

GitHub ↗

ADR-0003 — One documented order for every layer


type: adr status: Accepted tags: [adr]


Context

Behaviors, processors, and exception components can be open or per kind and registered in any order. Their order changes what each observes.

Decision

Outermost first: exception actions and exception handlers (actions outside for ForUnhandled, the default, inside for ForAll), pre-processors, post-processors, then behaviors open and per kind in registration order, then the handler ([[domain/Pipeline]], [[src/PuduLangMediator/Compose]]). Within each layer, open and per-kind components keep their registration order ([[src/PuduLangMediator/Domain/Order]]).

Consequences

  • Exception components see failures from every layer, including processors.
  • Post-processors run only on a value and before any behavior sees it on the way out.

Rejected

  • Processors as ordinary behaviors: their place would depend on where they were registered.

Referenced by

[[CHANGELOG]] · [[decisions/_MOC]] · [[domain/Pipeline]] · [[handoffs/2026-10-06-initial-package]] · [[src/PuduLangMediator/Compose]]