# Vapor: preserve requirements through advanced agent edits - [Keep Vapor’s order and audit writes on the Fluent transaction database](https://frameworkrecipes.dev/vapor/fluent-transaction-handle/guide.md): Fluent hands the closure a database bound to its transaction. Using the request’s ordinary database for a second write can escape that boundary. Pass the transaction database to every helper participating in the state change. - [audit-uses-transaction-database rule pack](https://reporules.fyi/vapor/fluent-transaction-handle/rule-pack.zip): YAML requirement and agent task. - [Observe Swift task cancellation between bounded order-processing steps](https://frameworkrecipes.dev/vapor/swift-cancellation-check/guide.md): Cancellation is cooperative in Swift. A canceled task may continue a loop unless the operation or loop observes cancellation. Check at safe boundaries before starting another side effect, while preserving a recovery policy for effects already underway. - [processing-observes-task-cancellation rule pack](https://reporules.fyi/vapor/swift-cancellation-check/rule-pack.zip): YAML requirement and agent task. - [Framework rule pack](https://reporules.fyi/vapor/rule-pack.zip): All requirements from this framework site.