Paul Williams
02/27/2026, 6:34 AMcan-i-deploy tool agreed (correctly) with the initial provided based break, but seem to disagree on the consumer break. I attach images of the Matrix and can-i-deploy tool output. I will post further diagnostic info in a thread.
Is this expected? I'm, perhaps incorrectly, expecting can-i-deploy to say "computer saids no...."Paul Williams
02/27/2026, 6:50 AMcan-i-deploy output.Paul Williams
02/27/2026, 6:52 AMpactfoundation/pact-broker:latest which returns x-pact-broker-version 2.118.0 in Inspector response headers
CLI: pactfounation/pact-cli:latest which returns 1.5.0
JVM consumer / provider libraries and Maven plugin (<http://au.com|au.com>.dius.pact.provider) all at 4.6.20Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Paul Williams
02/27/2026, 7:20 AMPaul Williams
02/27/2026, 7:24 AMPaul Williams
02/27/2026, 7:44 AMRuud Welling
02/27/2026, 8:16 AMproduction is an environment. Do you record deployments or releases against this environment for the provider?
As far as I know, a deployments overwrites the previous deployment. Pact kind-of assumes that 1 version is running at the same time.
I think releases might be the alternative option here. Disadvantage is that you explicitly need to un-release the versions
https://docs.pact.io/pact_broker/recording_deployments_and_releases#recording-releasesPaul Williams
02/27/2026, 8:36 AMPaul Williams
02/27/2026, 8:37 AMPaul Williams
02/27/2026, 8:38 AMRuud Welling
02/27/2026, 8:46 AMPaul Williams
02/27/2026, 8:46 AMYousaf Nabi (pactflow.io)
profile-service to be included in that check.
Given your screenshot, you have both 0.0.2-snapshot and 0.0.3-snapshot released, so they should both be considered in the matrix, or I would at least have expected them too.
There are some comprehensive test suites in the pact broker repository that you could use to extend to cover this case, which can aid anyone trying to fix forward, or raise an issue on the pact_broker repo itself.Paul Williams
02/27/2026, 12:31 PMPaul Williams
03/01/2026, 3:57 PMcan-i-deploy doesn't check that ONLY compatible providers are deployed to an environment, and gives a full positive. I'm writing an issue on https://github.com/pact-foundation/pact_broker now.Paul Williams
03/01/2026, 6:39 PMPaul Williams
03/01/2026, 6:46 PMMatt (pactflow.io / pact-js / pact-go)
Paul Williams
03/02/2026, 6:24 AMMatt (pactflow.io / pact-js / pact-go)
Paul Williams
03/02/2026, 6:30 AMPaul Williams
03/02/2026, 6:38 AM/pacticipants/provider but don't see a link for pb:deployed-environments or pb:released-environments .. Only have empty json on right for the former.Paul Williams
03/02/2026, 6:38 AM"pb:deployed-environments": [],Paul Williams
03/02/2026, 6:40 AMPaul Williams
03/02/2026, 6:48 AMPaul Williams
06/02/2026, 11:58 AMMatt (pactflow.io / pact-js / pact-go)
can-i-deploy / matrix results are correct - if you donβt believe this to be the case, we should keep the issue open and get to the bottom of it.
I seemed to recall at the time that can-i-deploy was passing, but with the data to reproduce it was correctly failing, stating a dependency wasnβt met.
Only one version of an application can be deployed to production at a time.Yep. Thatβs obviously not true with releases, which is their design intent.
Paul Williams
06/02/2026, 12:22 PMcan_i_deploy was incorrectly stating that releasing a consumer was safe, when it was indeed incompatible with one of the providers in production at the time.Paul Williams
06/02/2026, 12:26 PMcan_i_deploy is ignoring the old but still released version of the provider. The matrix was demonstrating this was still deployed. I have subsequently lost my pactflow.io deployments as my trial expired. If it helps, I can reserect my local deployment with latest pactbroker although this will take a few days, as I'll need to interleave it with my other duties.Paul Williams
06/02/2026, 12:27 PMMatt (pactflow.io / pact-js / pact-go)
It seems you confirmed this in https://github.com/pact-foundation/pact_broker/issues/903#issuecomment-3981215590 - asking why can_i_deploy is ignoring the old but still released version of the provider. The matrix was demonstrating this was still deployed. I have subsequently lost my pactflow.io deployments as my trial expired. If it helps, I can reserect my local deployment with latest pactbroker although this will take a few days, as Iβll need to interleave it with my other duties.Yeah, I canβt remember if I directly queried the data, or relied on your output (either way, at some point it showed that and I think you showed pretty good reasoning in the analysis - so I had no reason to not believe you)
If it was possible to re-enable my trial, possibly for an extended period to allow diagnosis and experimentation with my issue, than Iβd be happy to redeploy to that.Thanks! Iβll see if I can quickly bump you, but to do it properly Iβll need to raise a request. I think thereβs a 15m or so cache on the plan entitlements, so give it a little bit and see if it updates
Matt (pactflow.io / pact-js / pact-go)
pact broker can-i-deploy \
--pacticipant consumer \
--version 0.0.3-SNAPSHOT \
--to-environment production
ββββββββββββ¬βββββββββββββββββ¬βββββββββββ¬βββββββββββββββββ¬βββββββββββ¬βββββββββ
β CONSUMER β C.VERSION β PROVIDER β P.VERSION β SUCCESS? β RESULT β
ββββββββββββͺβββββββββββββββββͺβββββββββββͺβββββββββββββββββͺβββββββββββͺβββββββββ‘
β consumer β 0.0.3-SNAPSHOT β provider β 0.0.2-SNAPSHOT β false β 1 β
ββββββββββββ΄βββββββββββββββββ΄βββββββββββ΄βββββββββββββββββ΄βββββββββββ΄βββββββββ
VERIFICATION RESULTS
--------------------
1. <https://na-f6c548c6.pactflow.io/pacts/provider/provider/consumer/consumer/pact-version/4a9234eb022c262a1a3d960f70b64cf0f7c7dc73/metadata/Y3ZuPTAuMC4zLVNOQVBTSE9U/verification-results/237> (failure)
The verification for the pact between version 0.0.3-SNAPSHOT of consumer and the version of provider currently in production (0.0.2-SNAPSHOT) failedPaul Williams
06/02/2026, 12:40 PMMatt (pactflow.io / pact-js / pact-go)
Paul Williams
06/02/2026, 1:00 PMPaul Williams
06/02/2026, 1:00 PMPaul Williams
06/02/2026, 1:03 PMwill@Pauls-MacBook-Pro consumer % podman run --rm \
-e PACT_BROKER_BASE_URL=<https://na-f6c548c6.pactflow.io> \
-e PACT_BROKER_TOKEN=<token> \
pactfoundation/pact-cli:latest pact-broker can-i-deploy \
--pacticipant consumer \
--version 0.0.3-SNAPSHOT \
--to-environment production
Computer says no Β―\_(γ)_/Β―
CONSUMER | C.VERSION | PROVIDER | P.VERSION | SUCCESS? | RESULT#
---------|----------------|----------|----------------|----------|--------
consumer | 0.0.3-SNAPSHOT | provider | 0.0.2-SNAPSHOT | false | 1
VERIFICATION RESULTS
--------------------
1. <https://na-f6c548c6.pactflow.io/pacts/provider/provider/consumer/consumer/pact-version/4a9234eb022c262a1a3d960f70b64cf0f7c7dc73/metadata/Y3ZuPTAuMC4zLVNOQVBTSE9U/verification-results/237> (failure)Paul Williams
06/02/2026, 1:04 PMComputer says yes \o/
CONSUMER | C.VERSION | PROVIDER | P.VERSION | SUCCESS? | RESULT#
---------|----------------|----------|----------------|----------|--------
consumer | 0.0.3-SNAPSHOT | provider | 0.0.3-SNAPSHOT | true | 1
VERIFICATION RESULTS
--------------------
1. <https://xxx.pactflow.io/pacts/provider/provider/consumer/consumer/pact-version/4a9234eb022c262a1a3d960f70b64cf0f7c7dc73/metadata/Y3ZuPTAuMC4zLVNOQVBTSE9U/verification-results/221> (success)
All required verification results are published and successfulPaul Williams
06/02/2026, 1:05 PMMatt (pactflow.io / pact-js / pact-go)