Skip to content

Framework Symfony Message Transaction

Verify Symfony container use, Doctrine transaction ownership, and Messenger redelivery safety.

Generated example

This page is generated from evaluations/scenarios/framework-symfony-message-transaction.yaml. The scenario YAML remains the executable source of truth.

Request

Repository evidence

No repository signals.

Expected resolution

Resolution layer Expected
Profile —
Modifiers —
Language adapters —
Framework adapters —

Normalized context

{}

Skill modes

None.

Conflict decisions

None.

Significant decisions

None.

Principles under test

Forbidden outcomes

  • Put a managed Doctrine entity in the transport message.
  • Assume Messenger delivery occurs exactly once.

Scenario source

schema_version: 0.10.0
id: framework-symfony-message-transaction
description: Verify Symfony container use, Doctrine transaction ownership, and Messenger
  redelivery safety.
input:
  profile: backend-service
  language_adapter: php
  framework_adapter: symfony
  task: Persist an order and asynchronously send its confirmation.
expected:
  resolution: commit-order-then-handle-idempotent-message-by-identifier
  guidance:
  - Inject the application operation and own the Doctrine write in one explicit transaction.
  - Dispatch a durable message containing the order identifier after commit or through
    an outbox.
  - Make the Messenger handler idempotent with explicit retry and terminal failure
    policy.
  active_principles:
  - inversion-of-control
  - idempotency
  - information-hiding
forbidden:
- Put a managed Doctrine entity in the transport message.
- Assume Messenger delivery occurs exactly once.
principles_under_test:
- inversion-of-control
- idempotency
- information-hiding