---
title: "v1.91.3 - Responses Guardrail Coverage & OTel Exception Events"
url: "/release_notes/v1.91.3/v1-91-3"
canonical_url: "https://docs.litellm.ai/release_notes/v1.91.3/v1-91-3"
type: "release-notes"
last_updated: "2026-10-09"
related:
  - "/release_notes/v1.91.4/v1-91-4"
  - "/release_notes/v1.91.1/v1-91-1"
---
# v1.91.3 - Responses Guardrail Coverage & OTel Exception Events

> Index of all LiteLLM docs: https://docs.litellm.ai/llms.txt

## Deploy this version

**Docker**

```bash
docker run \
-e STORE_MODEL_IN_DB=True \
-p 4000:4000 \
docker.litellm.ai/berriai/litellm:1.91.3
```

**Pip**

```bash
pip install litellm==1.91.3
```

`v1.91.3` is a patch release on top of `v1.91.2`. It backports two changes onto the 1.91.x line. The first restores guardrail coverage on the Responses API: shared content helpers now walk the Responses item taxonomy, so text guardrails once again see user and tool-output text on `/v1/responses` instead of scanning an empty payload. The second records a failed LLM call as the GenAI-standard `gen_ai.client.operation.exception` log event, carrying the exception type, message, and stacktrace at WARN severity so observability backends see the full failure.

### What's Changed

- fix(guardrails): walk Responses-API text taxonomy in shared content helpers - [PR #32542](https://github.com/BerriAI/litellm/pull/32542)
- feat(otel): emit the gen_ai.client.operation.exception event on failed LLM calls - [PR #32655](https://github.com/BerriAI/litellm/pull/32655)

## Full Changelog

https://github.com/BerriAI/litellm/compare/v1.91.2...v1.91.3

## Related pages

- [v1.91.4](https://docs.litellm.ai/release_notes/v1.91.4/v1-91-4.md)
- [v1.91.1](https://docs.litellm.ai/release_notes/v1.91.1/v1-91-1.md)
