For agents, on top of README.md, which they read first.
- Keep
src/free of I/O andunsafe(#![forbid(unsafe_code)]); the binary that talks to Postgres goes in its own module or target (cli/). syncnever drops and re-imports a table. A change thattouches()an object is checked against pg_depend and refused if anything depends on it, with no partial application.- Never put a secret's value in an error or log line; name the file or env var.
- This CLI is the only engine that sets a sidecar up. Never add SQL to the NixOS unit or the image's entrypoint; a second engine beside this one is the thing the contract's Launching it rules out.
- Never list postjevsql in the foreign server's
extensionsoption.convergesets the server's options to exactly the configured ones, which drops a hand-added one; the scan refuses such a server at plan time too.