Skip to content

Implement PostgresStore against Store protocol #312

@peteski22

Description

@peteski22

Part of #257 — Phase 2 step (2).
RFC: #275.

Blocked by the psycopg dependency / URL handling Phase 2 child.

Scope

Implement PostgresStore in
server/backend/src/cq_server/store/_postgres.py against the Store
protocol (defined in #306). Use the shared SQLAlchemy Core helpers
(#307) for portable queries; own connection-pool lifecycle and any
Postgres-native specifics.

Migration locking via pg_advisory_lock is handled separately in the
next Phase 2 child.

Definition of Done

  • TDD: failing tests covering each protocol method first, then the
    implementation. Tests run against the testcontainers-postgres
    fixtures (added in the testcontainers Phase 2 child).
  • Full test suite green on both backends.
  • Lint clean.
  • No public docs change required at this step (deployment docs land
    in Phase 4).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestteam-apiTeam API / Docker component

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions