Shun Miyazawa 1 год назад
Родитель
Сommit
6ee778ae88

+ 3 - 1
apps/app/src/features/openai/client/components/AiAssistant/AiAssistantChatSidebar/AiAssistantChatSidebar.tsx

@@ -76,7 +76,9 @@ const AiAssistantChatSidebarSubstance: React.FC<AiAssistantChatSidebarSubstanceP
     const fetchAndSetMessageData = async() => {
     const fetchAndSetMessageData = async() => {
       const messageData = await mutateMessageData();
       const messageData = await mutateMessageData();
       if (messageData != null) {
       if (messageData != null) {
-        const normalizedMessageData = messageData.data.filter(message => message.metadata?.shouldHideMessage !== 'true');
+        const normalizedMessageData = messageData.data
+          .reverse()
+          .filter(message => message.metadata?.shouldHideMessage !== 'true');
 
 
         setMessageLogs(() => {
         setMessageLogs(() => {
           return normalizedMessageData.map((message, index) => (
           return normalizedMessageData.map((message, index) => (

+ 2 - 2
apps/app/src/features/openai/server/routes/get-messages.ts

@@ -53,13 +53,13 @@ export const getMessagesFactory: GetMessagesFactory = (crowi) => {
           threadId, aiAssistantId, limit, before, after,
           threadId, aiAssistantId, limit, before, after,
         } = req.params;
         } = req.params;
 
 
-        const isAiAssistantUsable = openaiService.isAiAssistantUsable(aiAssistantId, req.user);
+        const isAiAssistantUsable = await openaiService.isAiAssistantUsable(aiAssistantId, req.user);
         if (!isAiAssistantUsable) {
         if (!isAiAssistantUsable) {
           return res.apiv3Err(new ErrorV3('The specified AI assistant is not usable'), 400);
           return res.apiv3Err(new ErrorV3('The specified AI assistant is not usable'), 400);
         }
         }
 
 
         const messages = await openaiService.getMessageData(threadId, req.user.lang, {
         const messages = await openaiService.getMessageData(threadId, req.user.lang, {
-          limit, before, after, order: 'asc',
+          limit, before, after, order: 'desc',
         });
         });
 
 
         return res.apiv3({ messages });
         return res.apiv3({ messages });