generated from coulomb/repo-seed
feat: add postgres user engine store
This commit is contained in:
@@ -256,3 +256,9 @@ into `StoreRecord` envelopes with deterministic keys and index metadata, while
|
||||
`domain_record_from_store_record` restores those payloads to domain objects.
|
||||
These payloads are durable state and may contain sensitive values, so they must
|
||||
not be emitted as diagnostics.
|
||||
|
||||
`user_engine.adapters.postgres.PostgresUserEngineStore` is the optional
|
||||
Postgres implementation. It accepts a provider-owned DB-API or psycopg-like
|
||||
connection, applies the bootstrap SQL in `migrate`, and persists generic
|
||||
records, audit records, and pending outbox events without depending on a
|
||||
specific driver package.
|
||||
|
||||
@@ -10,7 +10,7 @@ tested immediately in local and agent environments.
|
||||
|
||||
```text
|
||||
src/user_engine/
|
||||
adapters/ local standalone adapters and deterministic test doubles
|
||||
adapters/ local standalone adapters, Postgres adapter, and test doubles
|
||||
domain/ transport- and persistence-neutral domain schemas
|
||||
errors.py typed service exceptions for callers and future transports
|
||||
migrations.py ordered durable-store migration manifest
|
||||
|
||||
@@ -301,9 +301,15 @@ values, profile values, prepared-account matches, and access-profile defaults.
|
||||
Adapters must avoid logging payloads and should use `record_counts` or other
|
||||
redacted diagnostics for observability.
|
||||
|
||||
USER-WP-0018 adds `PostgresUserEngineStore`, a dependency-free adapter that
|
||||
accepts a provider-supplied DB-API or psycopg-like connection. It writes generic
|
||||
records through `StoreRecord`, keeps audit and outbox payloads in their
|
||||
dedicated bootstrap tables, applies the bootstrap SQL through `migrate`, and
|
||||
uses the shared conformance harness with a fake Postgres connection for local
|
||||
unit coverage.
|
||||
|
||||
Likely future follow-up work should be:
|
||||
|
||||
- Add a Postgres adapter behind the existing store boundary.
|
||||
- Add provider-backed conformance tests for locking, uniqueness races,
|
||||
migration readiness, outbox claiming, redacted diagnostics, and restore
|
||||
validation.
|
||||
|
||||
Reference in New Issue
Block a user