ausus / persistence-sql
L3 PersistenceDriver — SQL implementation of RFC-002 via PDO (SQLite/MySQL/Postgres). Includes SchemaDeriver + DatabaseAuditSink.
0.1.0
2026-05-19 10:16 UTC
Requires
- php: >=8.3
- ext-pdo: *
- ausus/kernel: 0.1.*
Suggests
- ext-pdo_mysql: For MySQL deployments
- ext-pdo_pgsql: For PostgreSQL deployments
- ext-pdo_sqlite: Default driver for V0 smoke tests
README
L3 — SQL PersistenceDriver implementation.
Owned RFC surfaces
- RFC-002 — full PersistenceDriver, PersistenceContext, Repository, Identity, Transactions, Optimistic locking, Relations, Filter grammar, Bulk operations, Error taxonomy.
- Schema derivation from Metadata Graph per RFC-012 §3.4.
Capabilities advertised
supportedTenancyStrategies() -> ['row'] # V1 ships row-only
supportsSnapshotReads() -> true # Postgres MVCC / MySQL InnoDB
maxNestedSavepoints() -> 8 # RFC-002 §7.4 minimum
maxBulkTransactionSize() -> 100000 # configurable
identityShape() -> 'ulid' # configurable
Allowed dependencies
ausus/kernelilluminate/database(Eloquent connection only — never exposed across the contract boundary)
Forbidden
- Eloquent return types in any public method.
Illuminate\Database\Query\Builderexposed to plugins.- Direct SQL strings accepted as input.