Production Readiness Checklist for Software Teams

Engineer reviewing passed and blocked production launch gates for a voice service
Engineer reviewing passed and blocked production launch gates for a voice service

A production readiness checklist is a set of evidence-backed launch gates for a software service. A service is ready when named owners can show that it meets defined user outcomes under the planned workload, detects failures quickly, and has tested containment and recovery paths. Product readiness asks whether a product or feature is ready for customers and the market; a manufacturing production-readiness review covers physical production. This guide covers software operations first, then applies the same gates to a voice agent.

How to use this production readiness checklist

Choose a risk tier before you review individual checks. Base it on the user promise and SLO, service criticality, blast radius and downtime impact, data sensitivity, regulatory exposure, and how easily you can reverse a bad release. A limited internal tool and a service that moves money should share the same baseline areas, but their required checks and depth of proof will differ.

Give every checklist row one of five states:

  • Open: The owner has not completed the review yet.
  • Pass: The owner linked current evidence that satisfies the criterion.
  • Blocked: The criterion is required and has not been met.
  • Time-limited exception: An authorized person accepted the residual risk for a defined period.
  • Not applicable: The owner explained why the criterion does not apply.

For each pass, attach dated evidence such as a test result, dashboard, alert exercise, runbook, data-flow diagram, restore rehearsal, or approved decision record. Mercari's public production readiness review process uses this practical rule: even a checked not applicable item needs an explanation.

An exception should record the risk, mitigation, remediation plan and owner, approver, expiration date, and re-review trigger. It is not another way to say pass.

The template does not prescribe universal latency, availability, recovery, traffic, canary, or cost thresholds. Set those from the service's user promises, workload, risk, economics, and applicable obligations.

Production readiness checklist template

Copy this table into the team's issue tracker or change record. Add columns for Blocker?, Evidence date, and Exception expires, then replace the examples with service-specific links and targets.

AreaPass criterionStatusRequired evidenceOwner
ScopeCritical user journeys, expected outcomes, exclusions, and launch cohort are documentedOpenApproved scope and acceptance criteriaProduct and engineering
ArchitectureThe current request and data flows identify components, third parties, regions, failure domains, and stateOpenArchitecture and data-flow diagramsTechnical owner
DependenciesLimits, service expectations, deprecations, escalation paths, and failure behavior are known for critical dependenciesOpenDependency register and failure reviewTechnical owner
OwnershipBusiness, technical, on-call, security/privacy, support, cost, and go/no-go authority are namedOpenOwnership and escalation recordEngineering lead
Blast radiusThe maximum affected cohort and a safe degraded mode are definedOpenRisk assessment and degraded-mode planDecision owner
User outcomesThe service has a small set of user-visible indicators for availability, latency, correctness, durability, or throughput where relevantOpenService-level indicator definitionsProduct and reliability owners
Reliability targetsEach service-level objective (SLO) states its measurement source, window, workload classes, target, owner, and approverOpenSLO document and dashboardReliability owner
Reliability actionThe team has agreed what happens when the error budget or another launch limit is exhaustedOpenError-budget or stop-policy recordProduct and engineering
Capacity forecastSteady state, launch spikes, bursts, growth, and tail workload have been estimatedOpenForecast and assumptionsCapacity owner
Load behaviorPredeployment load and failure tests cover expected traffic shapes and constrained resourcesOpenTest report with bottleneck and recovery dataEngineering
Admission controlRate limits, queues, timeouts, retries, backoff, rejection, and load shedding behave as designedOpenTest results and caller/client behaviorEngineering
Dependency failureCritical dependency failure, delay, and quota exhaustion have been safely simulated or exercised in a controlled environment; fallback and graceful degradation are verifiedOpenFailure-injection reportEngineering
RecoveryThe service returns to a healthy state after a burst, dependency recovery, failover, or restartOpenRecovery test and timelineReliability owner
State recoveryBackups, restore, disaster recovery, and recovery targets are tested where the service owns stateOpenRestore and disaster-recovery exerciseData and reliability owners
Security reviewThreats, secure-development checks, critical vulnerabilities, and secure defaults have been reviewed for the risk tierOpenReview and scan resultsSecurity owner
Identity and accessPeople, services, vendors, and emergency users have auditable least-privilege accessOpenAccess reviewSecurity and service owners
SecretsSecrets are outside source and build artifacts, rotated, and revocable through a tested pathOpenSecret inventory and rotation testSecurity owner
Data and privacyData, purpose, location, processors, access, retention, deletion, export, and user choices are mappedOpenApproved data-flow and retention recordPrivacy and data owners
Sensitive telemetryLogs, traces, recordings, and support tools minimize or protect sensitive contentOpenTelemetry schema and access/retention reviewSecurity and operations
Notices and choicesRequired disclosure, consent, opt-out, revocation, deletion, and incident paths work end to endOpenScenario tests and legal approval where neededLegal/privacy and product
Automated testsCritical contracts, policies, business rules, and outcomes have release-blocking testsOpenContinuous integration (CI) resultsEngineering
End-to-end testsProduction-like identity, infrastructure, data shapes, and external dependencies have been exercisedOpenEnd-to-end resultsEngineering and QA
Release inputsThe candidate's code, configuration, schemas, infrastructure, and AI prompts/models where applicable are identifiable and tied to test evidenceOpenRelease manifest and test referencesRelease owner
Progressive releaseThe launch starts with limited, representative traffic and objective expand/stop criteriaOpenRollout plan and dashboardRelease owner
RollbackAn objective trigger starts a rehearsed rollback or deactivation path to a known-good state, including state/schema compatibilityOpenRehearsal and plan for in-flight workRelease owner
Emergency changeUrgent changes have a bounded approval, deployment, monitoring, and follow-up pathOpenEmergency-change runbookIncident commander
Journey telemetryA critical journey can be followed across logs, metrics, traces, and final business stateOpenTrace and outcome exampleObservability owner
AlertsUser-visible symptoms and internal causes are monitored; paging alerts are actionable and testedOpenAlert test and on-call routeOn-call owner
Responder accessDashboards, queries, logs, runbooks, and admin tools are available to respondersOpenAccess exerciseOn-call owner
Incident responseIncident authority, operations, communications, escalation, vendor contacts, and handoffs are documentedOpenExercise and incident planIncident owner
SupportCustomer support is trained on symptoms, workarounds, escalation, and expected launch changesOpenSupport brief and rehearsalSupport owner
Launch watchMonitoring, outcome sampling, communications, and rollback authority are scheduled for an agreed post-launch windowOpenLaunch planRelease owner
CostThe model covers infrastructure/runtime, vendors, data, support, and failure or retry overheadOpenCost forecast and sensitivity analysisCost owner
Unit economicsA unit-cost driver and cost per successful user or business outcome are trackedOpenCost dashboardProduct and finance
Commercial termsVendor pricing and limits, support and escalation, data-processing terms, and workload assumptions are verifiedOpenContract and vendor registerVendor owner

Treat this as a baseline. Add controls for the workload's risk tier, keep the list short enough to use, and update it as the system and its failure modes change (Google SRE).

Production readiness flow from scope and evidence through go/no-go, rollout, rollback, and verification

Run the production readiness review in five steps

1. Set the risk tier and decision owner early

Review hard-to-reverse architecture, data, dependency, and recovery decisions during design. Waiting until the day before launch turns the review into a choice between accepting hidden risk and missing a date.

Name the person who makes the final launch decision. Site reliability engineering (SRE), security, privacy, support, product, finance, and vendors can validate evidence, but unclear authority creates delay exactly when the team needs a fast stop or rollback.

2. Let each owner prefill evidence

The service team owns readiness. Ask each named owner to complete their rows before the review, link evidence, and flag blockers. The meeting should not be the first time anyone sees missing capacity data or an untested restore path.

3. Review blockers and failure paths

Spend review time on the critical user journey, biggest dependency, highest-impact action, recovery path, and remaining uncertainty. Do not read every green row aloud.

For each failure, ask five questions:

  1. What does the user experience?
  2. How do we detect it?
  3. What contains the blast radius?
  4. Who can act, and with which runbook and access?
  5. How do we prove recovery?

4. Record one decision

Use one of three outcomes:

  • Go: All blockers passed and the release can follow the approved plan.
  • Limited go: The team narrows tenants, geography, channel, traffic, or allowed actions while it gathers evidence.
  • No-go: A blocker remains or the residual risk exceeds the decision owner's authority.

Attach any approved, time-limited exception to that decision with its mitigation, owner, approver, and expiration. Record objective stop and rollback triggers with the person authorized to act. A limited go narrows exposure; it does not silently waive a blocker.

5. Verify after real traffic

Monitor the agreed launch window, sample user outcomes, test support escalation, and compare cost and capacity with the forecast. Expand, hold, or roll back using the same approval criteria. Log deviations as follow-up work.

Worked example: a production voice-agent launch

Consider an inbound appointment-scheduling agent. It checks availability, creates a booking, sends a confirmation, and can transfer the caller to a person. The critical outcome is a valid booking and confirmation or a completed human handoff, without duplicate or lost side effects. The review must validate that result across the media path, agent, business tools, telephony, privacy controls, and human fallback; testing each component separately is not enough.

Here is a completed decision record for the hypothetical launch. Its targets belong to this workload; they are not defaults for every voice agent.

GateScenario-specific pass criterionEvidenceOwnerFinal status
Scope and ownershipOne tenant, one inbound appointment flow, staffed launch hours, and named business, technical, on-call, privacy, support, cost, and decision ownersApproved scope and ownership recordEngineering leadPass
Traffic and concurrencyForecast, burst, long-call, queue, rejection, and recovery behavior stay inside the tenant's approved capacity limitsCapacity model and load-test reportCapacity ownerPass
Telephony, media, and latencyReal carrier calls meet the team's caller-audible timing and interruption targets across chosen codecs, noise cases, and failure pathsEnd-to-end distributions and SIP/media test resultsVoice engineerPass
Tools and final stateAvailability reads, booking writes, confirmation, timeout reconciliation, and duplicate protection produce the correct final recordsScenario results and system-of-record auditApplication ownerPass
ObservabilityOne call identifier connects caller outcome, agent/tool events, timing, telephony evidence, and final booking state; tested alerts reach on-callTrace, dashboard, alert exercise, and runbookObservability ownerPass
Privacy and dataAI disclosure and recording choice are approved for the use case; access, retention, deletion, and recording-disabled behavior are testedLegal/privacy approval and scenario testsPrivacy ownerPass
Handoff and supportCaller-requested and policy-triggered transfers finish with a person or a callback/ticket fallback; support can see and escalate the incidentTransfer tests, support rehearsal, and escalation planSupport ownerPass after re-test
Release and rollbackThe full voice configuration has a known-good bundle, limited cohort, stop criteria, practiced disable/rollback path, and active-call planRelease manifest and rollback rehearsalRelease ownerPass after re-test
Cost and vendor termsRuntime, carrier, model, storage/export, retries, and transfers are forecast; pricing, capacity, and support terms are confirmedCost model and vendor recordCost ownerTime-limited exception for automated cost alert

The first review returned no-go because a failed human transfer dropped the caller and the rollback path had not been rehearsed. After the team added a callback fallback, passed the transfer re-test, and rehearsed the known-good configuration, the decision changed to limited go for one tenant during staffed hours. The non-blocking cost-alert exception has an owner and expiration date. Expansion still depends on the same outcome, capacity, latency, transfer, privacy, and cost gates.

Map the complete caller path

Map the carrier and Session Initiation Protocol (SIP) route, media and codec layer, speech recognition, turn detection, agent runtime and model, business tools, speech synthesis, scheduling system, confirmation provider, and human transfer. Add the data recorded or exported at each step and the owner of every dependency.

Propagate one call or turn identifier across the path where the systems support it. A transcript without the corresponding tool result and final booking record cannot prove the task succeeded.

Voice-agent call path across telephony, speech, agent, tools, business systems, and human handoff

Prove traffic and concurrency behavior

Under steady-state conditions, average concurrent calls can be estimated as the arrival rate multiplied by average call duration. That average is only a starting point. Size and test bursts, long-tail call duration, retries, launch spikes, and uneven tenant or campaign traffic.

Separate these limits:

  • call attempts per second;
  • established concurrent calls;
  • carrier or trunk channels;
  • speech, model, runtime, and tool capacity;
  • queue depth and wait time; and
  • recovery after a burst.

SIP signaling overload and trunk exhaustion are different failure modes; retransmissions can amplify signaling overload. For each limit, define what the caller hears, what the business system records, and whether the call retries, queues, transfers, or stops.

Measure the conversation the caller hears

Set service-specific pass criteria for end-to-end response time, interruption handling, and recovery. Test them across real carrier and browser routes, devices, noise, silence, double-talk, and long calls. Use packet loss, jitter, and component timings to diagnose failures, but make the launch decision from the caller experience and final task outcome.

Verify tools and final business state

For each side-effecting tool, verify selection, authorization, arguments, timeout behavior, reconciliation, and the final system-of-record change. For bookings, payments, messages, customer-record changes, and other side effects, use an idempotency key where the downstream system supports one, and always provide a reconciliation or status lookup. After an ambiguous timeout, check the final state before retrying or telling the caller the action succeeded (HTTP semantics).

Test privacy and human fallback as real flows

Evaluate these as separate legal and policy questions:

  • disclosure that the caller is interacting with AI where required;
  • consent or other lawful authority to record a call, where required;
  • a lawful basis and policy for processing and retaining audio, transcripts, prompts, tool data, and logs; and
  • any additional rules that may apply when deriving a biometric voiceprint; and
  • for outbound calls, dialing consent, identification, opt-out, revocation, and do-not-call controls where required.

The exact duties depend on jurisdiction, call direction and purpose, data, and organizational role. US federal rules can impose prior-consent, identification, opt-out, do-not-call, and recordkeeping duties on different categories of covered artificial or prerecorded voice calls. The Federal Communications Commission has confirmed that AI-generated human voices fall within the Telephone Consumer Protection Act's artificial/prerecorded-voice provision (FCC 24-17). Use legal counsel to set the criteria, then test the applicable disclosure, consent evidence, opt-out or revocation, recording-disabled path, retention, deletion, support access, and incident export.

A human-handoff test passes only when the person connects or a defined fallback completes. Accepting a SIP transfer request is not the final outcome. Test busy, reject, timeout, after-hours, no-agent, context delivery, caller recovery, and creation of a callback or ticket when transfer fails.

Release a reversible voice configuration

Treat the prompt or dialogue policy, model/provider, endpointing, voice, tool schemas, telephony routing, and compliance messages as one release bundle. A code-only rollback can leave incompatible configuration or side effects behind.

Start with a small but representative cohort. Compare task success, tool correctness, end-to-end latency, interruption recovery, media/SIP failures, transfer completion, abandonment, and cost against the control and absolute launch limits (Google SRE canary guidance).

Keep a known-good bundle, an emergency stop, an authorized rollback owner, and a plan for active calls and already-started actions. Our production pilot framework provides a deeper way to compare platforms against the same outcome and reliability gates.

Apply the checklist in Dasha

With Dasha, you can test a disabled agent through browser voice or chat, place a real phone call, test webhook payloads, verify an MCP connection, and inspect a completed call before enabling production traffic. Our production checklist documents the manual launch workflow.

For completed calls, our Call Inspector can show the transcript, optional audio, model and tool details, event timeline, and speech recognition, model, and synthesis latency breakdown. Additional launch evidence can come from call history, activity logs, concurrency monitoring, the call-queue API, and call-level SIP traces.

A disabled clone can support manual pre-production comparison, while the production checklist documents disabling the agent as the emergency stop procedure. The documented workflow is manual; it does not replace your version history, environments, traffic splitting, canaries, regression gates, or rollback process. Use these surfaces inside your own go/no-go process. You remain responsible for acceptance criteria, downstream systems, telephony configuration, privacy and compliance decisions, human escalation, release controls, protection of recordings and sensitive call data, and launch approval.

Keep readiness current after launch

Production readiness decays. Re-run material gates after major changes to traffic, dependencies, models or prompts, schemas, telephony, data policy, vendor contracts, architecture, or ownership. Convert incidents and near misses into tests, alerts, runbooks, capacity scenarios, or checklist revisions.

Automate objective evidence in continuous integration, deployment pipelines, and service tooling. Keep human approval for residual risk, exceptions, and user-impact tradeoffs. Review expiring exceptions and stale evidence on an agreed cadence.

For a voice workload, track runtime, carrier, model, storage/export, retry, transfer, and support costs separately. Measure cost per successful outcome rather than a base rate alone.

If you are building a production voice agent, use this checklist on your current stack, then evaluate Dasha against the same gates. See how our managed voice AI platform works.

Related Posts

We use cookies for functional and analytical purposes. Please refer to our Privacy Policy for details.