mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-16 16:30:15 +01:00
♻️ fix: Prevent Instructions from Removal when nearing Max Context (#5516)
* refactor: getMessagesWithinTokenLimit to accept params object * refactor: always include instructions in payload if provided * ci: remove obsolete test * refactor: update logoutUser to accept request object and handle session destruction * test: enhance getMessagesWithinTokenLimit tests for instruction handling
This commit is contained in:
parent
528ee62eb1
commit
4110209494
6 changed files with 185 additions and 83 deletions
|
|
@ -35,13 +35,14 @@ const genericVerificationMessage = 'Please check your email to verify your email
|
|||
/**
|
||||
* Logout user
|
||||
*
|
||||
* @param {String} userId
|
||||
* @param {*} refreshToken
|
||||
* @param {ServerRequest} req
|
||||
* @param {string} refreshToken
|
||||
* @returns
|
||||
*/
|
||||
const logoutUser = async (userId, refreshToken) => {
|
||||
const logoutUser = async (req, refreshToken) => {
|
||||
try {
|
||||
const session = await findSession({ userId: userId, refreshToken: refreshToken });
|
||||
const userId = req.user._id;
|
||||
const session = await findSession({ userId: userId, refreshToken });
|
||||
|
||||
if (session) {
|
||||
try {
|
||||
|
|
@ -52,6 +53,12 @@ const logoutUser = async (userId, refreshToken) => {
|
|||
}
|
||||
}
|
||||
|
||||
try {
|
||||
req.session.destroy();
|
||||
} catch (destroyErr) {
|
||||
logger.error('[logoutUser] Failed to destroy session.', destroyErr);
|
||||
}
|
||||
|
||||
return { status: 200, message: 'Logout successful' };
|
||||
} catch (err) {
|
||||
return { status: 500, message: err.message };
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue