LibreChat/packages/data-provider
Marco Beretta 06f462ded6
feat: add ephemeral retention mode for forced temporary chats
Extends the `retentionMode` interface option with a new `ephemeral` value
that forces every conversation to be temporary and applies expiration
deadlines to all data. Unlike `all` (which keeps chats visible until they
expire), `ephemeral` marks all chats temporary so they are hidden from
history and search, with the per-chat toggle locked on.

- Add RetentionMode.EPHEMERAL plus isAllDataRetention and
  isForcedTemporaryRetention helpers
- Force isTemporary and expiry on conversations, messages, imports, and files
- Force the TEMPORARY_CHAT permission on so the locked indicator is shown
- Lock the temporary-chat toggle in the UI and force new/existing chats temporary
- Document the new mode in librechat.example.yaml
2026-07-24 16:21:58 +02:00
..
react-query 📦 chore: bump @librechat/agents to v3.2.42 (#13848) 2026-06-19 09:47:46 -04:00
specs feat: add ephemeral retention mode for forced temporary chats 2026-07-24 16:21:58 +02:00
src feat: add ephemeral retention mode for forced temporary chats 2026-07-24 16:21:58 +02:00
.gitignore
babel.config.js
check_updates.sh
jest.config.js
package.json v0.8.7 (#13907) 2026-06-24 14:49:32 -04:00
server-rollup.config.js
tsconfig.build.json refactor: Migrate data-provider Build to tsdown (split tsc dts) (#13597) 2026-06-08 11:09:16 -04:00
tsconfig.json
tsconfig.spec.json
tsdown.config.mjs 🪟 fix: Cross-Platform Absolute-Path Check in tsdown neverBundle Predicates (#13700) 2026-06-13 11:04:46 -04:00