@happyvertical/smrt-jobs 0.46.0 → 0.47.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.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { A as MAX_JOB_RETRIES, C as startRetentionSweeper, D as SmrtJob, E as SmrtJobEventCollection, F as getBackgroundEligibleMethods, I as isBackgroundEligibleMethod, L as markBackgroundEligible, M as assertWithinTenantCreationCap, N as backgroundEligible, O as SmrtJobCollection, P as clampRetries, S as registerJobRetentionTasks, T as SmrtJobEvent, _ as redactErrorMessage, a as SmrtWorker, b as JOBS_RETENTION_TASK, c as McpTaskCancelledError, d as createMcpTaskResult, f as getMcpTaskMarker, g as redactErrorForPersistence, h as JobContextLogger, i as DEFAULT_TASK_HEARTBEAT_INTERVAL_MS, j as TenantJobCapExceededError, k as DEFAULT_TENANT_JOB_CAP, l as McpTaskNotFoundError, m as taskFromJob, n as TaskRunner, o as SmrtWorkerCollection, p as requestMcpTaskInput, r as createTaskRunner, s as MCP_TASKS_EXTENSION, t as JobTimeoutError, u as McpTaskStore, v as DEFAULT_JOB_RETENTION, w as unregisterJobRetentionTasks, x as JOB_EVENTS_RETENTION_TASK, y as DEFAULT_RETENTION_SWEEP_INTERVAL_MS } from "./chunks/runner-CE6vkKl6.js";
1
+ import { A as MAX_JOB_RETRIES, C as startRetentionSweeper, D as SmrtJob, E as SmrtJobEventCollection, F as getBackgroundEligibleMethods, I as isBackgroundEligibleMethod, L as markBackgroundEligible, M as assertWithinTenantCreationCap, N as backgroundEligible, O as SmrtJobCollection, P as clampRetries, S as registerJobRetentionTasks, T as SmrtJobEvent, _ as redactErrorMessage, a as SmrtWorker, b as JOBS_RETENTION_TASK, c as McpTaskCancelledError, d as createMcpTaskResult, f as getMcpTaskMarker, g as redactErrorForPersistence, h as JobContextLogger, i as DEFAULT_TASK_HEARTBEAT_INTERVAL_MS, j as TenantJobCapExceededError, k as DEFAULT_TENANT_JOB_CAP, l as McpTaskNotFoundError, m as taskFromJob, n as TaskRunner, o as SmrtWorkerCollection, p as requestMcpTaskInput, r as createTaskRunner, s as MCP_TASKS_EXTENSION, t as JobTimeoutError, u as McpTaskStore, v as DEFAULT_JOB_RETENTION, w as unregisterJobRetentionTasks, x as JOB_EVENTS_RETENTION_TASK, y as DEFAULT_RETENTION_SWEEP_INTERVAL_MS } from "./chunks/runner-5v3fHVNL.js";
2
2
  import { c as unregisterLiveWorker, i as registerLiveWorker, n as isWorkerAlive, t as createWorkerKey } from "./chunks/worker-liveness-C1Gjnhax.js";
3
3
  import { ObjectRegistry, SmrtCollection, SmrtObject, detectEngine, field, smrt } from "@happyvertical/smrt-core";
4
4
  import { createLogger } from "@happyvertical/logger";
@@ -2,7 +2,7 @@
2
2
  "version": "1.0.0",
3
3
  "timestamp": 0,
4
4
  "packageName": "@happyvertical/smrt-jobs",
5
- "packageVersion": "0.46.0",
5
+ "packageVersion": "0.47.0",
6
6
  "objects": {
7
7
  "@happyvertical/smrt-jobs:ForgeDelivery": {
8
8
  "name": "forgedelivery",
@@ -989,7 +989,7 @@
989
989
  "name": "initialize",
990
990
  "async": true,
991
991
  "parameters": [],
992
- "returnType": "Promise",
992
+ "returnType": "Promise<this>",
993
993
  "isStatic": false,
994
994
  "isPublic": true
995
995
  },
@@ -1033,7 +1033,8 @@
1033
1033
  {
1034
1034
  "name": "options",
1035
1035
  "type": "any",
1036
- "optional": true
1036
+ "optional": true,
1037
+ "typeUnresolved": true
1037
1038
  }
1038
1039
  ],
1039
1040
  "returnType": "Promise<SmrtJobEvent[]>",
@@ -1052,7 +1053,10 @@
1052
1053
  {
1053
1054
  "name": "options",
1054
1055
  "type": "object",
1055
- "optional": true
1056
+ "optional": true,
1057
+ "memberTypes": [
1058
+ "string | null"
1059
+ ]
1056
1060
  }
1057
1061
  ],
1058
1062
  "returnType": "Promise<Map<string, SmrtJobEvent>>",
@@ -1066,7 +1070,11 @@
1066
1070
  {
1067
1071
  "name": "options",
1068
1072
  "type": "object",
1069
- "optional": false
1073
+ "optional": false,
1074
+ "memberTypes": [
1075
+ "Date",
1076
+ "boolean"
1077
+ ]
1070
1078
  }
1071
1079
  ],
1072
1080
  "returnType": "Promise<number>",
@@ -1343,7 +1351,7 @@
1343
1351
  "name": "save",
1344
1352
  "async": true,
1345
1353
  "parameters": [],
1346
- "returnType": "Promise",
1354
+ "returnType": "Promise<this>",
1347
1355
  "isStatic": false,
1348
1356
  "isPublic": true
1349
1357
  },
@@ -1675,7 +1683,7 @@
1675
1683
  "name": "initialize",
1676
1684
  "async": true,
1677
1685
  "parameters": [],
1678
- "returnType": "Promise",
1686
+ "returnType": "Promise<this>",
1679
1687
  "isStatic": false,
1680
1688
  "isPublic": true
1681
1689
  },
@@ -1686,12 +1694,24 @@
1686
1694
  {
1687
1695
  "name": "status",
1688
1696
  "type": "JobStatus | JobStatus[]",
1689
- "optional": false
1697
+ "optional": false,
1698
+ "unionBranches": [
1699
+ {
1700
+ "type": "JobStatus"
1701
+ },
1702
+ {
1703
+ "type": "JobStatus[]"
1704
+ }
1705
+ ]
1690
1706
  },
1691
1707
  {
1692
1708
  "name": "options",
1693
1709
  "type": "object",
1694
- "optional": true
1710
+ "optional": true,
1711
+ "memberTypes": [
1712
+ "number",
1713
+ "string"
1714
+ ]
1695
1715
  }
1696
1716
  ],
1697
1717
  "returnType": "Promise<SmrtJob[]>",
@@ -1705,7 +1725,11 @@
1705
1725
  {
1706
1726
  "name": "options",
1707
1727
  "type": "object",
1708
- "optional": true
1728
+ "optional": true,
1729
+ "memberTypes": [
1730
+ "number",
1731
+ "string[]"
1732
+ ]
1709
1733
  }
1710
1734
  ],
1711
1735
  "returnType": "Promise<SmrtJob[]>",
@@ -1733,7 +1757,15 @@
1733
1757
  {
1734
1758
  "name": "tenantId",
1735
1759
  "type": "string | null",
1736
- "optional": false
1760
+ "optional": false,
1761
+ "unionBranches": [
1762
+ {
1763
+ "type": "string"
1764
+ },
1765
+ {
1766
+ "type": "null"
1767
+ }
1768
+ ]
1737
1769
  }
1738
1770
  ],
1739
1771
  "returnType": "Promise<number>",
@@ -1780,7 +1812,12 @@
1780
1812
  {
1781
1813
  "name": "options",
1782
1814
  "type": "object",
1783
- "optional": false
1815
+ "optional": false,
1816
+ "memberTypes": [
1817
+ "Date",
1818
+ "number",
1819
+ "boolean"
1820
+ ]
1784
1821
  }
1785
1822
  ],
1786
1823
  "returnType": "Promise<number>",
package/dist/runner.js CHANGED
@@ -1,2 +1,2 @@
1
- import { n as TaskRunner, r as createTaskRunner, t as JobTimeoutError } from "./chunks/runner-CE6vkKl6.js";
1
+ import { n as TaskRunner, r as createTaskRunner, t as JobTimeoutError } from "./chunks/runner-5v3fHVNL.js";
2
2
  export { JobTimeoutError, TaskRunner, TaskRunner as default, createTaskRunner };
@@ -3,12 +3,12 @@
3
3
  "sensitiveFieldsExcluded": true,
4
4
  "generatedAt": "1970-01-01T00:00:00.000Z",
5
5
  "packageName": "@happyvertical/smrt-jobs",
6
- "packageVersion": "0.46.0",
6
+ "packageVersion": "0.47.0",
7
7
  "sourceManifestPath": "dist/manifest.json",
8
8
  "agentDocPath": "AGENTS.md",
9
9
  "sourceHashes": {
10
- "manifest": "91d01ac461d0b3447b9b7aea9b9945984d6339a3fb5e7dfd5c4d1d1e465eaf2b",
11
- "packageJson": "7c8b7f0a997e3f7255fc14e9842f3e707a1c01b0e58731005eb9b6f8cb83b43c",
10
+ "manifest": "fa1b177a38745a5c59ece1324739cbee74179ee5320697e744d19126e1b64816",
11
+ "packageJson": "c38c5018b52fe5a586a8966b0cb96255adcfee16bde791a69a288126a16630c6",
12
12
  "agents": "f9b10be5ad5a560f3ce4c47646eb546918bb9c775f8d0986d29756c9bca6e234"
13
13
  },
14
14
  "exports": [
@@ -306,6 +306,29 @@
306
306
  }
307
307
  ],
308
308
  "surfaces": [],
309
+ "withheldSurfaces": [
310
+ {
311
+ "kind": "api",
312
+ "operation": "accept",
313
+ "code": "api-disabled",
314
+ "reason": "api is disabled",
315
+ "objectName": "@happyvertical/smrt-jobs:ForgeDeliveryCollection"
316
+ },
317
+ {
318
+ "kind": "api",
319
+ "operation": "claimReady",
320
+ "code": "api-disabled",
321
+ "reason": "api is disabled",
322
+ "objectName": "@happyvertical/smrt-jobs:ForgeDeliveryCollection"
323
+ },
324
+ {
325
+ "kind": "api",
326
+ "operation": "replay",
327
+ "code": "api-disabled",
328
+ "reason": "api is disabled",
329
+ "objectName": "@happyvertical/smrt-jobs:ForgeDeliveryCollection"
330
+ }
331
+ ],
309
332
  "relationshipFeatures": [
310
333
  "uuidColumns"
311
334
  ],
@@ -421,6 +444,15 @@
421
444
  "objectName": "@happyvertical/smrt-jobs:SmrtJobEvent"
422
445
  }
423
446
  ],
447
+ "withheldSurfaces": [
448
+ {
449
+ "kind": "api",
450
+ "operation": "toCursor",
451
+ "code": "api-disabled",
452
+ "reason": "api is disabled",
453
+ "objectName": "@happyvertical/smrt-jobs:SmrtJobEvent"
454
+ }
455
+ ],
424
456
  "relationshipFeatures": [
425
457
  "foreignKey",
426
458
  "uuidColumns"
@@ -465,7 +497,7 @@
465
497
  {
466
498
  "name": "initialize",
467
499
  "async": true,
468
- "returns": "Promise"
500
+ "returns": "Promise<this>"
469
501
  },
470
502
  {
471
503
  "name": "latestProgressByJobIds",
@@ -495,14 +527,6 @@
495
527
  }
496
528
  ],
497
529
  "surfaces": [
498
- {
499
- "kind": "api",
500
- "name": "smrtjobevents.initialize",
501
- "operation": "initialize",
502
- "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection",
503
- "path": "/smrtjobevents/initialize",
504
- "method": "POST"
505
- },
506
530
  {
507
531
  "kind": "api",
508
532
  "name": "smrtjobevents.append",
@@ -519,14 +543,6 @@
519
543
  "path": "/smrtjobevents/listByJob",
520
544
  "method": "POST"
521
545
  },
522
- {
523
- "kind": "api",
524
- "name": "smrtjobevents.listSinceCursor",
525
- "operation": "listSinceCursor",
526
- "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection",
527
- "path": "/smrtjobevents/listSinceCursor",
528
- "method": "POST"
529
- },
530
546
  {
531
547
  "kind": "api",
532
548
  "name": "smrtjobevents.latestProgressByJobIds",
@@ -535,14 +551,6 @@
535
551
  "path": "/smrtjobevents/latestProgressByJobIds",
536
552
  "method": "POST"
537
553
  },
538
- {
539
- "kind": "api",
540
- "name": "smrtjobevents.cleanup",
541
- "operation": "cleanup",
542
- "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection",
543
- "path": "/smrtjobevents/cleanup",
544
- "method": "POST"
545
- },
546
554
  {
547
555
  "kind": "cli",
548
556
  "name": "smrtjobeventcollection_append",
@@ -604,6 +612,29 @@
604
612
  "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection"
605
613
  }
606
614
  ],
615
+ "withheldSurfaces": [
616
+ {
617
+ "kind": "api",
618
+ "operation": "cleanup",
619
+ "code": "not-wireable",
620
+ "reason": "not routed: `options` contains a member where `Date` is only hydrated as a top-level parameter, so a nested one arrives as a string",
621
+ "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection"
622
+ },
623
+ {
624
+ "kind": "api",
625
+ "operation": "initialize",
626
+ "code": "lifecycle-method",
627
+ "reason": "`initialize` is a framework lifecycle method, not a distinct operation",
628
+ "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection"
629
+ },
630
+ {
631
+ "kind": "api",
632
+ "operation": "listSinceCursor",
633
+ "code": "not-wireable",
634
+ "reason": "not routed: the declared type of `options` could not be resolved by the scanner",
635
+ "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection"
636
+ }
637
+ ],
607
638
  "relationshipFeatures": [
608
639
  "uuidColumns"
609
640
  ],
@@ -801,7 +832,7 @@
801
832
  {
802
833
  "name": "save",
803
834
  "async": true,
804
- "returns": "Promise"
835
+ "returns": "Promise<this>"
805
836
  }
806
837
  ],
807
838
  "tenant": {
@@ -840,6 +871,36 @@
840
871
  "objectName": "@happyvertical/smrt-jobs:SmrtJob"
841
872
  }
842
873
  ],
874
+ "withheldSurfaces": [
875
+ {
876
+ "kind": "api",
877
+ "operation": "cancel",
878
+ "code": "api-disabled",
879
+ "reason": "api is disabled",
880
+ "objectName": "@happyvertical/smrt-jobs:SmrtJob"
881
+ },
882
+ {
883
+ "kind": "api",
884
+ "operation": "getDescription",
885
+ "code": "api-disabled",
886
+ "reason": "api is disabled",
887
+ "objectName": "@happyvertical/smrt-jobs:SmrtJob"
888
+ },
889
+ {
890
+ "kind": "api",
891
+ "operation": "retry",
892
+ "code": "api-disabled",
893
+ "reason": "api is disabled",
894
+ "objectName": "@happyvertical/smrt-jobs:SmrtJob"
895
+ },
896
+ {
897
+ "kind": "api",
898
+ "operation": "save",
899
+ "code": "api-disabled",
900
+ "reason": "api is disabled",
901
+ "objectName": "@happyvertical/smrt-jobs:SmrtJob"
902
+ }
903
+ ],
843
904
  "relationshipFeatures": [
844
905
  "uuidColumns"
845
906
  ],
@@ -902,7 +963,7 @@
902
963
  {
903
964
  "name": "initialize",
904
965
  "async": true,
905
- "returns": "Promise"
966
+ "returns": "Promise<this>"
906
967
  },
907
968
  {
908
969
  "name": "listByStatus",
@@ -931,14 +992,6 @@
931
992
  }
932
993
  ],
933
994
  "surfaces": [
934
- {
935
- "kind": "api",
936
- "name": "smrtjobs.initialize",
937
- "operation": "initialize",
938
- "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection",
939
- "path": "/smrtjobs/initialize",
940
- "method": "POST"
941
- },
942
995
  {
943
996
  "kind": "api",
944
997
  "name": "smrtjobs.listByStatus",
@@ -987,14 +1040,6 @@
987
1040
  "path": "/smrtjobs/stats",
988
1041
  "method": "POST"
989
1042
  },
990
- {
991
- "kind": "api",
992
- "name": "smrtjobs.cleanup",
993
- "operation": "cleanup",
994
- "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection",
995
- "path": "/smrtjobs/cleanup",
996
- "method": "POST"
997
- },
998
1043
  {
999
1044
  "kind": "cli",
1000
1045
  "name": "smrtjobcollection_listByStatus",
@@ -1080,6 +1125,22 @@
1080
1125
  "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection"
1081
1126
  }
1082
1127
  ],
1128
+ "withheldSurfaces": [
1129
+ {
1130
+ "kind": "api",
1131
+ "operation": "cleanup",
1132
+ "code": "not-wireable",
1133
+ "reason": "not routed: `options` contains a member where `Date` is only hydrated as a top-level parameter, so a nested one arrives as a string",
1134
+ "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection"
1135
+ },
1136
+ {
1137
+ "kind": "api",
1138
+ "operation": "initialize",
1139
+ "code": "lifecycle-method",
1140
+ "reason": "`initialize` is a framework lifecycle method, not a distinct operation",
1141
+ "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection"
1142
+ }
1143
+ ],
1083
1144
  "relationshipFeatures": [
1084
1145
  "uuidColumns"
1085
1146
  ],
@@ -1380,14 +1441,6 @@
1380
1441
  "operation": "get",
1381
1442
  "objectName": "@happyvertical/smrt-jobs:SmrtJobEvent"
1382
1443
  },
1383
- {
1384
- "kind": "api",
1385
- "name": "smrtjobevents.initialize",
1386
- "operation": "initialize",
1387
- "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection",
1388
- "path": "/smrtjobevents/initialize",
1389
- "method": "POST"
1390
- },
1391
1444
  {
1392
1445
  "kind": "api",
1393
1446
  "name": "smrtjobevents.append",
@@ -1404,14 +1457,6 @@
1404
1457
  "path": "/smrtjobevents/listByJob",
1405
1458
  "method": "POST"
1406
1459
  },
1407
- {
1408
- "kind": "api",
1409
- "name": "smrtjobevents.listSinceCursor",
1410
- "operation": "listSinceCursor",
1411
- "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection",
1412
- "path": "/smrtjobevents/listSinceCursor",
1413
- "method": "POST"
1414
- },
1415
1460
  {
1416
1461
  "kind": "api",
1417
1462
  "name": "smrtjobevents.latestProgressByJobIds",
@@ -1420,14 +1465,6 @@
1420
1465
  "path": "/smrtjobevents/latestProgressByJobIds",
1421
1466
  "method": "POST"
1422
1467
  },
1423
- {
1424
- "kind": "api",
1425
- "name": "smrtjobevents.cleanup",
1426
- "operation": "cleanup",
1427
- "objectName": "@happyvertical/smrt-jobs:SmrtJobEventCollection",
1428
- "path": "/smrtjobevents/cleanup",
1429
- "method": "POST"
1430
- },
1431
1468
  {
1432
1469
  "kind": "cli",
1433
1470
  "name": "smrtjobeventcollection_append",
@@ -1512,14 +1549,6 @@
1512
1549
  "operation": "cancel",
1513
1550
  "objectName": "@happyvertical/smrt-jobs:SmrtJob"
1514
1551
  },
1515
- {
1516
- "kind": "api",
1517
- "name": "smrtjobs.initialize",
1518
- "operation": "initialize",
1519
- "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection",
1520
- "path": "/smrtjobs/initialize",
1521
- "method": "POST"
1522
- },
1523
1552
  {
1524
1553
  "kind": "api",
1525
1554
  "name": "smrtjobs.listByStatus",
@@ -1568,14 +1597,6 @@
1568
1597
  "path": "/smrtjobs/stats",
1569
1598
  "method": "POST"
1570
1599
  },
1571
- {
1572
- "kind": "api",
1573
- "name": "smrtjobs.cleanup",
1574
- "operation": "cleanup",
1575
- "objectName": "@happyvertical/smrt-jobs:SmrtJobCollection",
1576
- "path": "/smrtjobs/cleanup",
1577
- "method": "POST"
1578
- },
1579
1600
  {
1580
1601
  "kind": "cli",
1581
1602
  "name": "smrtjobcollection_listByStatus",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-jobs",
3
- "version": "0.46.0",
3
+ "version": "0.47.0",
4
4
  "smrtJsdoc": "strict",
5
5
  "description": "Background job processing for SMRT objects with persistence and scheduling",
6
6
  "author": "HappyVertical",
@@ -53,15 +53,16 @@
53
53
  "dependencies": {
54
54
  "@happyvertical/jobs": "^0.89.4",
55
55
  "@happyvertical/logger": "^0.89.4",
56
+ "@happyvertical/smrt-config": "0.47.0",
57
+ "@happyvertical/smrt-core": "0.47.0",
58
+ "@happyvertical/smrt-tenancy": "0.47.0",
59
+ "@happyvertical/smrt-types": "0.47.0",
60
+ "@happyvertical/smrt-ui": "0.47.0",
56
61
  "@happyvertical/sql": "^0.89.4",
57
- "@happyvertical/utils": "^0.89.4",
58
- "@happyvertical/smrt-config": "0.46.0",
59
- "@happyvertical/smrt-tenancy": "0.46.0",
60
- "@happyvertical/smrt-types": "0.46.0",
61
- "@happyvertical/smrt-core": "0.46.0",
62
- "@happyvertical/smrt-ui": "0.46.0"
62
+ "@happyvertical/utils": "^0.89.4"
63
63
  },
64
64
  "devDependencies": {
65
+ "@happyvertical/smrt-vitest": "0.47.0",
65
66
  "@sveltejs/package": "^2.5.8",
66
67
  "@sveltejs/vite-plugin-svelte": "^7.1.2",
67
68
  "@types/node": "24.13.2",
@@ -69,8 +70,7 @@
69
70
  "svelte-check": "^4.7.1",
70
71
  "typescript": "5.9.3",
71
72
  "vite": "8.1.4",
72
- "vitest": "4.1.10",
73
- "@happyvertical/smrt-vitest": "0.46.0"
73
+ "vitest": "4.1.10"
74
74
  },
75
75
  "publishConfig": {
76
76
  "registry": "https://registry.npmjs.org",