Troubleshooting
The consumer workflow didn’t run
Section titled “The consumer workflow didn’t run”- Check the dispatch queue. In Consumer → Received Events (or Provider → Delivery Status), look at the dispatch queue. A Not sent row gives the reason.
- Check the event type. The workflow’s
on.repository_dispatch.typesmust equal the provider’sevent-type. Without the Zekt Action, it’szekt-workflow-completed. - Check the branch. GitHub runs
repository_dispatchworkflows from the repository’s default branch. The workflow file must be there. - Check the subscription and the repository. The subscription must be active (Consumer → Subscriptions), and the repository enabled (Consumer → Repos).
- Try the Event Simulator (Consumer → Event Simulator). If it reports No workflows detected,
the cause is one of these:
- no workflow listens for
repository_dispatch; - the event type doesn’t match
types; - the workflow is slow to start.
- no workflow listens for
Zekt doesn’t check that your workflow file exists, so there’s no specific error for a missing workflow.
A delivery failed
Section titled “A delivery failed”If GitHub refused the delivery, it’s listed in Consumer → Failed Deliveries. Choose Retry. See Failed deliveries.
Providers can replay a delivery with Zekt Analytics.
The same event ran twice
Section titled “The same event ran twice”Delivery is at-least-once. Deduplicate on zekt.correlationId plus zekt.replayId. See
Receive events.
The Zekt Action step failed
Section titled “The Zekt Action step failed”| Message | Fix |
|---|---|
| Failed to send event (HTTP 413)… | The payload is over 1 MB. Send less. |
| Invalid JSON payload: … | Fix the JSON in payload. |
| ”event-type” input is required… | Add event-type. |
| SHIELD_NOT_ENABLED… | Turn on Shield for the repository, or remove shield: true. |
| SHIELD_ENFORCEMENT… | The service requires encryption. Set shield: true. |
| Shield encryption requested but no consumers have uploaded a public key… | No subscriber can decrypt yet. Ask them to upload a key in Shield → Consumer Keys. |
| Orchestration payload is not valid JSON: … | Fix the JSON of the plan in payload. |
| Repository not enabled in Zekt (404) | Enable the repository as a provider. |
| Repository is disabled (403) | The repository is switched off in Zekt. Switch it on again under Provider → Repos. |
| HTTP 429 | You hit a rate limit. Wait for Retry-After. |
Also check that the job has permissions: id-token: write.
An orchestration was refused
Section titled “An orchestration was refused”- Service ’…’ not found or you are not authorized to use it. Check that your account has an approved subscription to that owner and slug.
- Repository ’…’ is not enabled for Zekt… Enable the requesting repository as a provider.
- Rate limit exceeded: maximum N concurrent orchestrations per customer. Wait for running orchestrations to finish.
- This account cannot start new orchestrations: …. Resolve billing to continue. Resolve billing.
A repository won’t enable
Section titled “A repository won’t enable”See the error table in Enable a provider repository.
New work stopped
Section titled “New work stopped”If dispatches, orchestrations and replays stop while reading and settings still work, check Management → Billing → Payment Method for a payment banner. See When a payment fails.