lifecycle is LIFECYCLE_UNSPECIFIED
The stage is explicitly unset, so the agent does not know which payload is authoritative or which intents apply.
What it means
lifecycle is the enum's zero value. In protobuf that is indistinguishable from the field never being set, which is why it reads as unspecified rather than as a stage.
Why it matters
Every mutation an agent can propose is stage dependent. Segment activation belongs on the request; bid shading belongs on the response. Without the stage the agent cannot tell which of the two payloads it is being asked to change.
How to fix it
Set the stage explicitly. The zero value exists so that protobuf can express 'not set', not as a default worth sending.
Example that trips it
{ "id": "ep-1", "tmax": 120, "lifecycle": "LIFECYCLE_UNSPECIFIED", "bid_request": { "id": "a-1" } }Check your payload
Paste a bid request or response into the tester to see whether this code fires against it, or gate on the id in CI with the CLI: the id is stable, wording is not.
Back to the full diagnostic code reference.