mintbridge/eloquent-auditing
Eloquent auditing for Laravel models that records create, update, and delete events with the changed attributes, old and new values, and the responsible user, so you can review a full, queryable history of every record directly from your database.
Architecture fit
mintbridge/eloquent-auditing is a DB-backed audit-trail package that hooks Eloquent model events and persists per-change records. It suits a conventional Laravel monolith or modular monolith where an in-database audit table is an acceptable system of record.ip_address column, auto-population from the current Request) confirm the package enriches audit rows with request-context metadata. That is a cross-cutting concern implemented at the ORM/persistence layer, which is architecturally appropriate for compliance-style "who changed what" logging but not a substitute for event sourcing, CDC, or a security-grade tamper-evident log.Request, which is precisely why nullability was introduced. Any architecture with significant asynchronous write paths will produce partially-populated audit rows.Integration feasibility
NOT NULL constraint; new installations get it for free. This is the primary integration task introduced by v0.0.5.Request introduces a dependency on a resolvable request instance. Feasibility must be verified for jobs, Artisan commands, tests, and any request-less bootstrapping.Technical risk
0.0.5 release signals an unstable API contract; breaking changes should be assumed between minor versions, and the changelog is the only contract signal available.X-Forwarded-For), values are client-controllable unless a trusted-proxy configuration is enforced. Audit data with spoofable fields is weaker evidence.Key questions
$request->ip() or header-derived — and is trusted-proxy configuration in place?Stack fit
Migration path
ip_address), add the trait to in-scope models, define the model-to-audit mapping, and document retention.ALTER TABLE ... MODIFY/NULL migration, verify behavior on the target RDBMS, and confirm that auto-population does not retroactively alter historical rows. Treat this as a schema change requiring the normal review and rollback plan.Compatibility
Sequencing
Maintenance
Support
Scaling
(auditable_type, auditable_id), timestamp, and user identifier.Failure modes
withoutEvents() usage.Ramp-up
How can I help you explore Laravel packages today?