LibreChat/api
Marco Beretta 810d8dbe35
fix(import): choose the storage backend per asset, not per archive
A deployment can point fileStrategies.image and fileStrategies.document at
different places, and an export mixes images with audio, video, and PDFs.
Resolving isImage: true once for the whole archive sent every non-image
attachment to the image backend, so it landed somewhere the deployment never
meant it to live and could be unavailable after a restart.

Both backends are still resolved up front, so a misconfigured strategy
fails the job at setup rather than surfacing as a per-asset error halfway
through; only the choice between them is per asset. saveBuffer now reports
which backend took the bytes so the file row records it.
2026-07-29 04:03:02 +02:00
..
app 🙋 fix: Await ask_user_question Tool Factory in loadTools (#14291) 2026-07-15 13:41:55 -04:00
cache feat(import): add cache-backed import job store 2026-07-25 02:45:39 +02:00
config 🪵 refactor: Bound Log Traversal And Remove Legacy api/config Logger (#13813) 2026-06-17 12:31:32 -04:00
db ⚖️ feat: Add Operational Prometheus Metrics (#13265) 2026-05-22 20:47:41 -04:00
models 🧩 fix: Preserve Deployment Skill IDs on Agents (#14368) 2026-07-21 19:44:27 -04:00
server fix(import): choose the storage backend per asset, not per archive 2026-07-29 04:03:02 +02:00
strategies 📉 perf: cache OpenID JWT user documents (#14187) 2026-07-12 07:53:50 -04:00
test feat(import): route Grok exports through the job pipeline and label them 2026-07-26 16:26:35 +02:00
utils feat: Add Gemini 3.6 Flash and Gemini 3.5 Flash-Lite Support (#14369) 2026-07-21 21:14:11 -04:00
jest.config.js 📦 chore: npm audit fix (#13828) 2026-06-17 21:54:04 -04:00
jsconfig.json
package.json 📦 chore: Update @librechat/agents to v3.2.68 (#14380) 2026-07-21 21:40:54 -04:00
typedefs.js 🧬 chore: Align LibreChat With Agents LangChain Upgrade (#12922) 2026-05-03 12:46:01 -04:00