Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.
can now return "ai-security-review", "firewall-conditional-bypass-updated", "integration-previous-secret-revoked", "integration-secret-rotated", "team-runtime-cache-updated", "vercel-agent-security-finding-created"
Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.
can now return "project-git-credential-attestation-created", "project-git-credential-attestation-deleted", "project-git-credential-grant-attestation-revoked", "project-git-credential-grant-attested"
Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.
can now return "messageboard-private-project-granted", "messageboard-private-project-revoked", "messageboard-project-granted", "messageboard-project-revoked"
Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.
can now return "messageboard-channel-created", "messageboard-channel-updated", "messageboard-private-channel-created", "messageboard-private-channel-updated"
Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.
can now return "response_code"
18 places: GET /v1/security/firewall/config · active.rules[].conditionGroup[].conditions[].type, GET /v1/security/firewall/config · active.rulesets[].conditionGroup[].conditions[].type, GET /v1/security/firewall/config · draft.rulesets[].conditionGroup[].conditions[].type, GET /v1/security/firewall/config · versions[].rules[].conditionGroup[].conditions[].type, GET /v1/security/firewall/config · versions[].rulesets[].conditionGroup[].conditions[].type, GET /v1/security/firewall/config/{configVersion} · conditions[].conditionGroup[].conditions[].type +12 more
Code that breaks
switch (response.active.rules[0].conditionGroup[0].conditions[0].type) {
// existing branches …
// no branch for "response_code"
default:
throw new Error("unexpected type");
}
Breakingdirection flip: their tools call this safe