Commit Graph
2 Commits
Author SHA1 Message Date
8c2131db48 feat(embeddings): add EMBEDDING_BASE_URL for OpenAI-compatible embedding providers (#1082)
* feat(embeddings): add EMBEDDING_BASE_URL for OpenAI-compatible embedding providers

Allow configuring a custom base URL for OpenAI-compatible embedding
endpoints (e.g., Azure OpenAI, local proxies, vLLM) via the
EMBEDDING_BASE_URL environment variable. When unset, defaults to
https://api.openai.com.

Changes:
- Extract hardcoded OpenAI URL to OPENAI_API_BASE_URL constant
- Add base_url field to OpenAiEmbeddings with builder method with_base_url()
- Auto-prepend https:// for schemeless URLs, strip trailing slashes
- Add openai_base_url field to EmbeddingsConfig, parsed from EMBEDDING_BASE_URL
- Wire base URL through create_provider() with debug logging
- Add EMBEDDING_BASE_URL to clear_embedding_env() in tests
- Add unit tests for URL validation and env var parsing

* refactor: address Gemini review — in-place trailing slash strip, simplify config logic

- Use while/pop() instead of trim_end_matches().to_string() for zero
  extra allocation when stripping trailing slashes in with_base_url()
- Remove double openai_base_url check in create_provider() — create
  provider first, then branch on base_url for logging + configuration

---------

Co-authored-by: SMKRV <[email protected]>
2026-03-12 15:27:11 -07:00
b9446712e9 fix(telegram): add missing webhook section to capabilities.json (#381)
The Telegram channel capabilities file was missing the `webhook`
block inside `capabilities.channel`, causing the router to fall back
to the default `X-Webhook-Secret` header instead of the Telegram-
specific `X-Telegram-Bot-Api-Secret-Token`.

When a webhook secret is configured (via `telegram_webhook_secret`),
incoming updates are rejected with 401 because Telegram sends the
token in `X-Telegram-Bot-Api-Secret-Token` but the router looks for
`X-Webhook-Secret`.

The existing test in `schema.rs` already expects the correct header
name, confirming this is an oversight in the shipped capabilities
file.

Co-authored-by: SMKRV <[email protected]>
Co-authored-by: firat.sertgoz <[email protected]>
2026-03-04 14:40:28 +00:00