@multiplayer-app/ai-agent-mongo 0.1.0-beta.8 → 0.1.0-beta.81

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 (163) hide show
  1. package/dist/cjs/__tests__/helpers.cjs +1 -1
  2. package/dist/cjs/__tests__/helpers.cjs.map +1 -1
  3. package/dist/cjs/__tests__/repositories/MongoActivityRepository.test.cjs +385 -0
  4. package/dist/cjs/__tests__/repositories/MongoActivityRepository.test.cjs.map +1 -0
  5. package/dist/cjs/__tests__/repositories/MongoActivityRepository.test.d.ts +2 -0
  6. package/dist/cjs/__tests__/repositories/MongoActivityRepository.test.d.ts.map +1 -0
  7. package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.cjs +12 -68
  8. package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.cjs.map +1 -1
  9. package/dist/cjs/__tests__/repositories/MongoAgentConfigRepository.test.cjs +67 -0
  10. package/dist/cjs/__tests__/repositories/MongoAgentConfigRepository.test.cjs.map +1 -0
  11. package/dist/cjs/__tests__/repositories/MongoAgentConfigRepository.test.d.ts +2 -0
  12. package/dist/cjs/__tests__/repositories/MongoAgentConfigRepository.test.d.ts.map +1 -0
  13. package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.cjs +92 -0
  14. package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.cjs.map +1 -1
  15. package/dist/cjs/__tests__/schemas/AgentChatSchema.test.cjs +20 -14
  16. package/dist/cjs/__tests__/schemas/AgentChatSchema.test.cjs.map +1 -1
  17. package/dist/cjs/__tests__/schemas/AgentConfigPreferenceSchema.test.cjs +62 -0
  18. package/dist/cjs/__tests__/schemas/AgentConfigPreferenceSchema.test.cjs.map +1 -0
  19. package/dist/cjs/__tests__/schemas/AgentConfigPreferenceSchema.test.d.ts +2 -0
  20. package/dist/cjs/__tests__/schemas/AgentConfigPreferenceSchema.test.d.ts.map +1 -0
  21. package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.cjs +11 -0
  22. package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.cjs.map +1 -1
  23. package/dist/cjs/index.cjs +11 -1
  24. package/dist/cjs/index.cjs.map +1 -1
  25. package/dist/cjs/index.d.ts +5 -0
  26. package/dist/cjs/index.d.ts.map +1 -1
  27. package/dist/cjs/mongo/index.cjs +2 -17
  28. package/dist/cjs/mongo/index.cjs.map +1 -1
  29. package/dist/cjs/mongo/index.d.ts +0 -3
  30. package/dist/cjs/mongo/index.d.ts.map +1 -1
  31. package/dist/cjs/repositories/MongoActivityRepository.cjs +400 -0
  32. package/dist/cjs/repositories/MongoActivityRepository.cjs.map +1 -0
  33. package/dist/cjs/repositories/MongoActivityRepository.d.ts +68 -0
  34. package/dist/cjs/repositories/MongoActivityRepository.d.ts.map +1 -0
  35. package/dist/cjs/repositories/MongoAgentChatRepository.cjs +67 -146
  36. package/dist/cjs/repositories/MongoAgentChatRepository.cjs.map +1 -1
  37. package/dist/cjs/repositories/MongoAgentChatRepository.d.ts +7 -16
  38. package/dist/cjs/repositories/MongoAgentChatRepository.d.ts.map +1 -1
  39. package/dist/cjs/repositories/MongoAgentConfigRepository.cjs +126 -0
  40. package/dist/cjs/repositories/MongoAgentConfigRepository.cjs.map +1 -0
  41. package/dist/cjs/repositories/MongoAgentConfigRepository.d.ts +25 -0
  42. package/dist/cjs/repositories/MongoAgentConfigRepository.d.ts.map +1 -0
  43. package/dist/cjs/repositories/MongoAgentMessageRepository.cjs +70 -14
  44. package/dist/cjs/repositories/MongoAgentMessageRepository.cjs.map +1 -1
  45. package/dist/cjs/repositories/MongoAgentMessageRepository.d.ts +12 -2
  46. package/dist/cjs/repositories/MongoAgentMessageRepository.d.ts.map +1 -1
  47. package/dist/cjs/repositories/MongoTenantAICredentialRepository.cjs +129 -0
  48. package/dist/cjs/repositories/MongoTenantAICredentialRepository.cjs.map +1 -0
  49. package/dist/cjs/repositories/MongoTenantAICredentialRepository.d.ts +25 -0
  50. package/dist/cjs/repositories/MongoTenantAICredentialRepository.d.ts.map +1 -0
  51. package/dist/cjs/repositories/index.cjs +3 -0
  52. package/dist/cjs/repositories/index.cjs.map +1 -1
  53. package/dist/cjs/repositories/index.d.ts +3 -0
  54. package/dist/cjs/repositories/index.d.ts.map +1 -1
  55. package/dist/cjs/schemas/ActivitySchema.cjs +34 -0
  56. package/dist/cjs/schemas/ActivitySchema.cjs.map +1 -0
  57. package/dist/cjs/schemas/ActivitySchema.d.ts +30 -0
  58. package/dist/cjs/schemas/ActivitySchema.d.ts.map +1 -0
  59. package/dist/cjs/schemas/AgentChatSchema.cjs +9 -2
  60. package/dist/cjs/schemas/AgentChatSchema.cjs.map +1 -1
  61. package/dist/cjs/schemas/AgentChatSchema.d.ts.map +1 -1
  62. package/dist/cjs/schemas/AgentConfigPreferenceSchema.cjs +24 -0
  63. package/dist/cjs/schemas/AgentConfigPreferenceSchema.cjs.map +1 -0
  64. package/dist/cjs/schemas/AgentConfigPreferenceSchema.d.ts +24 -0
  65. package/dist/cjs/schemas/AgentConfigPreferenceSchema.d.ts.map +1 -0
  66. package/dist/cjs/schemas/AgentMessageSchema.cjs +21 -4
  67. package/dist/cjs/schemas/AgentMessageSchema.cjs.map +1 -1
  68. package/dist/cjs/schemas/AgentMessageSchema.d.ts.map +1 -1
  69. package/dist/cjs/schemas/TenantAICredentialSchema.cjs +17 -0
  70. package/dist/cjs/schemas/TenantAICredentialSchema.cjs.map +1 -0
  71. package/dist/cjs/schemas/TenantAICredentialSchema.d.ts +20 -0
  72. package/dist/cjs/schemas/TenantAICredentialSchema.d.ts.map +1 -0
  73. package/dist/cjs/schemas/index.cjs +3 -0
  74. package/dist/cjs/schemas/index.cjs.map +1 -1
  75. package/dist/cjs/schemas/index.d.ts +3 -0
  76. package/dist/cjs/schemas/index.d.ts.map +1 -1
  77. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  78. package/dist/esm/__tests__/helpers.js +1 -1
  79. package/dist/esm/__tests__/helpers.js.map +1 -1
  80. package/dist/esm/__tests__/repositories/MongoActivityRepository.test.d.ts +2 -0
  81. package/dist/esm/__tests__/repositories/MongoActivityRepository.test.d.ts.map +1 -0
  82. package/dist/esm/__tests__/repositories/MongoActivityRepository.test.js +383 -0
  83. package/dist/esm/__tests__/repositories/MongoActivityRepository.test.js.map +1 -0
  84. package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.js +12 -68
  85. package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.js.map +1 -1
  86. package/dist/esm/__tests__/repositories/MongoAgentConfigRepository.test.d.ts +2 -0
  87. package/dist/esm/__tests__/repositories/MongoAgentConfigRepository.test.d.ts.map +1 -0
  88. package/dist/esm/__tests__/repositories/MongoAgentConfigRepository.test.js +65 -0
  89. package/dist/esm/__tests__/repositories/MongoAgentConfigRepository.test.js.map +1 -0
  90. package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.js +92 -0
  91. package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.js.map +1 -1
  92. package/dist/esm/__tests__/schemas/AgentChatSchema.test.js +20 -14
  93. package/dist/esm/__tests__/schemas/AgentChatSchema.test.js.map +1 -1
  94. package/dist/esm/__tests__/schemas/AgentConfigPreferenceSchema.test.d.ts +2 -0
  95. package/dist/esm/__tests__/schemas/AgentConfigPreferenceSchema.test.d.ts.map +1 -0
  96. package/dist/esm/__tests__/schemas/AgentConfigPreferenceSchema.test.js +60 -0
  97. package/dist/esm/__tests__/schemas/AgentConfigPreferenceSchema.test.js.map +1 -0
  98. package/dist/esm/__tests__/schemas/AgentMessageSchema.test.js +11 -0
  99. package/dist/esm/__tests__/schemas/AgentMessageSchema.test.js.map +1 -1
  100. package/dist/esm/index.d.ts +5 -0
  101. package/dist/esm/index.d.ts.map +1 -1
  102. package/dist/esm/index.js +5 -0
  103. package/dist/esm/index.js.map +1 -1
  104. package/dist/esm/mongo/index.d.ts +0 -3
  105. package/dist/esm/mongo/index.d.ts.map +1 -1
  106. package/dist/esm/mongo/index.js +1 -16
  107. package/dist/esm/mongo/index.js.map +1 -1
  108. package/dist/esm/repositories/MongoActivityRepository.d.ts +68 -0
  109. package/dist/esm/repositories/MongoActivityRepository.d.ts.map +1 -0
  110. package/dist/esm/repositories/MongoActivityRepository.js +395 -0
  111. package/dist/esm/repositories/MongoActivityRepository.js.map +1 -0
  112. package/dist/esm/repositories/MongoAgentChatRepository.d.ts +7 -16
  113. package/dist/esm/repositories/MongoAgentChatRepository.d.ts.map +1 -1
  114. package/dist/esm/repositories/MongoAgentChatRepository.js +68 -147
  115. package/dist/esm/repositories/MongoAgentChatRepository.js.map +1 -1
  116. package/dist/esm/repositories/MongoAgentConfigRepository.d.ts +25 -0
  117. package/dist/esm/repositories/MongoAgentConfigRepository.d.ts.map +1 -0
  118. package/dist/esm/repositories/MongoAgentConfigRepository.js +122 -0
  119. package/dist/esm/repositories/MongoAgentConfigRepository.js.map +1 -0
  120. package/dist/esm/repositories/MongoAgentMessageRepository.d.ts +12 -2
  121. package/dist/esm/repositories/MongoAgentMessageRepository.d.ts.map +1 -1
  122. package/dist/esm/repositories/MongoAgentMessageRepository.js +70 -14
  123. package/dist/esm/repositories/MongoAgentMessageRepository.js.map +1 -1
  124. package/dist/esm/repositories/MongoTenantAICredentialRepository.d.ts +25 -0
  125. package/dist/esm/repositories/MongoTenantAICredentialRepository.d.ts.map +1 -0
  126. package/dist/esm/repositories/MongoTenantAICredentialRepository.js +125 -0
  127. package/dist/esm/repositories/MongoTenantAICredentialRepository.js.map +1 -0
  128. package/dist/esm/repositories/index.d.ts +3 -0
  129. package/dist/esm/repositories/index.d.ts.map +1 -1
  130. package/dist/esm/repositories/index.js +3 -0
  131. package/dist/esm/repositories/index.js.map +1 -1
  132. package/dist/esm/schemas/ActivitySchema.d.ts +30 -0
  133. package/dist/esm/schemas/ActivitySchema.d.ts.map +1 -0
  134. package/dist/esm/schemas/ActivitySchema.js +31 -0
  135. package/dist/esm/schemas/ActivitySchema.js.map +1 -0
  136. package/dist/esm/schemas/AgentChatSchema.d.ts.map +1 -1
  137. package/dist/esm/schemas/AgentChatSchema.js +10 -3
  138. package/dist/esm/schemas/AgentChatSchema.js.map +1 -1
  139. package/dist/esm/schemas/AgentConfigPreferenceSchema.d.ts +24 -0
  140. package/dist/esm/schemas/AgentConfigPreferenceSchema.d.ts.map +1 -0
  141. package/dist/esm/schemas/AgentConfigPreferenceSchema.js +21 -0
  142. package/dist/esm/schemas/AgentConfigPreferenceSchema.js.map +1 -0
  143. package/dist/esm/schemas/AgentMessageSchema.d.ts.map +1 -1
  144. package/dist/esm/schemas/AgentMessageSchema.js +21 -4
  145. package/dist/esm/schemas/AgentMessageSchema.js.map +1 -1
  146. package/dist/esm/schemas/TenantAICredentialSchema.d.ts +20 -0
  147. package/dist/esm/schemas/TenantAICredentialSchema.d.ts.map +1 -0
  148. package/dist/esm/schemas/TenantAICredentialSchema.js +14 -0
  149. package/dist/esm/schemas/TenantAICredentialSchema.js.map +1 -0
  150. package/dist/esm/schemas/index.d.ts +3 -0
  151. package/dist/esm/schemas/index.d.ts.map +1 -1
  152. package/dist/esm/schemas/index.js +3 -0
  153. package/dist/esm/schemas/index.js.map +1 -1
  154. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  155. package/package.json +4 -5
  156. package/dist/cjs/mongo/encryption.cjs +0 -149
  157. package/dist/cjs/mongo/encryption.cjs.map +0 -1
  158. package/dist/cjs/mongo/encryption.d.ts +0 -66
  159. package/dist/cjs/mongo/encryption.d.ts.map +0 -1
  160. package/dist/esm/mongo/encryption.d.ts +0 -66
  161. package/dist/esm/mongo/encryption.d.ts.map +0 -1
  162. package/dist/esm/mongo/encryption.js +0 -140
  163. package/dist/esm/mongo/encryption.js.map +0 -1
@@ -0,0 +1,383 @@
1
+ import { beforeEach, describe, expect, it } from 'vitest';
2
+ import { SortOrder } from '@multiplayer-app/ai-agent-types';
3
+ import { MongoActivityRepository } from '../../repositories/MongoActivityRepository';
4
+ import { ActivityModel } from '../../schemas/ActivitySchema';
5
+ import { clearCollections } from '../helpers';
6
+ function createTestActivity(overrides) {
7
+ return {
8
+ ownerId: 'owner-1',
9
+ groupId: 'group-1',
10
+ name: 'Test Activity',
11
+ description: 'test description',
12
+ tenants: { workspace: 'tenant-1' },
13
+ sourceId: 'source-1',
14
+ sourceType: 'User',
15
+ metadata: {},
16
+ ...overrides,
17
+ };
18
+ }
19
+ describe('MongoActivityRepository', () => {
20
+ let repository;
21
+ beforeEach(async () => {
22
+ repository = new MongoActivityRepository();
23
+ await clearCollections();
24
+ });
25
+ describe('create', () => {
26
+ it('should create a new activity', async () => {
27
+ const created = await repository.create(createTestActivity({ name: 'New Activity' }));
28
+ expect(created).toBeDefined();
29
+ expect(created.id).toBeDefined();
30
+ expect(created.name).toBe('New Activity');
31
+ expect(created.ownerId).toBe('owner-1');
32
+ expect(created.groupId).toBe('group-1');
33
+ expect(created.tenants).toEqual({ workspace: 'tenant-1' });
34
+ });
35
+ it('should create activity with explicit id when provided', async () => {
36
+ const explicitId = '507f1f77bcf86cd799439011';
37
+ const created = await repository.create(createTestActivity(), explicitId);
38
+ expect(created.id).toBe(explicitId);
39
+ });
40
+ });
41
+ describe('findById', () => {
42
+ it('should find activity by id', async () => {
43
+ const created = await repository.create(createTestActivity({ name: 'Find Me' }));
44
+ const found = await repository.findById(created.id);
45
+ expect(found).toBeDefined();
46
+ expect(found?.id).toBe(created.id);
47
+ expect(found?.name).toBe('Find Me');
48
+ });
49
+ it('should return null when activity is not found', async () => {
50
+ const found = await repository.findById('507f1f77bcf86cd799439099');
51
+ expect(found).toBeNull();
52
+ });
53
+ });
54
+ describe('find', () => {
55
+ it('should find activities by filter', async () => {
56
+ await repository.create(createTestActivity({ ownerId: 'owner-a', name: 'A1' }));
57
+ await repository.create(createTestActivity({ ownerId: 'owner-a', name: 'A2' }));
58
+ await repository.create(createTestActivity({ ownerId: 'owner-b', name: 'B1' }));
59
+ const activities = await repository.find({ ownerId: 'owner-a' });
60
+ expect(activities).toHaveLength(2);
61
+ expect(activities.every(a => a.ownerId === 'owner-a')).toBe(true);
62
+ });
63
+ it('should support id in filter', async () => {
64
+ const created = await repository.create(createTestActivity({ name: 'Specific' }));
65
+ const activities = await repository.find({ id: created.id });
66
+ expect(activities).toHaveLength(1);
67
+ expect(activities[0].id).toBe(created.id);
68
+ });
69
+ it('should support sort, limit, and skip options', async () => {
70
+ await repository.create(createTestActivity({ name: 'Charlie', ownerId: 'owner-sort' }));
71
+ await repository.create(createTestActivity({ name: 'Alpha', ownerId: 'owner-sort' }));
72
+ await repository.create(createTestActivity({ name: 'Bravo', ownerId: 'owner-sort' }));
73
+ const activities = await repository.find({ ownerId: 'owner-sort' }, { sort: { field: 'name', order: SortOrder.Asc }, skip: 1, limit: 1 });
74
+ expect(activities).toHaveLength(1);
75
+ expect(activities[0].name).toBe('Bravo');
76
+ });
77
+ });
78
+ describe('findOne', () => {
79
+ it('should find one activity matching filter', async () => {
80
+ await repository.create(createTestActivity({ ownerId: 'owner-one', name: 'Only One' }));
81
+ const found = await repository.findOne({ ownerId: 'owner-one' });
82
+ expect(found).toBeDefined();
83
+ expect(found?.name).toBe('Only One');
84
+ });
85
+ it('should return null when no activity matches', async () => {
86
+ const found = await repository.findOne({ ownerId: 'missing-owner' });
87
+ expect(found).toBeNull();
88
+ });
89
+ });
90
+ describe('update', () => {
91
+ it('should update an activity', async () => {
92
+ const created = await repository.create(createTestActivity({ name: 'Before' }));
93
+ const updated = await repository.update(created.id, { name: 'After' });
94
+ expect(updated).toBeDefined();
95
+ expect(updated?.name).toBe('After');
96
+ });
97
+ it('should update metadata usage without overriding metadata', async () => {
98
+ const created = await repository.create(createTestActivity({
99
+ metadata: {
100
+ traceId: 'trace-1',
101
+ usage: {
102
+ inputTokens: 10,
103
+ outputTokens: 5,
104
+ cost: 1.2
105
+ }
106
+ }
107
+ }));
108
+ const updated = await repository.update(created.id, {
109
+ metadata: {
110
+ usage: {
111
+ inputTokens: 100
112
+ }
113
+ }
114
+ });
115
+ expect(updated).toBeDefined();
116
+ expect(updated?.metadata?.traceId).toBe('trace-1');
117
+ expect(updated?.metadata?.usage).toEqual({
118
+ inputTokens: 100,
119
+ outputTokens: 5,
120
+ cost: 1.2
121
+ });
122
+ });
123
+ it('should return null when updating missing activity', async () => {
124
+ const updated = await repository.update('507f1f77bcf86cd799439088', { name: 'After' });
125
+ expect(updated).toBeNull();
126
+ });
127
+ });
128
+ describe('delete and exists', () => {
129
+ it('should delete activity by id', async () => {
130
+ const created = await repository.create(createTestActivity());
131
+ const deleted = await repository.delete(created.id);
132
+ expect(deleted).toBe(true);
133
+ expect(await repository.exists(created.id)).toBe(false);
134
+ });
135
+ it('should return false when deleting missing activity', async () => {
136
+ const deleted = await repository.delete('507f1f77bcf86cd799439077');
137
+ expect(deleted).toBe(false);
138
+ });
139
+ });
140
+ describe('count', () => {
141
+ it('should count all and filtered activities', async () => {
142
+ await repository.create(createTestActivity({ ownerId: 'owner-count' }));
143
+ await repository.create(createTestActivity({ ownerId: 'owner-count' }));
144
+ await repository.create(createTestActivity({ ownerId: 'other-owner' }));
145
+ expect(await repository.count()).toBe(3);
146
+ expect(await repository.count({ ownerId: 'owner-count' })).toBe(2);
147
+ });
148
+ });
149
+ describe('findByParentId and countByParentId', () => {
150
+ it('should find and count root activities when parentId is not provided', async () => {
151
+ await repository.create(createTestActivity({ ownerId: 'owner-root', name: 'Root 1' }));
152
+ await repository.create(createTestActivity({ ownerId: 'owner-root', name: 'Root 2' }));
153
+ await repository.create(createTestActivity({ ownerId: 'owner-root', name: 'Child', parentId: 'p-1' }));
154
+ const roots = await repository.findByParentId({ ownerId: 'owner-root' });
155
+ const rootCount = await repository.countByParentId({ ownerId: 'owner-root' });
156
+ expect(roots).toHaveLength(2);
157
+ expect(roots.every(a => !a.parentId)).toBe(true);
158
+ expect(rootCount).toBe(2);
159
+ });
160
+ it('should filter by parentId and support sort/skip/limit', async () => {
161
+ await repository.create(createTestActivity({ parentId: 'parent-1', ownerId: 'owner-p', name: 'Child C' }));
162
+ await repository.create(createTestActivity({ parentId: 'parent-1', ownerId: 'owner-p', name: 'Child A' }));
163
+ await repository.create(createTestActivity({ parentId: 'parent-1', ownerId: 'owner-p', name: 'Child B' }));
164
+ await repository.create(createTestActivity({ parentId: 'parent-2', ownerId: 'owner-p', name: 'Other Parent Child' }));
165
+ const children = await repository.findByParentId({ ownerId: 'owner-p', parentId: 'parent-1' }, { sort: { field: 'name', order: SortOrder.Asc }, skip: 1, limit: 1 });
166
+ const count = await repository.countByParentId({ ownerId: 'owner-p', parentId: 'parent-1' });
167
+ expect(children).toHaveLength(1);
168
+ expect(children[0].name).toBe('Child B');
169
+ expect(count).toBe(3);
170
+ });
171
+ it('should filter by tenants for parent queries', async () => {
172
+ await repository.create(createTestActivity({ parentId: 'tenant-parent', tenants: { workspace: 'tenant-a' }, ownerId: 'owner-t' }));
173
+ await repository.create(createTestActivity({ parentId: 'tenant-parent', tenants: { workspace: 'tenant-b' }, ownerId: 'owner-t' }));
174
+ const filtered = await repository.findByParentId({
175
+ parentId: 'tenant-parent',
176
+ ownerId: 'owner-t',
177
+ tenants: { workspace: 'tenant-a' },
178
+ });
179
+ expect(filtered).toHaveLength(1);
180
+ expect(filtered[0].tenants).toEqual({ workspace: 'tenant-a' });
181
+ });
182
+ it('should filter by sourceType', async () => {
183
+ await repository.create(createTestActivity({ ownerId: 'owner-st', name: 'A', sourceType: 'Chat', parentId: 'p-st' }));
184
+ await repository.create(createTestActivity({ ownerId: 'owner-st', name: 'B', sourceType: 'AgentMessage', parentId: 'p-st' }));
185
+ const chats = await repository.findByParentId({ ownerId: 'owner-st', parentId: 'p-st', sourceType: 'Chat' });
186
+ const count = await repository.countByParentId({ ownerId: 'owner-st', parentId: 'p-st', sourceType: 'Chat' });
187
+ expect(chats).toHaveLength(1);
188
+ expect(chats[0].name).toBe('A');
189
+ expect(chats[0].sourceType).toBe('Chat');
190
+ expect(count).toBe(1);
191
+ });
192
+ });
193
+ describe('distinctSourceTypes', () => {
194
+ it('should return sorted distinct source types for the same scope as parent list', async () => {
195
+ await repository.create(createTestActivity({ ownerId: 'o-d', name: 'R1', sourceType: 'Zebra' }));
196
+ await repository.create(createTestActivity({ ownerId: 'o-d', name: 'R2', sourceType: 'Alpha' }));
197
+ await repository.create(createTestActivity({ ownerId: 'o-d', name: 'R3', sourceType: 'Alpha' }));
198
+ await repository.create(createTestActivity({ ownerId: 'o-other', name: 'Other', sourceType: 'Beta' }));
199
+ const types = await repository.distinctSourceTypes({ ownerId: 'o-d' });
200
+ expect(types).toEqual(['Alpha', 'Zebra']);
201
+ });
202
+ });
203
+ describe('deleteByOwnerId and deleteByGroupId', () => {
204
+ it('should delete all activities by ownerId', async () => {
205
+ await repository.create(createTestActivity({ ownerId: 'owner-delete', groupId: 'group-1' }));
206
+ await repository.create(createTestActivity({ ownerId: 'owner-delete', groupId: 'group-2' }));
207
+ await repository.create(createTestActivity({ ownerId: 'owner-keep', groupId: 'group-1' }));
208
+ const deletedCount = await repository.deleteByOwnerId('owner-delete');
209
+ expect(deletedCount).toBe(2);
210
+ expect(await repository.count({ ownerId: 'owner-delete' })).toBe(0);
211
+ expect(await repository.count({ ownerId: 'owner-keep' })).toBe(1);
212
+ });
213
+ it('should delete all activities by groupId', async () => {
214
+ await repository.create(createTestActivity({ groupId: 'group-delete', ownerId: 'owner-1' }));
215
+ await repository.create(createTestActivity({ groupId: 'group-delete', ownerId: 'owner-2' }));
216
+ await repository.create(createTestActivity({ groupId: 'group-keep', ownerId: 'owner-3' }));
217
+ const deletedCount = await repository.deleteByGroupId('group-delete');
218
+ expect(deletedCount).toBe(2);
219
+ expect(await repository.count({ groupId: 'group-delete' })).toBe(0);
220
+ expect(await repository.count({ groupId: 'group-keep' })).toBe(1);
221
+ });
222
+ });
223
+ describe('getActivitySummary', () => {
224
+ it('should return totals grouped by model by default', async () => {
225
+ await repository.create(createTestActivity({
226
+ ownerId: 'user-1',
227
+ parentId: 'root-1',
228
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 120, cost: 1.2 } },
229
+ }));
230
+ await repository.create(createTestActivity({
231
+ ownerId: 'user-2',
232
+ parentId: 'root-2',
233
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 80, cost: 0.8 } },
234
+ }));
235
+ await repository.create(createTestActivity({
236
+ ownerId: 'user-1',
237
+ parentId: 'root-3',
238
+ metadata: { modelId: 'claude-3-5-sonnet', usage: { totalTokens: 50, cost: 0.5 } },
239
+ }));
240
+ const summary = await repository.getActivitySummary();
241
+ const byModel = Object.fromEntries(summary.map(item => [item.model, item]));
242
+ expect(summary).toHaveLength(2);
243
+ expect(byModel['gpt-4o']).toEqual({
244
+ model: 'gpt-4o',
245
+ totalRequests: 2,
246
+ totalTokens: 200,
247
+ totalCost: 2,
248
+ });
249
+ expect(byModel['claude-3-5-sonnet']).toEqual({
250
+ model: 'claude-3-5-sonnet',
251
+ totalRequests: 1,
252
+ totalTokens: 50,
253
+ totalCost: 0.5,
254
+ });
255
+ });
256
+ it('should filter by tenant and group by userId', async () => {
257
+ await repository.create(createTestActivity({
258
+ ownerId: 'user-a',
259
+ parentId: 'root-a',
260
+ tenants: { workspace: 'tenant-a' },
261
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 10, cost: 0.1 } },
262
+ }));
263
+ await repository.create(createTestActivity({
264
+ ownerId: 'user-b',
265
+ parentId: 'root-b',
266
+ tenants: { workspace: 'tenant-a' },
267
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 20, cost: 0.2 } },
268
+ }));
269
+ await repository.create(createTestActivity({
270
+ ownerId: 'user-a',
271
+ parentId: 'root-c',
272
+ tenants: { workspace: 'tenant-b' },
273
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 30, cost: 0.3 } },
274
+ }));
275
+ const summary = await repository.getActivitySummary({
276
+ tenant: { workspace: 'tenant-a' },
277
+ groupBy: ['userId'],
278
+ });
279
+ const byUser = Object.fromEntries(summary.map(item => [item.userId, item]));
280
+ expect(summary).toHaveLength(2);
281
+ expect(byUser['user-a']).toEqual({
282
+ userId: 'user-a',
283
+ totalRequests: 1,
284
+ totalTokens: 10,
285
+ totalCost: 0.1,
286
+ });
287
+ expect(byUser['user-b']).toEqual({
288
+ userId: 'user-b',
289
+ totalRequests: 1,
290
+ totalTokens: 20,
291
+ totalCost: 0.2,
292
+ });
293
+ });
294
+ it('should ignore root activities without parentId', async () => {
295
+ await repository.create(createTestActivity({
296
+ ownerId: 'user-1',
297
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 100, cost: 1 } },
298
+ }));
299
+ await repository.create(createTestActivity({
300
+ ownerId: 'user-1',
301
+ parentId: 'root-1',
302
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 25, cost: 0.25 } },
303
+ }));
304
+ const summary = await repository.getActivitySummary({ groupBy: ['model'] });
305
+ expect(summary).toHaveLength(1);
306
+ expect(summary[0]).toEqual({
307
+ model: 'gpt-4o',
308
+ totalRequests: 1,
309
+ totalTokens: 25,
310
+ totalCost: 0.25,
311
+ });
312
+ });
313
+ it('should support grouping by day using timeBucket', async () => {
314
+ await ActivityModel.collection.insertMany([
315
+ {
316
+ ownerId: 'user-1',
317
+ groupId: 'group-1',
318
+ name: 'Test Activity',
319
+ description: 'test description',
320
+ parentId: 'root-1',
321
+ tenants: { workspace: 'tenant-1' },
322
+ sourceId: 'source-1',
323
+ sourceType: 'User',
324
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 10, cost: 0.1 } },
325
+ createdAt: new Date('2026-02-01T10:00:00.000Z'),
326
+ updatedAt: new Date('2026-02-01T10:00:00.000Z'),
327
+ },
328
+ {
329
+ ownerId: 'user-1',
330
+ groupId: 'group-1',
331
+ name: 'Test Activity',
332
+ description: 'test description',
333
+ parentId: 'root-2',
334
+ tenants: { workspace: 'tenant-1' },
335
+ sourceId: 'source-2',
336
+ sourceType: 'User',
337
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 15, cost: 0.15 } },
338
+ createdAt: new Date('2026-02-01T18:00:00.000Z'),
339
+ updatedAt: new Date('2026-02-01T18:00:00.000Z'),
340
+ },
341
+ {
342
+ ownerId: 'user-1',
343
+ groupId: 'group-1',
344
+ name: 'Test Activity',
345
+ description: 'test description',
346
+ parentId: 'root-3',
347
+ tenants: { workspace: 'tenant-1' },
348
+ sourceId: 'source-3',
349
+ sourceType: 'User',
350
+ metadata: { modelId: 'gpt-4o', usage: { totalTokens: 20, cost: 0.2 } },
351
+ createdAt: new Date('2026-02-02T09:00:00.000Z'),
352
+ updatedAt: new Date('2026-02-02T09:00:00.000Z'),
353
+ },
354
+ ]);
355
+ const summary = await repository.getActivitySummary({
356
+ period: {
357
+ from: '2026-02-01T00:00:00.000Z',
358
+ to: '2026-02-28T23:59:59.999Z',
359
+ },
360
+ timeBucket: 'day',
361
+ groupBy: ['model'],
362
+ });
363
+ expect(summary).toHaveLength(2);
364
+ expect(summary).toEqual([
365
+ {
366
+ model: 'gpt-4o',
367
+ periodStart: '2026-02-01T00:00:00.000Z',
368
+ totalRequests: 2,
369
+ totalTokens: 25,
370
+ totalCost: 0.25,
371
+ },
372
+ {
373
+ model: 'gpt-4o',
374
+ periodStart: '2026-02-02T00:00:00.000Z',
375
+ totalRequests: 1,
376
+ totalTokens: 20,
377
+ totalCost: 0.2,
378
+ },
379
+ ]);
380
+ });
381
+ });
382
+ });
383
+ //# sourceMappingURL=MongoActivityRepository.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoActivityRepository.test.js","sourceRoot":"","sources":["../../../../src/__tests__/repositories/MongoActivityRepository.test.ts"],"names":[],"mappings":"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"}
@@ -12,27 +12,17 @@ describe('MongoAgentChatRepository', () => {
12
12
  const chatData = createTestChat({
13
13
  title: 'New Chat',
14
14
  contextKey: 'test-context',
15
- userId: 'user-123',
15
+ tenants: { userId: 'user-123' },
16
16
  });
17
17
  const chat = await repository.create(chatData);
18
18
  expect(chat).toBeDefined();
19
19
  expect(chat.id).toBeDefined();
20
20
  expect(chat.title).toBe('New Chat');
21
21
  expect(chat.contextKey).toBe('test-context');
22
- expect(chat.userId).toBe('user-123');
22
+ expect(chat.tenants).toEqual({ userId: 'user-123' });
23
23
  expect(chat.createdAt).toBeDefined();
24
24
  expect(chat.updatedAt).toBeDefined();
25
25
  });
26
- it('should create a guest chat (no userId)', async () => {
27
- const chatData = createTestChat({
28
- title: 'Guest Chat',
29
- contextKey: 'test-context',
30
- });
31
- delete chatData.userId;
32
- const chat = await repository.create(chatData);
33
- expect(chat).toBeDefined();
34
- expect(chat.userId).toBeUndefined();
35
- });
36
26
  it('should include metadata when provided', async () => {
37
27
  const chatData = createTestChat({
38
28
  metadata: { key: 'value', count: 42 },
@@ -77,11 +67,11 @@ describe('MongoAgentChatRepository', () => {
77
67
  expect(chats).toHaveLength(1);
78
68
  expect(chats[0].id).toBe(created.id);
79
69
  });
80
- it('should find chats by userId', async () => {
81
- await repository.create(createTestChat({ userId: 'user-1' }));
82
- await repository.create(createTestChat({ userId: 'user-1' }));
83
- await repository.create(createTestChat({ userId: 'user-2' }));
84
- const chats = await repository.find({ userId: 'user-1' });
70
+ it('should find chats by tenants', async () => {
71
+ await repository.create(createTestChat({ tenants: { userId: 'user-1' } }));
72
+ await repository.create(createTestChat({ tenants: { userId: 'user-1' } }));
73
+ await repository.create(createTestChat({ tenants: { userId: 'user-2' } }));
74
+ const chats = await repository.find({ tenants: { userId: 'user-1' } });
85
75
  expect(chats).toHaveLength(2);
86
76
  });
87
77
  });
@@ -158,52 +148,6 @@ describe('MongoAgentChatRepository', () => {
158
148
  expect(count).toBe(2);
159
149
  });
160
150
  });
161
- describe('findByUserId', () => {
162
- it('should find all chats for a user', async () => {
163
- await repository.create(createTestChat({ userId: 'user-1' }));
164
- await repository.create(createTestChat({ userId: 'user-1' }));
165
- await repository.create(createTestChat({ userId: 'user-2' }));
166
- const chats = await repository.findByUserId('user-1');
167
- expect(chats).toHaveLength(2);
168
- expect(chats.every(c => c.userId === 'user-1')).toBe(true);
169
- });
170
- it('should return empty array if user has no chats', async () => {
171
- const chats = await repository.findByUserId('non-existent');
172
- expect(chats).toHaveLength(0);
173
- });
174
- });
175
- describe('findByContextKey', () => {
176
- it('should find all chats for a context key', async () => {
177
- await repository.create(createTestChat({ contextKey: 'ctx-1' }));
178
- await repository.create(createTestChat({ contextKey: 'ctx-1' }));
179
- await repository.create(createTestChat({ contextKey: 'ctx-2' }));
180
- const chats = await repository.findByContextKey('ctx-1');
181
- expect(chats).toHaveLength(2);
182
- expect(chats.every(c => c.contextKey === 'ctx-1')).toBe(true);
183
- });
184
- });
185
- describe('findByUserIdAndContextKey', () => {
186
- it('should find chats matching both userId and contextKey', async () => {
187
- await repository.create(createTestChat({ userId: 'user-1', contextKey: 'ctx-1' }));
188
- await repository.create(createTestChat({ userId: 'user-1', contextKey: 'ctx-1' }));
189
- await repository.create(createTestChat({ userId: 'user-1', contextKey: 'ctx-2' }));
190
- await repository.create(createTestChat({ userId: 'user-2', contextKey: 'ctx-1' }));
191
- const chats = await repository.findByUserIdAndContextKey('user-1', 'ctx-1');
192
- expect(chats).toHaveLength(2);
193
- expect(chats.every(c => c.userId === 'user-1' && c.contextKey === 'ctx-1')).toBe(true);
194
- });
195
- });
196
- describe('findGuestChatsByContextKey', () => {
197
- it('should find guest chats (no userId) for a context key', async () => {
198
- await repository.create(createTestChat({ contextKey: 'ctx-1' })); // guest
199
- await repository.create(createTestChat({ contextKey: 'ctx-1' })); // guest
200
- await repository.create(createTestChat({ userId: 'user-1', contextKey: 'ctx-1' }));
201
- await repository.create(createTestChat({ contextKey: 'ctx-2' })); // guest
202
- const chats = await repository.findGuestChatsByContextKey('ctx-1');
203
- expect(chats).toHaveLength(2);
204
- expect(chats.every(c => !c.userId && c.contextKey === 'ctx-1')).toBe(true);
205
- });
206
- });
207
151
  describe('updateTitle', () => {
208
152
  it('should update chat title', async () => {
209
153
  const created = await repository.create(createTestChat({ title: 'Old Title' }));
@@ -221,12 +165,12 @@ describe('MongoAgentChatRepository', () => {
221
165
  });
222
166
  describe('deleteByUserId', () => {
223
167
  it('should delete all chats for a user', async () => {
224
- await repository.create(createTestChat({ userId: 'user-1' }));
225
- await repository.create(createTestChat({ userId: 'user-1' }));
226
- await repository.create(createTestChat({ userId: 'user-2' }));
168
+ await repository.create(createTestChat({ tenants: { userId: 'user-1' } }));
169
+ await repository.create(createTestChat({ tenants: { userId: 'user-1' } }));
170
+ await repository.create(createTestChat({ tenants: { userId: 'user-2' } }));
227
171
  const deletedCount = await repository.deleteByUserId('user-1');
228
172
  expect(deletedCount).toBe(2);
229
- const remaining = await repository.findByUserId('user-1');
173
+ const remaining = await repository.find({ tenants: { userId: 'user-1' } });
230
174
  expect(remaining).toHaveLength(0);
231
175
  });
232
176
  it('should return 0 if user has no chats', async () => {
@@ -241,7 +185,7 @@ describe('MongoAgentChatRepository', () => {
241
185
  await repository.create(createTestChat({ contextKey: 'ctx-2' }));
242
186
  const deletedCount = await repository.deleteByContextKey('ctx-1');
243
187
  expect(deletedCount).toBe(2);
244
- const remaining = await repository.findByContextKey('ctx-1');
188
+ const remaining = await repository.find({ contextKey: 'ctx-1' });
245
189
  expect(remaining).toHaveLength(0);
246
190
  });
247
191
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MongoAgentChatRepository.test.js","sourceRoot":"","sources":["../../../../src/__tests__/repositories/MongoAgentChatRepository.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MongoAgentChatRepository.test.js","sourceRoot":"","sources":["../../../../src/__tests__/repositories/MongoAgentChatRepository.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MongoAgentConfigRepository.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoAgentConfigRepository.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/repositories/MongoAgentConfigRepository.test.ts"],"names":[],"mappings":""}