Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Auditable Bundle Laravel Package

zhortein/auditable-bundle

An auditing package for Laravel applications that automatically tracks model changes. It logs create, update, and delete events with changed attributes, original values, user IDs, and timestamps, making it easy to see who changed what and when. Simple configuration and Eloquent integration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Compliance and audit roadmap: supports shipping auditable workflows with an opt-in, fail-closed transactional recorder. Best fit for regulated or high-risk actions such as financial approvals, admin permission changes, billing events, data exports, and security-sensitive operations.
  • Build vs buy: strong candidate to integrate rather than build audit persistence, actor resolution, impersonation context, deterministic identifiers, and transactional guarantees. The buy case depends on stack fit: Symfony 7.4/8, Doctrine ORM 3, PHP 8.3+, and Symfony Security.
  • Architecture sequencing: default legacy mode keeps existing AuditEntry mapping, audit_entry table, integer identifier, automatic listener, and fail-open behavior. This supports a low-risk first upgrade, with strict transactional-only mode scheduled as a separate roadmap item.
  • Delivery scope: strict mode is not turnkey. The application must own the audit entity, factory, storage, and PSR-20 clock. PM should budget engineering ownership and acceptance tests for commit, rollback, and failure atomicity.
  • Laravel fit: treat this as a PHP package with Symfony/Doctrine dependencies, not a Laravel-native Eloquent audit package. Consider only if the Laravel application already uses Doctrine ORM and Symfony Security components; otherwise evaluate Laravel-native alternatives or a custom audit layer.

When to Consider This Package

  • Consider when the product needs transactional audit records where an audit failure must fail the business transaction, and the team can own audit entity, factory, storage, and clock integration.
  • Consider when the platform is already on or ready to upgrade to PHP 8.3+, Symfony 7.4/8.x, Doctrine ORM 3, and DoctrineBundle 2.19/3.x.
  • Consider when Symfony Security actor resolution and impersonation context are required for forensic traceability.
  • Consider when PostgreSQL atomicity proofs, deterministic Doctrine identifiers, and UUID/primitive composite support matter for traceability or idempotency.
  • Consider a staged adoption: upgrade to 2.0.0 in legacy-compatible mode first, validate no mandatory database migration, then enable strict transactional mode with explicit application-owned storage.
  • Look elsewhere if the application is Laravel/Eloquent-only, remains on Doctrine ORM 2 or PHP below 8.3, cannot provide application-owned audit storage/factory/clock, or needs a vendor-managed migration path. Also defer if the platform upgrade to Symfony 7.4/8 and Doctrine ORM 3 cannot be funded in the same planning horizon.

How to Pitch It (Stakeholders)

  • Executives: 2.0.0 adds an opt-in strict audit mode that can reduce compliance and forensic risk by making audit recording fail-closed and transactionally atomic. Legacy default behavior lowers immediate migration risk, but the release still requires current PHP, Symfony, and Doctrine versions.
  • Engineering: the package is self-contained, validated with PHPStan 2 at maximum level and PostgreSQL 16 transactional jobs, and avoids hidden flush or transaction control. Strict mode requires application-owned audit entity, factory, storage, and PSR-20 clock; breaking changes are dependency floors, not a mandatory legacy database migration.
  • Product and security: position it as a controlled compliance enabler for regulated workflows, not a zero-effort Laravel feature. Verify Doctrine/Symfony fit first, then sequence delivery as legacy-compatible upgrade followed by strict transactional mode, with audit schema and failure-behavior tests as acceptance criteria.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
adachsoft/php-code-style