diff --git a/controllers/AI.js b/controllers/AI.js index 8690107dd5a154a5a5ed3cb1f900c1ee0c030aff..7d57c9f21369dbdb5ec2920683936558969dcd92 100644 --- a/controllers/AI.js +++ b/controllers/AI.js @@ -121,9 +121,7 @@ export const getChat = async (req, res, next) => { */ export const getChats = async (req, res, next) => { try { - // TODO sort chats by createdAt const chats = await findRecords(Chat, { createdBy: global.currentUserId }); - // const chats = await Chat.find({ createdBy: global.currentUserId }).sort({ 'createdAt': 1 }); return res.json({ chats }); } catch (error) { next(error); diff --git a/coverage/ragchat-api/routes/ai.js.html b/coverage/ragchat-api/routes/ai.js.html index 3ee1adafb963767bbb95ae4a1d65d63b22964533..d2ce27b3ec878f102ca4405371e7db325b5701d0 100644 --- a/coverage/ragchat-api/routes/ai.js.html +++ b/coverage/ragchat-api/routes/ai.js.html @@ -1,65 +1,65 @@ - <!doctype html> <html lang="en"> <head> - <title>Code coverage report for ragchat-api/routes/ai.js</title> - <meta charset="utf-8" /> - <link rel="stylesheet" href="../../prettify.css" /> - <link rel="stylesheet" href="../../base.css" /> - <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" /> - <meta name="viewport" content="width=device-width, initial-scale=1" /> - <style type='text/css'> - .coverage-summary .sorter { - background-image: url(../../sort-arrow-sprite.png); - } - </style> + <title>Code coverage report for ragchat-api/routes/ai.js</title> + <meta charset="utf-8" /> + <link rel="stylesheet" href="../../prettify.css" /> + <link rel="stylesheet" href="../../base.css" /> + <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" /> + <meta name="viewport" content="width=device-width, initial-scale=1" /> + <style type='text/css'> + .coverage-summary .sorter { + background-image: url(../../sort-arrow-sprite.png); + } + </style> </head> - + <body> -<div class='wrapper'> + <div class='wrapper'> <div class='pad1'> - <h1><a href="../../index.html">All files</a> / <a href="index.html">ragchat-api/routes</a> ai.js</h1> - <div class='clearfix'> - - <div class='fl pad1y space-right2'> - <span class="strong">100% </span> - <span class="quiet">Statements</span> - <span class='fraction'>97/97</span> - </div> - - - <div class='fl pad1y space-right2'> - <span class="strong">100% </span> - <span class="quiet">Branches</span> - <span class='fraction'>0/0</span> - </div> - - - <div class='fl pad1y space-right2'> - <span class="strong">100% </span> - <span class="quiet">Functions</span> - <span class='fraction'>0/0</span> - </div> - - - <div class='fl pad1y space-right2'> - <span class="strong">100% </span> - <span class="quiet">Lines</span> - <span class='fraction'>97/97</span> - </div> - - + <h1><a href="../../index.html">All files</a> / <a href="index.html">ragchat-api/routes</a> ai.js</h1> + <div class='clearfix'> + + <div class='fl pad1y space-right2'> + <span class="strong">100% </span> + <span class="quiet">Statements</span> + <span class='fraction'>97/97</span> + </div> + + + <div class='fl pad1y space-right2'> + <span class="strong">100% </span> + <span class="quiet">Branches</span> + <span class='fraction'>0/0</span> + </div> + + + <div class='fl pad1y space-right2'> + <span class="strong">100% </span> + <span class="quiet">Functions</span> + <span class='fraction'>0/0</span> + </div> + + + <div class='fl pad1y space-right2'> + <span class="strong">100% </span> + <span class="quiet">Lines</span> + <span class='fraction'>97/97</span> </div> - <p class="quiet"> - Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block. - </p> - <template id="filterTemplate"> - <div class="quiet"> - Filter: - <input type="search" id="fileSearch"> - </div> - </template> + + + </div> + <p class="quiet"> + Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the + previous block. + </p> + <template id="filterTemplate"> + <div class="quiet"> + Filter: + <input type="search" id="fileSearch"> + </div> + </template> </div> <div class='status-line high'></div> <pre><table class="coverage"> @@ -348,26 +348,29 @@ router.post('/chat', verifyAccessToken, validate(chatSchema), checkRequestedMode * @header {authorization} Bearer [required] access token * @return {object} list of found conversations, ordered by updated */ -// TODO sort chats by createdAt router.get('/chats', verifyAccessToken, getChats); -export default router;</pre></td></tr></table></pre> +export default router;</pre> + </td> + </tr> + </table> + </pre> + + <div class='push'></div><!-- for sticky footer --> + </div><!-- /wrapper --> + <div class='footer quiet pad2 space-top1 center small'> + Code coverage generated by + <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a> + at 2024-08-07T16:05:11.081Z + </div> + <script src="../../prettify.js"></script> + <script> + window.onload = function () { + prettyPrint(); + }; + </script> + <script src="../../sorter.js"></script> + <script src="../../block-navigation.js"></script> +</body> - <div class='push'></div><!-- for sticky footer --> - </div><!-- /wrapper --> - <div class='footer quiet pad2 space-top1 center small'> - Code coverage generated by - <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a> - at 2024-08-07T16:05:11.081Z - </div> - <script src="../../prettify.js"></script> - <script> - window.onload = function () { - prettyPrint(); - }; - </script> - <script src="../../sorter.js"></script> - <script src="../../block-navigation.js"></script> - </body> -</html> - \ No newline at end of file +</html> \ No newline at end of file diff --git a/models/Chat.js b/models/Chat.js index 46ad9bb5a6ceac9fb4485ec80afc36b1fa116a10..cb5d3d278a8aaba897d89daba9a6f435d2099b9f 100644 --- a/models/Chat.js +++ b/models/Chat.js @@ -60,7 +60,7 @@ ChatSchema.pre('save', async function (next) { ChatSchema.pre('find', function (next) { // set default sort if (typeof this.options.sort === 'undefined') { - this.options.sort = { createdAt: 1 }; + this.options.sort = { createdAt: -1 }; } next(); }); diff --git a/utils/handleAI.js b/utils/handleAI.js index a4c1c124282275734e82ada17f12b7721371608c..6e77fbfae4f033461a0d60d5ef71411507462932 100644 --- a/utils/handleAI.js +++ b/utils/handleAI.js @@ -189,16 +189,13 @@ export const chat = async (req, res, next) => { // if history given if (invokeInput.chat_history.length > 0) { // input into contextualized question - console.log('contextualizing input'); return contextualizeQChain; } // simply return input if no history given - console.log('keeping input as is'); return invokeInput.input; } }).assign({ docs: async (invokeInput) => { - console.log('question', invokeInput.question); // fetch question related docs from retriever return await retriever.invoke(invokeInput.question); }