# Phoenix: preserve requirements through advanced agent edits - [Keep Phoenix order and audit changes in one Ecto.Multi](https://frameworkrecipes.dev/phoenix/multi-transaction/guide.md): Ecto.Multi names each database operation and reports the failed step. Keeping order and audit in one Multi makes an invalid audit roll back the state transition. A successful placeholder callback can accidentally remove that guarantee while preserving the outer transaction shape. - [confirmation-records-audit rule pack](https://reporules.fyi/phoenix/multi-transaction/rule-pack.zip): YAML requirement and agent task. - [Insert an Oban job in the same transaction as the Phoenix order change](https://frameworkrecipes.dev/phoenix/oban-atomic-job/guide.md): A queued job belongs in the same database commit as the business change when workers depend on that change. Oban’s Multi integration keeps the job row transactional and preserves Oban-specific insertion behavior. - [confirmation-inserts-oban-job rule pack](https://reporules.fyi/phoenix/oban-atomic-job/rule-pack.zip): YAML requirement and agent task. - [Framework rule pack](https://reporules.fyi/phoenix/rule-pack.zip): All requirements from this framework site.