ADR 004 · Superseded

PSR-14 Event System

Status

Superseded by ADR-026 (2024-02, superseded 2026)

Context

Consumers need extension points for:

  • Logging and monitoring.

  • Request modification.

  • Response processing.

  • Cost tracking and rate limiting.

Decision

Use TYPO3's PSR-14 event system with events:

  • BeforeRequestEvent: Modify requests before sending.

  • AfterResponseEvent: Process responses after receiving.

Events are dispatched by LlmServiceManager and provide:

  • Full context (messages, options, provider).

  • Mutable options (before request).

  • Response data (after response).

  • Timing information.

Consequences

Positive:

  • ●● Follows TYPO3 conventions.

  • ●● Decoupled extension mechanism.

  • ● Multiple listeners without modification.

  • ● Testable event handlers.

Negative:

  • ◑ Event overhead on every request.

  • ◑ Listener ordering considerations.

  • ◑ Debugging event flow complexity.

Net Score: +6.5 (Strong positive impact - standard TYPO3 integration with decoupled extensibility)

← All ADRs