@lobehub/lobehub 2.0.0-next.20 → 2.0.0-next.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/.github/workflows/claude-auto-testing.yml +73 -0
  2. package/.github/workflows/claude-translate-comments.yml +67 -0
  3. package/.github/workflows/release.yml +1 -1
  4. package/.github/workflows/test.yml +39 -2
  5. package/CHANGELOG.md +42 -0
  6. package/apps/desktop/package.json +1 -1
  7. package/apps/desktop/src/main/controllers/AuthCtr.ts +53 -39
  8. package/apps/desktop/src/main/controllers/MenuCtr.ts +5 -5
  9. package/apps/desktop/src/main/controllers/NotificationCtr.ts +29 -29
  10. package/apps/desktop/src/main/controllers/RemoteServerConfigCtr.ts +16 -16
  11. package/apps/desktop/src/main/controllers/ShortcutCtr.ts +2 -2
  12. package/apps/desktop/src/main/controllers/TrayMenuCtr.ts +18 -18
  13. package/apps/desktop/src/main/controllers/UpdaterCtr.ts +4 -4
  14. package/apps/desktop/src/main/controllers/__tests__/AuthCtr.test.ts +706 -0
  15. package/apps/desktop/src/main/controllers/__tests__/TrayMenuCtr.test.ts +5 -5
  16. package/apps/desktop/src/main/controllers/index.ts +4 -4
  17. package/changelog/v1.json +14 -0
  18. package/docs/development/database-schema.dbml +2 -1
  19. package/package.json +2 -2
  20. package/packages/database/migrations/0042_improve_agent_index.sql +1 -0
  21. package/packages/database/migrations/meta/0042_snapshot.json +7800 -0
  22. package/packages/database/migrations/meta/_journal.json +7 -0
  23. package/packages/database/src/core/migrations.json +8 -0
  24. package/packages/database/src/models/agent.ts +16 -13
  25. package/packages/database/src/models/session.ts +20 -9
  26. package/packages/database/src/models/user.ts +2 -1
  27. package/packages/database/src/schemas/agent.ts +4 -1
  28. package/packages/types/src/message/ui/params.ts +1 -1
  29. package/packages/utils/src/apiKey.test.ts +139 -0
  30. package/packages/utils/src/client/clipboard.ts +2 -2
  31. package/packages/utils/src/client/exportFile.ts +10 -10
  32. package/packages/utils/src/client/parserPlaceholder.ts +18 -18
  33. package/packages/utils/src/client/topic.ts +10 -10
  34. package/packages/utils/src/client/xor-obfuscation.ts +11 -11
  35. package/renovate.json +20 -3
  36. package/src/app/[variants]/oauth/consent/[uid]/Login.tsx +10 -1
  37. package/src/server/routers/lambda/message.ts +0 -2
  38. package/src/server/routers/lambda/user.ts +8 -6
  39. package/src/services/chat/index.ts +3 -3
  40. package/src/services/mcp.test.ts +777 -0
@@ -30,7 +30,9 @@ const userProcedure = authedProcedure.use(serverDatabase).use(async ({ ctx, next
30
30
  ctx: {
31
31
  clerkAuth: new ClerkAuth(),
32
32
  fileService: new FileService(ctx.serverDB, ctx.userId),
33
+ messageModel: new MessageModel(ctx.serverDB, ctx.userId),
33
34
  nextAuthUserService: new NextAuthUserService(ctx.serverDB),
35
+ sessionModel: new SessionModel(ctx.serverDB, ctx.userId),
34
36
  userModel: new UserModel(ctx.serverDB, ctx.userId),
35
37
  },
36
38
  });
@@ -97,12 +99,12 @@ export const userRouter = router({
97
99
  }
98
100
  }
99
101
 
100
- const messageModel = new MessageModel(ctx.serverDB, ctx.userId);
101
- const hasMoreThan4Messages = await messageModel.hasMoreThanN(4);
102
-
103
- const sessionModel = new SessionModel(ctx.serverDB, ctx.userId);
104
- const hasAnyMessages = await messageModel.hasMoreThanN(0);
105
- const hasExtraSession = await sessionModel.hasMoreThanN(1);
102
+ // Run all count queries in parallel
103
+ const [hasMoreThan4Messages, hasAnyMessages, hasExtraSession] = await Promise.all([
104
+ ctx.messageModel.hasMoreThanN(4),
105
+ ctx.messageModel.hasMoreThanN(0),
106
+ ctx.sessionModel.hasMoreThanN(1),
107
+ ]);
106
108
 
107
109
  return {
108
110
  avatar: state.avatar,
@@ -52,12 +52,12 @@ interface FetchAITaskResultParams extends FetchSSEOptions {
52
52
  abortController?: AbortController;
53
53
  onError?: (e: Error, rawError?: any) => void;
54
54
  /**
55
- * 加载状态变化处理函数
56
- * @param loading - 是否处于加载状态
55
+ * Loading state change handler function
56
+ * @param loading - Whether in loading state
57
57
  */
58
58
  onLoadingChange?: (loading: boolean) => void;
59
59
  /**
60
- * 请求对象
60
+ * Request object
61
61
  */
62
62
  params: ChatStreamInputParams;
63
63
  trace?: TracePayload;