AGENTS.md@crates/zeph-db · git:20260606.583c571 · 2026-06-06 · sha256 9621087c2a30654d

AGENTS.md@crates/zeph-db git:20260606.583c571A

Immutable. This exact content is served forever at /api/v1/blob/9621087c2a30654d.

# zeph-db Guide

Database abstraction layer (`DbPool`, `DbRow`, `DbTransaction`, `DbQueryResult`) with compile-time SQLite/PostgreSQL backend selection lives here.

- Start with crate-local checks: `cargo build -p zeph-db`, `cargo nextest run -p zeph-db`, `cargo clippy -p zeph-db --all-targets -- -D warnings`.
- All queries must use parameterized statements — reject any string-interpolated SQL to prevent injection.
- Schema changes require a migration; never alter existing migration files after they have been applied.
- Test with both backends (`--features sqlite` and `--features postgres`) before merging; silent divergence between backends is a first-class bug.
- If the public API changes, run `cargo build --workspace` — downstream crates depend on these type aliases.