Shipping to production
Deployment
Mynd is an API — there is nothing of ours to deploy. Production-readiness is about how your services hold keys, handle failure, and observe runs.
Environments
Use sk_test_ keys against the sandbox in development and CI; it is the same API surface over synthetic context, free to call. Promote to sk_live_ per environment, one key per deployable service, named after the service so audit-log entries are attributable.
Production checklist
- Keys injected via secret manager — never in images or env files in git
- Idempotency-Key on every run creation
- Backoff with jitter on 429/5xx (SDK default; verify if raw HTTP)
- Webhook endpoint verified, deduplicating on event.id
- Trace replay + eval gate wired into CI before prompt changes ship
- Alerts on scope_denied (bug or probe) and on run.failed rate
- Region pinned deliberately at project creation — it cannot move later
Observability
Every API response carries an X-Request-Id; log it. Run traces are your application-level telemetry — export them to your store if you need retention beyond your tier's window. The /v1/usage endpoint exposes spend and token counts for dashboards.
Graceful degradation
Deep runs are the first thing to queue under load (503 overloaded). Design the fallback up front: degrade to y0-fast with a tighter prompt, or queue the request and notify via webhook. Synchronous user-facing paths should never block on y0-deep.