SkillVaultskills Browse all 500 skills

Architecture · Version 1.3.0 · Reviewed 2026-08-02

GraphQL Schema Reviewer

Make a defensible decision about n+1 detection and pagination design with evidence, explicit trade-offs, and a verification plan.

4 method steps 6 documented failure modes 5 diagnostic checks 7 quality gates

Reviews GraphQL schemas for N+1 risk, pagination, nullability, and evolution safety.

₹99 one-time

Get this skill archive

What this skill helps you do

  • N+1 detection
  • Pagination design
  • Nullability review

How GraphQL Schema Reviewer works

You provide

Schema, query plans, and the real access pattern

It inspects

Plan accuracy and lock behavior for n+1 detection

It decides

A pagination design change weighed against write cost

You verify

Re-measured plan with buffer reads and timing compared

What it checks first

GraphQL Schema Reviewer reviews GraphQL schemas for N+1 risk, pagination, nullability, and evolution safety. Use it when the work involves N+1 detection, Pagination design, Nullability review.

  1. Whether every list field is bounded by pagination, since an unbounded list is a denial-of-service surface.
  2. Resolver-level data loading, because nested resolvers produce N+1 queries invisibly.
  3. Nullability choices, since a non-null field failing propagates the error up and can null an entire branch.
  4. Query depth and complexity limits, which are the only defense against a maliciously nested query.
  5. Whether the schema exposes database shape or a deliberately designed contract.

Failure modes it recognizes

  • A nested resolver issuing one query per parent record, invisible until a client requests a deep query.
  • A non-null field whose resolver throws, nulling the entire parent object and losing sibling data.
  • An unbounded list field allowing a single query to fetch an entire table.
  • A deeply recursive query multiplying cost exponentially with no depth limit.
  • Schema evolution removing a field that a mobile client still deployed in the wild requires.
  • Errors returned in the errors array while the HTTP status stays 200, defeating generic retry logic.

Answers it will reject

  • Exposing the database schema directly as the graph, which permanently couples storage to contract.
  • Adding a depth limit alone, which does not bound breadth or per-field cost.
  • Making every field nullable to avoid error propagation, which pushes complexity to every client.
  • Solving N+1 by caching responses rather than by batching at the resolver.

Decision rules it applies

  • Require pagination on every list field, with a maximum page size enforced server-side.
  • Batch at the resolver with a per-request data loader rather than caching at the edge.
  • Choose non-null only where the field can genuinely never be absent, including during partial failure.
  • Enforce query cost limits by depth and complexity together, not by depth alone.

Evidence it asks for

  • Log query count per GraphQL request and alert when it scales with result size.
  • Run a schema diff against the previous version and classify each change for compatibility.
  • Test with a deliberately deep and wide query to confirm limits engage.

The method inside

  1. Map the artifact, actors, boundaries, and invariants relevant to n+1 detection.
  2. Trace concrete failure or abuse paths for pagination design; do not report checklist items without a mechanism.
  3. Prioritize nullability review findings by impact, likelihood, confidence, and cost of correction.
  4. Recommend the smallest defensible change, then define how an independent reviewer can verify it.

Deliverables

  • N+1 detection assessment
  • Pagination design decision and action plan
  • Nullability review verification checklist

Evidence requirements

  • Functional and quality requirements
  • Scale, latency, consistency, cost, and compliance constraints
  • Current topology and alternatives considered

Quality gates

  • Every material claim traces to supplied evidence or is labeled as a hypothesis.
  • The response follows the declared deliverable contract.
  • No execution, access, measurement, or verification is invented.
  • Secrets and personal data are redacted rather than repeated.
  • The user receives a concrete independent verification step.
  • The relevant failure modes in this domain were considered rather than only the reported symptom.
  • No listed anti-pattern was recommended as a solution.

Example task

Input

Review this GraphQL schema before we expose it to mobile clients.

Expected output

Three list fields have no pagination, so a client can request unbounded results. Two nested resolvers will produce N+1 queries without batching...

Boundaries and compatibility

Ideal for

  • N+1 detection: produce a decision or artifact grounded in supplied evidence.
  • Pagination design: produce a decision or artifact grounded in supplied evidence.
  • Nullability review: produce a decision or artifact grounded in supplied evidence.

Out of scope

  • Producing a generic reference architecture without requirements
  • Hiding material trade-offs behind best-practice language

Agent compatibility

  • GitHub Copilot custom agents
  • Claude Agent Skills / SKILL.md
  • Any instruction-following chat model

Tool policy: Advisory by default. No tools are assumed. If the host provides tools, use read-only evidence gathering unless the user explicitly approves a scoped write or execution action.