llama-stack-mirror/llama_stack
Matthew Farrellee a2a6a91cf5 fix(openai-compat): restrict developer/assistant/system/tool messages to text-only content
**What:**
- Added OpenAIChatCompletionTextOnlyMessageContent type for text-only content validation
- Modified OpenAISystemMessageParam, OpenAIAssistantMessageParam, OpenAIDeveloperMessageParam, and OpenAIToolMessageParam to use text-only content type instead of mixed content
- OpenAIUserMessageParam unchanged - still accepts both text and images
- Updated OpenAPI spec files to reflect text-only content restrictions in schemas

**Why:**
- Enforces OpenAI API compatibility by restricting image content to user messages only
- Prevents API misuse where images might be sent in message types that don't support them
- Aligns with OpenAI's actual API behavior where only user messages can contain multimodal content
- Improves type safety and validation at the API boundary

**Test plan:**
- Added comprehensive parametrized tests covering all 5 OpenAI message types
- Tests verify text string acceptance for all message types
- Tests verify text list acceptance for all message types
- Tests verify image rejection for system/assistant/developer/tool messages (ValidationError expected)
- Tests verify user messages still accept images (backward compatibility maintained)
2025-07-28 09:24:21 -04:00
..
apis fix(openai-compat): restrict developer/assistant/system/tool messages to text-only content 2025-07-28 09:24:21 -04:00
cli fix: separate build and run provider types (#2917) 2025-07-25 12:39:26 -07:00
distribution feat(starter)!: simplify starter distro; litellm model registry changes (#2916) 2025-07-25 15:02:04 -07:00
models chore(api): add mypy coverage to chat_format (#2654) 2025-07-18 11:56:53 +02:00
providers feat(starter)!: simplify starter distro; litellm model registry changes (#2916) 2025-07-25 15:02:04 -07:00
strong_typing chore: enable pyupgrade fixes (#1806) 2025-05-01 14:23:50 -07:00
templates feat(starter)!: simplify starter distro; litellm model registry changes (#2916) 2025-07-25 15:02:04 -07:00
ui chore(deps): bump form-data from 4.0.2 to 4.0.4 in /llama_stack/ui (#2898) 2025-07-24 21:24:56 -04:00
__init__.py export LibraryClient 2024-12-13 12:08:00 -08:00
env.py refactor(test): move tools, evals, datasetio, scoring and post training tests (#1401) 2025-03-04 14:53:47 -08:00
log.py fix: use logger for console telemetry (#2844) 2025-07-24 16:26:59 -04:00
schema_utils.py feat(auth): API access control (#2822) 2025-07-24 15:30:48 -07:00