laravel:transactions-and-consistency

安装量: 45
排名: #16429

安装

npx skills add https://github.com/jpcaparas/superpowers-laravel --skill laravel:transactions-and-consistency

Ensure multi-step changes are atomic; make retries safe.

Commands

DB::transaction(function () use ($order, $payload) {
    $order->update([...]);
    $order->items()->createMany($payload['items']);
    OrderUpdated::dispatch($order);        // or flag for after-commit
});

// Listener queued after commit
class SendInvoice implements ShouldQueue {
    public $afterCommit = true;
}

Patterns

  • Use DB::transaction to wrap write sequences and related side-effects

  • Prefer $afterCommit or dispatchAfterCommit() for events / jobs

  • Make jobs idempotent (check existing state, use unique constraints)

  • Use lockForUpdate() for row-level coordination when needed

  • Validate invariants at the boundary before starting the transaction

返回排行榜