mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-07-10 16:23:44 +00:00
assignConversationToProject captured the findOneAndUpdate result before running the forced-retention conversion, so under ephemeral mode the returned object was a stale pre-conversion snapshot. The client writes that object straight into the active conversation and the React Query cache, so an assigned/removed permanent chat was cached as non-temporary with no expiredAt until a later refetch. Run the retention conversion before capturing the updated document so the findOneAndUpdate result carries the isTemporary/expiredAt fields alongside the chatProjectId change. A no-op outside forced retention. |
||
|---|---|---|
| .. | ||
| api | ||
| client | ||
| data-provider | ||
| data-schemas | ||