# DB Generation Hygiene

> Use when editing `server/sqlc/queries/**/*.sql`, `server/sqlc.yaml`, or creating a new `server/migrations/*.sql` file. sqlc query and schema source changes require running `just gen` so `server/generated/sqlc/` stays in sync. Edits to *existing* migration files are owned by the `migration-immutability` skill instead.

- Skill: `block/db-generation-hygiene` (Agent Skill)
- Install (CLI): `npx skillmds@latest add block/db-generation-hygiene`
- Raw SKILL.md: https://api.skillmd.com/api/skills/block/db-generation-hygiene/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: block (https://skillmd.com/u/block)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/block/db-generation-hygiene

---


# db-generation-hygiene

Server DB access goes through sqlc-generated bindings. Source of truth is
split between migrations (`server/migrations/`) and queries
(`server/sqlc/queries/`); generated Go lives under `server/generated/sqlc/`.

## What to do

1. After the SQL edit is complete, run `just gen` from the repo root.
2. Confirm the expected diff lands under `server/generated/sqlc/`. If
   unrelated generated files change, the branch was already stale before
   this edit — call that out.
3. Commit SQL source and generated output together.

## What to avoid

- Do not hand-edit `server/generated/sqlc/`.

