@objectstack/platform-objects 13.0.0 → 14.5.0

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 (41) hide show
  1. package/dist/apps/index.d.mts +1 -1
  2. package/dist/apps/index.d.ts +1 -1
  3. package/dist/apps/index.js +525 -1200
  4. package/dist/apps/index.js.map +1 -1
  5. package/dist/apps/index.mjs +525 -1200
  6. package/dist/apps/index.mjs.map +1 -1
  7. package/dist/audit/index.d.mts +262 -10
  8. package/dist/audit/index.d.ts +262 -10
  9. package/dist/audit/index.js +14 -0
  10. package/dist/audit/index.js.map +1 -1
  11. package/dist/audit/index.mjs +14 -0
  12. package/dist/audit/index.mjs.map +1 -1
  13. package/dist/identity/index.d.mts +1403 -236
  14. package/dist/identity/index.d.ts +1403 -236
  15. package/dist/identity/index.js +177 -17
  16. package/dist/identity/index.js.map +1 -1
  17. package/dist/identity/index.mjs +177 -17
  18. package/dist/identity/index.mjs.map +1 -1
  19. package/dist/index.d.mts +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.js +1878 -1736
  22. package/dist/index.js.map +1 -1
  23. package/dist/index.mjs +1878 -1737
  24. package/dist/index.mjs.map +1 -1
  25. package/dist/metadata-translations/index.js +1020 -488
  26. package/dist/metadata-translations/index.js.map +1 -1
  27. package/dist/metadata-translations/index.mjs +1020 -488
  28. package/dist/metadata-translations/index.mjs.map +1 -1
  29. package/dist/pages/index.d.mts +34 -3
  30. package/dist/pages/index.d.ts +34 -3
  31. package/dist/pages/index.js +111 -0
  32. package/dist/pages/index.js.map +1 -1
  33. package/dist/pages/index.mjs +111 -1
  34. package/dist/pages/index.mjs.map +1 -1
  35. package/dist/plugin.js +1564 -1707
  36. package/dist/plugin.js.map +1 -1
  37. package/dist/plugin.mjs +1564 -1707
  38. package/dist/plugin.mjs.map +1 -1
  39. package/dist/system/index.d.mts +75 -3
  40. package/dist/system/index.d.ts +75 -3
  41. package/package.json +3 -3
@@ -336,6 +336,30 @@ declare const SysNotification: Omit<{
336
336
  versionField: string;
337
337
  retentionDays?: number | undefined;
338
338
  } | undefined;
339
+ lifecycle?: {
340
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
341
+ retention?: {
342
+ maxAge: string;
343
+ onlyWhen?: Record<string, string | number | boolean | {
344
+ $in: (string | number)[];
345
+ }> | undefined;
346
+ } | undefined;
347
+ ttl?: {
348
+ field: string;
349
+ expireAfter: string;
350
+ } | undefined;
351
+ storage?: {
352
+ strategy: "rotation";
353
+ shards: number;
354
+ unit: "day" | "week" | "month";
355
+ } | undefined;
356
+ archive?: {
357
+ after: string;
358
+ to: string;
359
+ keep?: string | undefined;
360
+ } | undefined;
361
+ reclaim?: boolean | undefined;
362
+ } | undefined;
339
363
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
340
364
  activityMilestones?: {
341
365
  field: string;
@@ -493,7 +517,7 @@ declare const SysNotification: Omit<{
493
517
  timeline?: {
494
518
  startDateField: string;
495
519
  titleField: string;
496
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
520
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
497
521
  endDateField?: string | undefined;
498
522
  groupByField?: string | undefined;
499
523
  colorField?: string | undefined;
@@ -800,6 +824,12 @@ declare const SysNotification: Omit<{
800
824
  readonly icon: "bell";
801
825
  readonly isSystem: true;
802
826
  readonly managedBy: "system";
827
+ readonly lifecycle: {
828
+ readonly class: "telemetry";
829
+ readonly retention: {
830
+ readonly maxAge: "90d";
831
+ };
832
+ };
803
833
  readonly description: "Notification events — one row per emit() (ADR-0030 Layer 2 ingress)";
804
834
  readonly displayNameField: "topic";
805
835
  readonly nameField: "topic";
@@ -2844,6 +2874,30 @@ declare const SysAttachment: Omit<{
2844
2874
  versionField: string;
2845
2875
  retentionDays?: number | undefined;
2846
2876
  } | undefined;
2877
+ lifecycle?: {
2878
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
2879
+ retention?: {
2880
+ maxAge: string;
2881
+ onlyWhen?: Record<string, string | number | boolean | {
2882
+ $in: (string | number)[];
2883
+ }> | undefined;
2884
+ } | undefined;
2885
+ ttl?: {
2886
+ field: string;
2887
+ expireAfter: string;
2888
+ } | undefined;
2889
+ storage?: {
2890
+ strategy: "rotation";
2891
+ shards: number;
2892
+ unit: "day" | "week" | "month";
2893
+ } | undefined;
2894
+ archive?: {
2895
+ after: string;
2896
+ to: string;
2897
+ keep?: string | undefined;
2898
+ } | undefined;
2899
+ reclaim?: boolean | undefined;
2900
+ } | undefined;
2847
2901
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
2848
2902
  activityMilestones?: {
2849
2903
  field: string;
@@ -3001,7 +3055,7 @@ declare const SysAttachment: Omit<{
3001
3055
  timeline?: {
3002
3056
  startDateField: string;
3003
3057
  titleField: string;
3004
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
3058
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
3005
3059
  endDateField?: string | undefined;
3006
3060
  groupByField?: string | undefined;
3007
3061
  colorField?: string | undefined;
@@ -6038,6 +6092,30 @@ declare const SysEmail: Omit<{
6038
6092
  versionField: string;
6039
6093
  retentionDays?: number | undefined;
6040
6094
  } | undefined;
6095
+ lifecycle?: {
6096
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
6097
+ retention?: {
6098
+ maxAge: string;
6099
+ onlyWhen?: Record<string, string | number | boolean | {
6100
+ $in: (string | number)[];
6101
+ }> | undefined;
6102
+ } | undefined;
6103
+ ttl?: {
6104
+ field: string;
6105
+ expireAfter: string;
6106
+ } | undefined;
6107
+ storage?: {
6108
+ strategy: "rotation";
6109
+ shards: number;
6110
+ unit: "day" | "week" | "month";
6111
+ } | undefined;
6112
+ archive?: {
6113
+ after: string;
6114
+ to: string;
6115
+ keep?: string | undefined;
6116
+ } | undefined;
6117
+ reclaim?: boolean | undefined;
6118
+ } | undefined;
6041
6119
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
6042
6120
  activityMilestones?: {
6043
6121
  field: string;
@@ -6195,7 +6273,7 @@ declare const SysEmail: Omit<{
6195
6273
  timeline?: {
6196
6274
  startDateField: string;
6197
6275
  titleField: string;
6198
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
6276
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
6199
6277
  endDateField?: string | undefined;
6200
6278
  groupByField?: string | undefined;
6201
6279
  colorField?: string | undefined;
@@ -10322,6 +10400,30 @@ declare const SysEmailTemplate: Omit<{
10322
10400
  versionField: string;
10323
10401
  retentionDays?: number | undefined;
10324
10402
  } | undefined;
10403
+ lifecycle?: {
10404
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
10405
+ retention?: {
10406
+ maxAge: string;
10407
+ onlyWhen?: Record<string, string | number | boolean | {
10408
+ $in: (string | number)[];
10409
+ }> | undefined;
10410
+ } | undefined;
10411
+ ttl?: {
10412
+ field: string;
10413
+ expireAfter: string;
10414
+ } | undefined;
10415
+ storage?: {
10416
+ strategy: "rotation";
10417
+ shards: number;
10418
+ unit: "day" | "week" | "month";
10419
+ } | undefined;
10420
+ archive?: {
10421
+ after: string;
10422
+ to: string;
10423
+ keep?: string | undefined;
10424
+ } | undefined;
10425
+ reclaim?: boolean | undefined;
10426
+ } | undefined;
10325
10427
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
10326
10428
  activityMilestones?: {
10327
10429
  field: string;
@@ -10479,7 +10581,7 @@ declare const SysEmailTemplate: Omit<{
10479
10581
  timeline?: {
10480
10582
  startDateField: string;
10481
10583
  titleField: string;
10482
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
10584
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
10483
10585
  endDateField?: string | undefined;
10484
10586
  groupByField?: string | undefined;
10485
10587
  colorField?: string | undefined;
@@ -14254,6 +14356,30 @@ declare const SysSavedReport: Omit<{
14254
14356
  versionField: string;
14255
14357
  retentionDays?: number | undefined;
14256
14358
  } | undefined;
14359
+ lifecycle?: {
14360
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
14361
+ retention?: {
14362
+ maxAge: string;
14363
+ onlyWhen?: Record<string, string | number | boolean | {
14364
+ $in: (string | number)[];
14365
+ }> | undefined;
14366
+ } | undefined;
14367
+ ttl?: {
14368
+ field: string;
14369
+ expireAfter: string;
14370
+ } | undefined;
14371
+ storage?: {
14372
+ strategy: "rotation";
14373
+ shards: number;
14374
+ unit: "day" | "week" | "month";
14375
+ } | undefined;
14376
+ archive?: {
14377
+ after: string;
14378
+ to: string;
14379
+ keep?: string | undefined;
14380
+ } | undefined;
14381
+ reclaim?: boolean | undefined;
14382
+ } | undefined;
14257
14383
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
14258
14384
  activityMilestones?: {
14259
14385
  field: string;
@@ -14411,7 +14537,7 @@ declare const SysSavedReport: Omit<{
14411
14537
  timeline?: {
14412
14538
  startDateField: string;
14413
14539
  titleField: string;
14414
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
14540
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
14415
14541
  endDateField?: string | undefined;
14416
14542
  groupByField?: string | undefined;
14417
14543
  colorField?: string | undefined;
@@ -17087,6 +17213,30 @@ declare const SysReportSchedule: Omit<{
17087
17213
  versionField: string;
17088
17214
  retentionDays?: number | undefined;
17089
17215
  } | undefined;
17216
+ lifecycle?: {
17217
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
17218
+ retention?: {
17219
+ maxAge: string;
17220
+ onlyWhen?: Record<string, string | number | boolean | {
17221
+ $in: (string | number)[];
17222
+ }> | undefined;
17223
+ } | undefined;
17224
+ ttl?: {
17225
+ field: string;
17226
+ expireAfter: string;
17227
+ } | undefined;
17228
+ storage?: {
17229
+ strategy: "rotation";
17230
+ shards: number;
17231
+ unit: "day" | "week" | "month";
17232
+ } | undefined;
17233
+ archive?: {
17234
+ after: string;
17235
+ to: string;
17236
+ keep?: string | undefined;
17237
+ } | undefined;
17238
+ reclaim?: boolean | undefined;
17239
+ } | undefined;
17090
17240
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
17091
17241
  activityMilestones?: {
17092
17242
  field: string;
@@ -17244,7 +17394,7 @@ declare const SysReportSchedule: Omit<{
17244
17394
  timeline?: {
17245
17395
  startDateField: string;
17246
17396
  titleField: string;
17247
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
17397
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
17248
17398
  endDateField?: string | undefined;
17249
17399
  groupByField?: string | undefined;
17250
17400
  colorField?: string | undefined;
@@ -21002,6 +21152,30 @@ declare const SysJob: Omit<{
21002
21152
  versionField: string;
21003
21153
  retentionDays?: number | undefined;
21004
21154
  } | undefined;
21155
+ lifecycle?: {
21156
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
21157
+ retention?: {
21158
+ maxAge: string;
21159
+ onlyWhen?: Record<string, string | number | boolean | {
21160
+ $in: (string | number)[];
21161
+ }> | undefined;
21162
+ } | undefined;
21163
+ ttl?: {
21164
+ field: string;
21165
+ expireAfter: string;
21166
+ } | undefined;
21167
+ storage?: {
21168
+ strategy: "rotation";
21169
+ shards: number;
21170
+ unit: "day" | "week" | "month";
21171
+ } | undefined;
21172
+ archive?: {
21173
+ after: string;
21174
+ to: string;
21175
+ keep?: string | undefined;
21176
+ } | undefined;
21177
+ reclaim?: boolean | undefined;
21178
+ } | undefined;
21005
21179
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
21006
21180
  activityMilestones?: {
21007
21181
  field: string;
@@ -21159,7 +21333,7 @@ declare const SysJob: Omit<{
21159
21333
  timeline?: {
21160
21334
  startDateField: string;
21161
21335
  titleField: string;
21162
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
21336
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
21163
21337
  endDateField?: string | undefined;
21164
21338
  groupByField?: string | undefined;
21165
21339
  colorField?: string | undefined;
@@ -24186,6 +24360,30 @@ declare const SysJobRun: Omit<{
24186
24360
  versionField: string;
24187
24361
  retentionDays?: number | undefined;
24188
24362
  } | undefined;
24363
+ lifecycle?: {
24364
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
24365
+ retention?: {
24366
+ maxAge: string;
24367
+ onlyWhen?: Record<string, string | number | boolean | {
24368
+ $in: (string | number)[];
24369
+ }> | undefined;
24370
+ } | undefined;
24371
+ ttl?: {
24372
+ field: string;
24373
+ expireAfter: string;
24374
+ } | undefined;
24375
+ storage?: {
24376
+ strategy: "rotation";
24377
+ shards: number;
24378
+ unit: "day" | "week" | "month";
24379
+ } | undefined;
24380
+ archive?: {
24381
+ after: string;
24382
+ to: string;
24383
+ keep?: string | undefined;
24384
+ } | undefined;
24385
+ reclaim?: boolean | undefined;
24386
+ } | undefined;
24189
24387
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
24190
24388
  activityMilestones?: {
24191
24389
  field: string;
@@ -24343,7 +24541,7 @@ declare const SysJobRun: Omit<{
24343
24541
  timeline?: {
24344
24542
  startDateField: string;
24345
24543
  titleField: string;
24346
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
24544
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
24347
24545
  endDateField?: string | undefined;
24348
24546
  groupByField?: string | undefined;
24349
24547
  colorField?: string | undefined;
@@ -24650,6 +24848,12 @@ declare const SysJobRun: Omit<{
24650
24848
  readonly icon: "play";
24651
24849
  readonly isSystem: true;
24652
24850
  readonly managedBy: "append-only";
24851
+ readonly lifecycle: {
24852
+ readonly class: "telemetry";
24853
+ readonly retention: {
24854
+ readonly maxAge: "30d";
24855
+ };
24856
+ };
24653
24857
  readonly description: "Background job execution audit trail";
24654
24858
  readonly displayNameField: "job_name";
24655
24859
  readonly nameField: "job_name";
@@ -26829,6 +27033,30 @@ declare const SysJobQueue: Omit<{
26829
27033
  versionField: string;
26830
27034
  retentionDays?: number | undefined;
26831
27035
  } | undefined;
27036
+ lifecycle?: {
27037
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
27038
+ retention?: {
27039
+ maxAge: string;
27040
+ onlyWhen?: Record<string, string | number | boolean | {
27041
+ $in: (string | number)[];
27042
+ }> | undefined;
27043
+ } | undefined;
27044
+ ttl?: {
27045
+ field: string;
27046
+ expireAfter: string;
27047
+ } | undefined;
27048
+ storage?: {
27049
+ strategy: "rotation";
27050
+ shards: number;
27051
+ unit: "day" | "week" | "month";
27052
+ } | undefined;
27053
+ archive?: {
27054
+ after: string;
27055
+ to: string;
27056
+ keep?: string | undefined;
27057
+ } | undefined;
27058
+ reclaim?: boolean | undefined;
27059
+ } | undefined;
26832
27060
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
26833
27061
  activityMilestones?: {
26834
27062
  field: string;
@@ -26986,7 +27214,7 @@ declare const SysJobQueue: Omit<{
26986
27214
  timeline?: {
26987
27215
  startDateField: string;
26988
27216
  titleField: string;
26989
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
27217
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
26990
27218
  endDateField?: string | undefined;
26991
27219
  groupByField?: string | undefined;
26992
27220
  colorField?: string | undefined;
@@ -31116,6 +31344,30 @@ declare const SysImportJob: Omit<{
31116
31344
  versionField: string;
31117
31345
  retentionDays?: number | undefined;
31118
31346
  } | undefined;
31347
+ lifecycle?: {
31348
+ class: "audit" | "record" | "telemetry" | "transient" | "event";
31349
+ retention?: {
31350
+ maxAge: string;
31351
+ onlyWhen?: Record<string, string | number | boolean | {
31352
+ $in: (string | number)[];
31353
+ }> | undefined;
31354
+ } | undefined;
31355
+ ttl?: {
31356
+ field: string;
31357
+ expireAfter: string;
31358
+ } | undefined;
31359
+ storage?: {
31360
+ strategy: "rotation";
31361
+ shards: number;
31362
+ unit: "day" | "week" | "month";
31363
+ } | undefined;
31364
+ archive?: {
31365
+ after: string;
31366
+ to: string;
31367
+ keep?: string | undefined;
31368
+ } | undefined;
31369
+ reclaim?: boolean | undefined;
31370
+ } | undefined;
31119
31371
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
31120
31372
  activityMilestones?: {
31121
31373
  field: string;
@@ -31273,7 +31525,7 @@ declare const SysImportJob: Omit<{
31273
31525
  timeline?: {
31274
31526
  startDateField: string;
31275
31527
  titleField: string;
31276
- scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
31528
+ scale: "day" | "week" | "month" | "hour" | "quarter" | "year";
31277
31529
  endDateField?: string | undefined;
31278
31530
  groupByField?: string | undefined;
31279
31531
  colorField?: string | undefined;
@@ -10,6 +10,13 @@ var SysNotification = data.ObjectSchema.create({
10
10
  icon: "bell",
11
11
  isSystem: true,
12
12
  managedBy: "system",
13
+ // ADR-0057: one 90d window across the whole notification pipeline
14
+ // (event → delivery → receipt/inbox), enforced by the LifecycleService
15
+ // (the retired NotificationRetention sweeper kept the same default).
16
+ lifecycle: {
17
+ class: "telemetry",
18
+ retention: { maxAge: "90d" }
19
+ },
13
20
  description: "Notification events \u2014 one row per emit() (ADR-0030 Layer 2 ingress)",
14
21
  displayNameField: "topic",
15
22
  nameField: "topic",
@@ -816,6 +823,13 @@ var SysJobRun = data.ObjectSchema.create({
816
823
  icon: "play",
817
824
  isSystem: true,
818
825
  managedBy: "append-only",
826
+ // ADR-0057: run history is append-only telemetry. The platform
827
+ // LifecycleService is the ONE sweeper for this window (the plugin-local
828
+ // JobRunRetention it replaced kept the same 30d default).
829
+ lifecycle: {
830
+ class: "telemetry",
831
+ retention: { maxAge: "30d" }
832
+ },
819
833
  description: "Background job execution audit trail",
820
834
  displayNameField: "job_name",
821
835
  nameField: "job_name",