Pact "Missing request" during provider verification in CI
During provider verification Pact reports a "Missing request": the replayed interaction was expected to hit the provider but the provider never saw it, so the verification cannot pass.
What this error means
Provider verification output flags an interaction as a "Missing request" or the provider logs show no request for a path the pact declares, and the interaction fails.
Failures:
1) Verifying a pact between web-consumer and orders-provider
Given order 42 exists
a request for order 42
Missing request: GET /orders/42Common causes
The provider is not listening on the expected route
The path or base path served by the provider under test differs from the one in the pact, so the request never reaches a handler.
The provider process was not started or bound
Verification ran against a provider that had not finished booting or bound to a different port, so the request did not arrive.
How to fix it
Confirm the provider serves the contract routes
- Start the provider and curl the exact path from the pact.
- Reconcile the provider base path or routing with the interaction path.
- Re-run verification against the running provider.
# sanity check the route the pact expects
curl -i http://localhost:8080/orders/42Point verification at the correct host and port
Set the provider base URL that verification targets so requests actually reach the app.
providerBaseUrl: 'http://localhost:8080',
// ensure the app is booted and health-checked before verify runsHow to prevent it
- Health-check the provider before verification starts.
- Keep provider routing aligned with the paths in published pacts.
- Verify locally against the running provider before pushing.