@oneuptime/common 7.0.3010 → 7.0.3018

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 (86) hide show
  1. package/Models/DatabaseModels/CopilotAction.ts +232 -38
  2. package/Models/DatabaseModels/CopilotActionTypePriority.ts +325 -0
  3. package/Models/DatabaseModels/Index.ts +2 -0
  4. package/Server/API/CopilotActionAPI.ts +69 -7
  5. package/Server/API/StatusAPI.ts +0 -2
  6. package/Server/Infrastructure/Postgres/SchemaMigrations/1725291476867-MigrationName.ts +51 -0
  7. package/Server/Infrastructure/Postgres/SchemaMigrations/1725357719072-MigrationName.ts +23 -0
  8. package/Server/Infrastructure/Postgres/SchemaMigrations/1725360199561-MigrationName.ts +13 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/1725379949648-MigrationName.ts +17 -0
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
  11. package/Server/Services/CopilotActionTypePriorityService.ts +66 -0
  12. package/Server/Services/Index.ts +2 -0
  13. package/Server/Types/Workflow/Components/Email.ts +32 -25
  14. package/Server/Utils/CodeRepository/CodeRepository.ts +10 -14
  15. package/Server/Utils/CodeRepository/CodeRepositoryFile.ts +0 -7
  16. package/Types/Copilot/CopilotActionProps/DirectoryActionProp.ts +3 -0
  17. package/Types/Copilot/CopilotActionProps/ExceptionActionProp.ts +4 -0
  18. package/Types/Copilot/CopilotActionProps/FileActionProp.ts +5 -0
  19. package/Types/Copilot/CopilotActionProps/FunctionActionProp.ts +5 -0
  20. package/Types/Copilot/CopilotActionProps/Index.ts +96 -0
  21. package/Types/Copilot/CopilotActionProps/SpanActionProp.ts +4 -0
  22. package/Types/Copilot/CopilotActionStatus.ts +109 -1
  23. package/Types/Copilot/CopilotActionType.ts +203 -1
  24. package/Types/Icon/IconProp.ts +1 -0
  25. package/Types/Permission.ts +26 -0
  26. package/Types/Workflow/Components/Email.ts +4 -4
  27. package/UI/Components/Alerts/Alert.tsx +1 -1
  28. package/UI/Components/Icon/Icon.tsx +8 -0
  29. package/UI/Components/Workflow/WorkflowStatus.tsx +2 -2
  30. package/build/dist/Models/DatabaseModels/CopilotAction.js +237 -40
  31. package/build/dist/Models/DatabaseModels/CopilotAction.js.map +1 -1
  32. package/build/dist/Models/DatabaseModels/CopilotActionTypePriority.js +343 -0
  33. package/build/dist/Models/DatabaseModels/CopilotActionTypePriority.js.map +1 -0
  34. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  35. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  36. package/build/dist/Server/API/CopilotActionAPI.js +56 -9
  37. package/build/dist/Server/API/CopilotActionAPI.js.map +1 -1
  38. package/build/dist/Server/API/StatusAPI.js +0 -1
  39. package/build/dist/Server/API/StatusAPI.js.map +1 -1
  40. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725291476867-MigrationName.js +24 -0
  41. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725291476867-MigrationName.js.map +1 -0
  42. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725357719072-MigrationName.js +14 -0
  43. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725357719072-MigrationName.js.map +1 -0
  44. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725360199561-MigrationName.js +12 -0
  45. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725360199561-MigrationName.js.map +1 -0
  46. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725379949648-MigrationName.js +12 -0
  47. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1725379949648-MigrationName.js.map +1 -0
  48. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
  49. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  50. package/build/dist/Server/Services/CopilotActionTypePriorityService.js +45 -0
  51. package/build/dist/Server/Services/CopilotActionTypePriorityService.js.map +1 -0
  52. package/build/dist/Server/Services/Index.js +2 -0
  53. package/build/dist/Server/Services/Index.js.map +1 -1
  54. package/build/dist/Server/Types/Workflow/Components/Email.js +26 -27
  55. package/build/dist/Server/Types/Workflow/Components/Email.js.map +1 -1
  56. package/build/dist/Server/Utils/CodeRepository/CodeRepository.js +5 -13
  57. package/build/dist/Server/Utils/CodeRepository/CodeRepository.js.map +1 -1
  58. package/build/dist/Types/Copilot/CopilotActionProps/DirectoryActionProp.js +2 -0
  59. package/build/dist/Types/Copilot/CopilotActionProps/DirectoryActionProp.js.map +1 -0
  60. package/build/dist/Types/Copilot/CopilotActionProps/ExceptionActionProp.js +2 -0
  61. package/build/dist/Types/Copilot/CopilotActionProps/ExceptionActionProp.js.map +1 -0
  62. package/build/dist/Types/Copilot/CopilotActionProps/FileActionProp.js +2 -0
  63. package/build/dist/Types/Copilot/CopilotActionProps/FileActionProp.js.map +1 -0
  64. package/build/dist/Types/Copilot/CopilotActionProps/FunctionActionProp.js +2 -0
  65. package/build/dist/Types/Copilot/CopilotActionProps/FunctionActionProp.js.map +1 -0
  66. package/build/dist/Types/Copilot/CopilotActionProps/Index.js +64 -0
  67. package/build/dist/Types/Copilot/CopilotActionProps/Index.js.map +1 -0
  68. package/build/dist/Types/Copilot/CopilotActionProps/SpanActionProp.js +2 -0
  69. package/build/dist/Types/Copilot/CopilotActionProps/SpanActionProp.js.map +1 -0
  70. package/build/dist/Types/Copilot/CopilotActionStatus.js +89 -0
  71. package/build/dist/Types/Copilot/CopilotActionStatus.js.map +1 -1
  72. package/build/dist/Types/Copilot/CopilotActionType.js +165 -1
  73. package/build/dist/Types/Copilot/CopilotActionType.js.map +1 -1
  74. package/build/dist/Types/Icon/IconProp.js +1 -0
  75. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  76. package/build/dist/Types/Permission.js +24 -0
  77. package/build/dist/Types/Permission.js.map +1 -1
  78. package/build/dist/Types/Workflow/Components/Email.js +4 -4
  79. package/build/dist/Types/Workflow/Components/Email.js.map +1 -1
  80. package/build/dist/UI/Components/Alerts/Alert.js +1 -1
  81. package/build/dist/UI/Components/Alerts/Alert.js.map +1 -1
  82. package/build/dist/UI/Components/Icon/Icon.js +3 -0
  83. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  84. package/build/dist/UI/Components/Workflow/WorkflowStatus.js +2 -2
  85. package/build/dist/UI/Components/Workflow/WorkflowStatus.js.map +1 -1
  86. package/package.json +2 -2
@@ -23,20 +23,36 @@ import ObjectID from "../../Types/ObjectID";
23
23
  import Permission from "../../Types/Permission";
24
24
  import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
25
25
  import CopilotPullRequest from "./CopilotPullRequest";
26
+ import CopilotActionProp from "../../Types/Copilot/CopilotActionProps/Index";
26
27
 
27
28
  @CanAccessIfCanReadOn("codeRepository")
28
29
  @EnableDocumentation()
29
30
  @TenantColumn("projectId")
30
31
  @TableAccessControl({
31
- create: [],
32
+ create: [
33
+ Permission.ProjectOwner,
34
+ Permission.ProjectAdmin,
35
+ Permission.ProjectMember,
36
+ Permission.CreateCopilotAction,
37
+ ],
32
38
  read: [
33
39
  Permission.ProjectOwner,
34
40
  Permission.ProjectAdmin,
35
41
  Permission.ProjectMember,
36
42
  Permission.ReadCopilotAction,
37
43
  ],
38
- delete: [],
39
- update: [],
44
+ delete: [
45
+ Permission.ProjectOwner,
46
+ Permission.ProjectAdmin,
47
+ Permission.ProjectMember,
48
+ Permission.DeleteCopilotAction,
49
+ ],
50
+ update: [
51
+ Permission.ProjectOwner,
52
+ Permission.ProjectAdmin,
53
+ Permission.ProjectMember,
54
+ Permission.EditCopilotAction,
55
+ ],
40
56
  })
41
57
  @EnableWorkflow({
42
58
  create: true,
@@ -57,7 +73,12 @@ import CopilotPullRequest from "./CopilotPullRequest";
57
73
  })
58
74
  export default class CopilotAction extends BaseModel {
59
75
  @ColumnAccessControl({
60
- create: [],
76
+ create: [
77
+ Permission.ProjectOwner,
78
+ Permission.ProjectAdmin,
79
+ Permission.ProjectMember,
80
+ Permission.CreateCopilotAction,
81
+ ],
61
82
  read: [
62
83
  Permission.ProjectOwner,
63
84
  Permission.ProjectAdmin,
@@ -88,7 +109,12 @@ export default class CopilotAction extends BaseModel {
88
109
  public project?: Project = undefined;
89
110
 
90
111
  @ColumnAccessControl({
91
- create: [],
112
+ create: [
113
+ Permission.ProjectOwner,
114
+ Permission.ProjectAdmin,
115
+ Permission.ProjectMember,
116
+ Permission.CreateCopilotAction,
117
+ ],
92
118
  read: [
93
119
  Permission.ProjectOwner,
94
120
  Permission.ProjectAdmin,
@@ -113,7 +139,12 @@ export default class CopilotAction extends BaseModel {
113
139
  public projectId?: ObjectID = undefined;
114
140
 
115
141
  @ColumnAccessControl({
116
- create: [],
142
+ create: [
143
+ Permission.ProjectOwner,
144
+ Permission.ProjectAdmin,
145
+ Permission.ProjectMember,
146
+ Permission.CreateCopilotAction,
147
+ ],
117
148
  read: [
118
149
  Permission.ProjectOwner,
119
150
  Permission.ProjectAdmin,
@@ -145,7 +176,12 @@ export default class CopilotAction extends BaseModel {
145
176
  public codeRepository?: CodeRepository = undefined;
146
177
 
147
178
  @ColumnAccessControl({
148
- create: [],
179
+ create: [
180
+ Permission.ProjectOwner,
181
+ Permission.ProjectAdmin,
182
+ Permission.ProjectMember,
183
+ Permission.CreateCopilotAction,
184
+ ],
149
185
  read: [
150
186
  Permission.ProjectOwner,
151
187
  Permission.ProjectAdmin,
@@ -171,7 +207,12 @@ export default class CopilotAction extends BaseModel {
171
207
  public codeRepositoryId?: ObjectID = undefined;
172
208
 
173
209
  @ColumnAccessControl({
174
- create: [],
210
+ create: [
211
+ Permission.ProjectOwner,
212
+ Permission.ProjectAdmin,
213
+ Permission.ProjectMember,
214
+ Permission.CreateCopilotAction,
215
+ ],
175
216
  read: [
176
217
  Permission.ProjectOwner,
177
218
  Permission.ProjectAdmin,
@@ -203,7 +244,12 @@ export default class CopilotAction extends BaseModel {
203
244
  public createdByUser?: User = undefined;
204
245
 
205
246
  @ColumnAccessControl({
206
- create: [],
247
+ create: [
248
+ Permission.ProjectOwner,
249
+ Permission.ProjectAdmin,
250
+ Permission.ProjectMember,
251
+ Permission.CreateCopilotAction,
252
+ ],
207
253
  read: [
208
254
  Permission.ProjectOwner,
209
255
  Permission.ProjectAdmin,
@@ -226,7 +272,12 @@ export default class CopilotAction extends BaseModel {
226
272
  public createdByUserId?: ObjectID = undefined;
227
273
 
228
274
  @ColumnAccessControl({
229
- create: [],
275
+ create: [
276
+ Permission.ProjectOwner,
277
+ Permission.ProjectAdmin,
278
+ Permission.ProjectMember,
279
+ Permission.CreateCopilotAction,
280
+ ],
230
281
  read: [
231
282
  Permission.ProjectOwner,
232
283
  Permission.ProjectAdmin,
@@ -258,7 +309,12 @@ export default class CopilotAction extends BaseModel {
258
309
  public deletedByUser?: User = undefined;
259
310
 
260
311
  @ColumnAccessControl({
261
- create: [],
312
+ create: [
313
+ Permission.ProjectOwner,
314
+ Permission.ProjectAdmin,
315
+ Permission.ProjectMember,
316
+ Permission.CreateCopilotAction,
317
+ ],
262
318
  read: [
263
319
  Permission.ProjectOwner,
264
320
  Permission.ProjectAdmin,
@@ -281,29 +337,12 @@ export default class CopilotAction extends BaseModel {
281
337
  public deletedByUserId?: ObjectID = undefined;
282
338
 
283
339
  @ColumnAccessControl({
284
- create: [],
285
- read: [
340
+ create: [
286
341
  Permission.ProjectOwner,
287
342
  Permission.ProjectAdmin,
288
343
  Permission.ProjectMember,
289
- Permission.ReadCopilotAction,
344
+ Permission.CreateCopilotAction,
290
345
  ],
291
- update: [],
292
- })
293
- @TableColumn({
294
- type: TableColumnType.LongText,
295
- title: "File Path in Code Repository",
296
- required: true,
297
- description: "File Path in Code Repository where this event was triggered",
298
- })
299
- @Column({
300
- type: ColumnType.LongText,
301
- nullable: false,
302
- })
303
- public filePath?: string = undefined;
304
-
305
- @ColumnAccessControl({
306
- create: [],
307
346
  read: [
308
347
  Permission.ProjectOwner,
309
348
  Permission.ProjectAdmin,
@@ -325,7 +364,12 @@ export default class CopilotAction extends BaseModel {
325
364
  public commitHash?: string = undefined;
326
365
 
327
366
  @ColumnAccessControl({
328
- create: [],
367
+ create: [
368
+ Permission.ProjectOwner,
369
+ Permission.ProjectAdmin,
370
+ Permission.ProjectMember,
371
+ Permission.CreateCopilotAction,
372
+ ],
329
373
  read: [
330
374
  Permission.ProjectOwner,
331
375
  Permission.ProjectAdmin,
@@ -347,7 +391,12 @@ export default class CopilotAction extends BaseModel {
347
391
  public copilotActionType?: CopilotActionType = undefined;
348
392
 
349
393
  @ColumnAccessControl({
350
- create: [],
394
+ create: [
395
+ Permission.ProjectOwner,
396
+ Permission.ProjectAdmin,
397
+ Permission.ProjectMember,
398
+ Permission.CreateCopilotAction,
399
+ ],
351
400
  read: [
352
401
  Permission.ProjectOwner,
353
402
  Permission.ProjectAdmin,
@@ -379,7 +428,12 @@ export default class CopilotAction extends BaseModel {
379
428
  public serviceCatalog?: ServiceCatalog = undefined;
380
429
 
381
430
  @ColumnAccessControl({
382
- create: [],
431
+ create: [
432
+ Permission.ProjectOwner,
433
+ Permission.ProjectAdmin,
434
+ Permission.ProjectMember,
435
+ Permission.CreateCopilotAction,
436
+ ],
383
437
  read: [
384
438
  Permission.ProjectOwner,
385
439
  Permission.ProjectAdmin,
@@ -405,7 +459,12 @@ export default class CopilotAction extends BaseModel {
405
459
  public serviceCatalogId?: ObjectID = undefined;
406
460
 
407
461
  @ColumnAccessControl({
408
- create: [],
462
+ create: [
463
+ Permission.ProjectOwner,
464
+ Permission.ProjectAdmin,
465
+ Permission.ProjectMember,
466
+ Permission.CreateCopilotAction,
467
+ ],
409
468
  read: [
410
469
  Permission.ProjectOwner,
411
470
  Permission.ProjectAdmin,
@@ -437,7 +496,12 @@ export default class CopilotAction extends BaseModel {
437
496
  public serviceRepository?: ServiceCopilotCodeRepository = undefined;
438
497
 
439
498
  @ColumnAccessControl({
440
- create: [],
499
+ create: [
500
+ Permission.ProjectOwner,
501
+ Permission.ProjectAdmin,
502
+ Permission.ProjectMember,
503
+ Permission.CreateCopilotAction,
504
+ ],
441
505
  read: [
442
506
  Permission.ProjectOwner,
443
507
  Permission.ProjectAdmin,
@@ -463,7 +527,12 @@ export default class CopilotAction extends BaseModel {
463
527
  public serviceRepositoryId?: ObjectID = undefined;
464
528
 
465
529
  @ColumnAccessControl({
466
- create: [],
530
+ create: [
531
+ Permission.ProjectOwner,
532
+ Permission.ProjectAdmin,
533
+ Permission.ProjectMember,
534
+ Permission.CreateCopilotAction,
535
+ ],
467
536
  read: [
468
537
  Permission.ProjectOwner,
469
538
  Permission.ProjectAdmin,
@@ -496,7 +565,12 @@ export default class CopilotAction extends BaseModel {
496
565
  public copilotPullRequest?: CopilotPullRequest = undefined;
497
566
 
498
567
  @ColumnAccessControl({
499
- create: [],
568
+ create: [
569
+ Permission.ProjectOwner,
570
+ Permission.ProjectAdmin,
571
+ Permission.ProjectMember,
572
+ Permission.CreateCopilotAction,
573
+ ],
500
574
  read: [
501
575
  Permission.ProjectOwner,
502
576
  Permission.ProjectAdmin,
@@ -522,7 +596,12 @@ export default class CopilotAction extends BaseModel {
522
596
  public copilotPullRequestId?: ObjectID = undefined;
523
597
 
524
598
  @ColumnAccessControl({
525
- create: [],
599
+ create: [
600
+ Permission.ProjectOwner,
601
+ Permission.ProjectAdmin,
602
+ Permission.ProjectMember,
603
+ Permission.CreateCopilotAction,
604
+ ],
526
605
  read: [
527
606
  Permission.ProjectOwner,
528
607
  Permission.ProjectAdmin,
@@ -542,4 +621,119 @@ export default class CopilotAction extends BaseModel {
542
621
  nullable: false,
543
622
  })
544
623
  public copilotActionStatus?: CopilotActionStatus = undefined;
624
+
625
+ @ColumnAccessControl({
626
+ create: [
627
+ Permission.ProjectOwner,
628
+ Permission.ProjectAdmin,
629
+ Permission.ProjectMember,
630
+ Permission.CreateCopilotAction,
631
+ ],
632
+ read: [
633
+ Permission.ProjectOwner,
634
+ Permission.ProjectAdmin,
635
+ Permission.ProjectMember,
636
+ Permission.ReadCopilotAction,
637
+ ],
638
+ update: [],
639
+ })
640
+ @TableColumn({
641
+ type: TableColumnType.JSON,
642
+ title: "Action Props",
643
+ description:
644
+ "Action Props of Copilot Event that was triggered for this file in Code Repository",
645
+ })
646
+ @Column({
647
+ type: ColumnType.JSON,
648
+ nullable: true,
649
+ })
650
+ public copilotActionProp?: CopilotActionProp = undefined;
651
+
652
+ @ColumnAccessControl({
653
+ create: [
654
+ Permission.ProjectOwner,
655
+ Permission.ProjectAdmin,
656
+ Permission.ProjectMember,
657
+ Permission.CreateCopilotAction,
658
+ ],
659
+ read: [
660
+ Permission.ProjectOwner,
661
+ Permission.ProjectAdmin,
662
+ Permission.ProjectMember,
663
+ Permission.ReadCopilotAction,
664
+ ],
665
+ update: [],
666
+ })
667
+ @TableColumn({
668
+ type: TableColumnType.LongText,
669
+ title: "Status Message",
670
+ description:
671
+ "Status Message of Copilot Event that was triggered for this file in Code Repository",
672
+ })
673
+ @Column({
674
+ type: ColumnType.VeryLongText,
675
+ nullable: true,
676
+ })
677
+ public statusMessage?: string = undefined;
678
+
679
+ @ColumnAccessControl({
680
+ create: [
681
+ Permission.ProjectOwner,
682
+ Permission.ProjectAdmin,
683
+ Permission.ProjectMember,
684
+ Permission.CreateCopilotAction,
685
+ ],
686
+ read: [
687
+ Permission.ProjectOwner,
688
+ Permission.ProjectAdmin,
689
+ Permission.ProjectMember,
690
+ Permission.ReadCopilotAction,
691
+ ],
692
+ update: [],
693
+ })
694
+ @TableColumn({
695
+ required: false,
696
+ type: TableColumnType.VeryLongText,
697
+ title: "Logs",
698
+ description: "Logs",
699
+ })
700
+ @Column({
701
+ nullable: true,
702
+ type: ColumnType.VeryLongText,
703
+ })
704
+ public logs?: string = undefined;
705
+
706
+ // When this is true. Copilot tries to run this action as soon as possible.
707
+ @ColumnAccessControl({
708
+ create: [
709
+ Permission.ProjectOwner,
710
+ Permission.ProjectAdmin,
711
+ Permission.ProjectMember,
712
+ Permission.CreateCopilotAction,
713
+ ],
714
+ read: [
715
+ Permission.ProjectOwner,
716
+ Permission.ProjectAdmin,
717
+ Permission.ProjectMember,
718
+ Permission.ReadCopilotAction,
719
+ ],
720
+ update: [
721
+ Permission.ProjectOwner,
722
+ Permission.ProjectAdmin,
723
+ Permission.ProjectMember,
724
+ Permission.EditCopilotAction,
725
+ ],
726
+ })
727
+ @TableColumn({
728
+ required: false,
729
+ type: TableColumnType.Boolean,
730
+ title: "Is Priority",
731
+ description: "Is Priority",
732
+ })
733
+ @Column({
734
+ nullable: false,
735
+ type: ColumnType.Boolean,
736
+ default: false,
737
+ })
738
+ public isPriority?: string = undefined;
545
739
  }