# GraphQL Conventions

- Backend GraphQL is code-first.
- `apps/backend/src/schema.gql` is generated by backend app startup/tests.
- Frontend operations live in `apps/frontend/src/app/core/graphql/operations/**/*.graphql`.
- `yarn codegen` generates frontend GraphQL artifacts under `apps/frontend/src/app/core/graphql/generated`.
- Use input objects for mutations with structured input.
- Fix codegen naming/config issues directly; do not weaken the GraphQL API shape to avoid generator problems.
- Keep operation names descriptive and stable.
- Run backend e2e before codegen when schema-generating changes are made.
- Run codegen after changing schema or operation documents.
