Schema regression guardrail

Catch schema regressions before they ship.

Schema Gateway compares a baseline schema against the candidate version, surfaces provider-specific regressions, and tells you when a change is likely breaking before it hits CI or production. This is the quickest way to prove the product saves real time.

Baseline vs candidate one report across provider targets
Breaking verdict before merge or rollout
CI ready same diff engine in the GitHub Action
schema-gateway diff \
  --baseline ./schema-old.json \
  --candidate ./schema-new.json \
  --target openai,gemini,anthropic,ollama
The hosted regression endpoint is available at POST /v1/diff, and the free demo is available at POST /v1/demo/diff.
Interactive regression demo

Check the schema change before anyone merges it.

This public demo is intentionally limited, but the regression engine is real: baseline plus candidate schemas in, provider-specific drift and a likely-breaking verdict out, no API key required.

12 KB request 6 KB per schema No signup
Baseline and candidate

Compare the previous schema to the proposed one, then inspect the regression report.

Signed result Provider-aware
Buy Starter Access
Live output
The sample run loads automatically so the page immediately shows what the regression report looks like.

Loading a sample regression run...

Show raw regression bundle
Paid access unlocks the signed shared endpoints for /v1/diff, /v1/compile, /v1/lint, and /v1/normalize.
Why this lands in CI

Regression reports make schema changes reviewable, not just testable.

A portability lint is useful, but a baseline-vs-candidate report is easier for teams to operationalize because it answers the merge question directly: did this change make any target riskier?

GitHub Action

Use the same regression engine in CI and fail the workflow when a likely breaking schema change appears.

name: Schema portability

on:
  pull_request:
  push:
    branches: [main]

jobs:
  check-schema:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5
      - uses: sravan27/schema-gateway/.github/actions/portability-check@v0.1.3
        with:
          baseline-schema: schema.prev.json
          schema: schema.json
          targets: openai,gemini,anthropic,ollama
Hosted API

Once CI or multiple engineers need the same signed report surface, move the same diff to the hosted API.

curl -X POST https://schema-gateway.sridharsravan.workers.dev/v1/diff \
  -H 'content-type: application/json' \
  -H 'x-api-key: sk_live...' \
  -d '{"baselineSchema":{"type":"object","properties":{"city":{"type":"string"}},"required":[],"additionalProperties":false},"candidateSchema":{"type":"object","properties":{"city":{"type":"string"},"temperatureC":{"type":"number"}},"required":["temperatureC"],"additionalProperties":false},"targets":["openai","gemini"]}'