@desplega.ai/agent-swarm 1.156.0 → 1.157.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 (68) hide show
  1. package/dist/{acp-adapter-c1msptrw.js → acp-adapter-qhqrk4q0.js} +1 -1
  2. package/dist/{actions-wd41qtdc.js → actions-9rrg0zxm.js} +12 -12
  3. package/dist/{app-tz2qrnah.js → app-enysy1zd.js} +3 -3
  4. package/dist/{assistant-c3q1zj2t.js → assistant-zegamy48.js} +13 -13
  5. package/dist/{boot-reembed-0be1krkm.js → boot-reembed-r6shx5qx.js} +4 -4
  6. package/dist/{boot-reembed-r00j03f3.js → boot-reembed-zfxb937k.js} +3 -3
  7. package/dist/{boot-scrub-logs-9j4hd0vw.js → boot-scrub-logs-k5y0se6r.js} +2 -2
  8. package/dist/{claude-adapter-112w28qc.js → claude-adapter-5yc7hxwv.js} +3 -3
  9. package/dist/{claude-sdk-session-k7pb5kfz.js → claude-sdk-session-j4ywn3xf.js} +3 -3
  10. package/dist/{cli-9pyah9c4.js → cli-01vfmq8c.js} +45 -21
  11. package/dist/{cli-xa4j64zh.js → cli-5j7bm4tb.js} +5 -5
  12. package/dist/{cli-hc2fkhdv.js → cli-6jjzxv3b.js} +2 -2
  13. package/dist/{cli-9w4ex8vh.js → cli-74h6f2bp.js} +2 -2
  14. package/dist/{cli-7pgcpcrg.js → cli-9n76jszt.js} +1 -1
  15. package/dist/{cli-7vj52450.js → cli-9p33cz9h.js} +8 -8
  16. package/dist/{cli-24w39x6n.js → cli-awwphhcs.js} +1 -1
  17. package/dist/{cli-nyqza443.js → cli-c41wjx0r.js} +3 -3
  18. package/dist/{cli-jk26c1sz.js → cli-f3va018d.js} +1 -1
  19. package/dist/{cli-tp0d7vzb.js → cli-jytrw2na.js} +4 -4
  20. package/dist/{cli-y8bfxjtw.js → cli-r9ee9c4w.js} +8 -8
  21. package/dist/{cli-7j2098n5.js → cli-s98skd5r.js} +2 -2
  22. package/dist/{cli-865swy5p.js → cli-sgyqyyxe.js} +2 -2
  23. package/dist/{cli-s8hpxeg4.js → cli-tpv97m71.js} +2 -2
  24. package/dist/{cli-08n8jxcw.js → cli-v53rbqp3.js} +1 -1
  25. package/dist/{cli-szcyv1mm.js → cli-vx9p3qdt.js} +1 -1
  26. package/dist/{cli-90x9ewbz.js → cli-wb2zvbfg.js} +1 -1
  27. package/dist/{cli-28wkjpdp.js → cli-wsed24mk.js} +2 -2
  28. package/dist/{cli-t1cd3mhp.js → cli-xf5b7y1f.js} +1 -1
  29. package/dist/{cli-b05d7szr.js → cli-y3nxwx0t.js} +1 -1
  30. package/dist/{cli-mx3bzbv8.js → cli-yscm6cv8.js} +103 -36
  31. package/dist/cli.js +12 -12
  32. package/dist/{codex-adapter-g4tj1f2g.js → codex-adapter-gns3s6c3.js} +2 -2
  33. package/dist/{codex-session-runner-ad8ha7zt.js → codex-session-runner-gqnxys5w.js} +2 -2
  34. package/dist/{commands-z3gd8ppc.js → commands-hxy2y2sp.js} +2 -2
  35. package/dist/{db-bezm97r9.js → db-w8ghhsgf.js} +2 -2
  36. package/dist/{dispatcher-a97hc33y.js → dispatcher-cp1rknjz.js} +11 -11
  37. package/dist/{handlers-wtdy1x02.js → handlers-egfhr351.js} +14 -14
  38. package/dist/{hook-fvs58a5b.js → hook-fbxjqfjz.js} +2 -2
  39. package/dist/{hook-7edgmzng.js → hook-x4kftwzt.js} +1 -1
  40. package/dist/{http-phnf93hp.js → http-c7jfx990.js} +27 -27
  41. package/dist/{index-7x131mmf.js → index-4k9hct21.js} +11 -11
  42. package/dist/{index-yp8rasxk.js → index-dc2ek6bw.js} +3 -3
  43. package/dist/{index-1fktvwxc.js → index-jtvpgb8f.js} +8 -8
  44. package/dist/{index-7jwk7nsm.js → index-r6bty6tb.js} +12 -12
  45. package/dist/{index-50jxgw0d.js → index-yy07ef2s.js} +11 -11
  46. package/dist/{keepalive-nnz07ebd.js → keepalive-f7ekefyc.js} +4 -4
  47. package/dist/{lead-mg7qcgww.js → lead-h053syts.js} +15 -15
  48. package/dist/{maintenance-ywmnqrpx.js → maintenance-a3w6zs54.js} +4 -4
  49. package/dist/{oauth-refresh-sweep-c63sqfs1.js → oauth-refresh-sweep-vra1dhkd.js} +3 -3
  50. package/dist/{onboard-2zj8sqkq.js → onboard-mfgzeqxs.js} +2 -2
  51. package/dist/{otel-impl-jgdfm26f.js → otel-impl-2ez6xk57.js} +1 -1
  52. package/dist/{pricing-refresh-3whntb69.js → pricing-refresh-6sw65tck.js} +4 -4
  53. package/dist/{rbac-roles-3zw68x72.js → rbac-roles-3gxmnb20.js} +3 -3
  54. package/dist/{rbac-roles-3zptcc3p.js → rbac-roles-nm6924sy.js} +2 -2
  55. package/dist/{render-v2-dbvpyysc.js → render-v2-f026j6c4.js} +3 -3
  56. package/dist/{seed-pricing-ncgxz1r2.js → seed-pricing-vqxa06qf.js} +3 -3
  57. package/dist/{setup-qwx0j8z9.js → setup-w606fr1q.js} +2 -2
  58. package/dist/{work-objects-sjbcmvep.js → work-objects-ezmggdne.js} +14 -14
  59. package/dist/{worker-xezqdkb7.js → worker-1mbyv29k.js} +15 -15
  60. package/openapi.json +1 -1
  61. package/package.json +2 -2
  62. package/src/providers/codex-agents-md.ts +140 -17
  63. package/src/scheduler/deferred-task-waits.ts +28 -0
  64. package/src/scheduler/scheduler.ts +14 -0
  65. package/src/tests/codex-adapter.test.ts +126 -1
  66. package/src/tests/deferred-schedule-reaper.test.ts +193 -0
  67. package/src/tools/schedules/list-schedules.ts +4 -2
  68. package/templates/skills/scheduling/content.md +1 -1
@@ -29,7 +29,7 @@ import {
29
29
  import {
30
30
  init_package,
31
31
  package_default
32
- } from "./cli-865swy5p.js";
32
+ } from "./cli-sgyqyyxe.js";
33
33
  import {
34
34
  init_secret_scrubber,
35
35
  scrubSecrets
@@ -1,27 +1,27 @@
1
1
  import {
2
2
  resolveSlackUserId
3
- } from "./cli-9w4ex8vh.js";
3
+ } from "./cli-74h6f2bp.js";
4
4
  import {
5
5
  createTaskWithSiblingAwareness
6
- } from "./cli-9pyah9c4.js";
6
+ } from "./cli-01vfmq8c.js";
7
7
  import"./cli-0z2v4nhw.js";
8
8
  import"./cli-tt9k8r35.js";
9
9
  import"./cli-vhjwh6cz.js";
10
10
  import"./cli-re8z5p8p.js";
11
11
  import"./cli-3dpj7atn.js";
12
12
  import"./cli-aw1jwp1r.js";
13
- import"./cli-hc2fkhdv.js";
14
- import"./cli-t1cd3mhp.js";
15
- import"./cli-jk26c1sz.js";
13
+ import"./cli-6jjzxv3b.js";
14
+ import"./cli-xf5b7y1f.js";
15
+ import"./cli-f3va018d.js";
16
16
  import"./cli-ytxs7mn1.js";
17
- import"./cli-nyqza443.js";
17
+ import"./cli-c41wjx0r.js";
18
18
  import"./cli-epan13p1.js";
19
19
  import"./cli-y89t4nca.js";
20
20
  import"./cli-f14fvzag.js";
21
- import"./cli-28wkjpdp.js";
22
- import"./cli-90x9ewbz.js";
21
+ import"./cli-wsed24mk.js";
22
+ import"./cli-wb2zvbfg.js";
23
23
  import"./cli-jsp14b6c.js";
24
- import"./cli-08n8jxcw.js";
24
+ import"./cli-v53rbqp3.js";
25
25
  import"./cli-nbp6m6gp.js";
26
26
  import"./cli-bsakbbkm.js";
27
27
  import"./cli-fad8m16k.js";
@@ -34,7 +34,7 @@ import {
34
34
  getAgentEmoji,
35
35
  getTaskLink,
36
36
  isSlackRenderV2Enabled
37
- } from "./cli-7vj52450.js";
37
+ } from "./cli-9p33cz9h.js";
38
38
  import"./cli-q51yprfq.js";
39
39
  import"./cli-3er6gcsn.js";
40
40
  import"./cli-2658f6at.js";
@@ -47,7 +47,7 @@ import {
47
47
  init_context_key,
48
48
  init_db,
49
49
  slackContextKey
50
- } from "./cli-24w39x6n.js";
50
+ } from "./cli-awwphhcs.js";
51
51
  import"./cli-h0wdadsx.js";
52
52
  import"./cli-3gmcwfyx.js";
53
53
  import"./cli-ggm92wcn.js";
@@ -59,7 +59,7 @@ import"./cli-cqt19wg6.js";
59
59
  import"./cli-ej6gbxfb.js";
60
60
  import"./cli-sd0mxa3c.js";
61
61
  import"./cli-w5e1d1vv.js";
62
- import"./cli-865swy5p.js";
62
+ import"./cli-sgyqyyxe.js";
63
63
  import"./cli-r2ap2czm.js";
64
64
  import"./cli-5b6b62tz.js";
65
65
  import"./cli-btbzvq95.js";
@@ -3,12 +3,12 @@ import {
3
3
  initSlackApp,
4
4
  startSlackApp,
5
5
  stopSlackApp
6
- } from "./cli-7vj52450.js";
6
+ } from "./cli-9p33cz9h.js";
7
7
  import"./cli-q51yprfq.js";
8
8
  import"./cli-3er6gcsn.js";
9
9
  import"./cli-2658f6at.js";
10
10
  import"./cli-yatxqynm.js";
11
- import"./cli-24w39x6n.js";
11
+ import"./cli-awwphhcs.js";
12
12
  import"./cli-h0wdadsx.js";
13
13
  import"./cli-3gmcwfyx.js";
14
14
  import"./cli-ggm92wcn.js";
@@ -20,7 +20,7 @@ import"./cli-cqt19wg6.js";
20
20
  import"./cli-ej6gbxfb.js";
21
21
  import"./cli-sd0mxa3c.js";
22
22
  import"./cli-w5e1d1vv.js";
23
- import"./cli-865swy5p.js";
23
+ import"./cli-sgyqyyxe.js";
24
24
  import"./cli-r2ap2czm.js";
25
25
  import"./cli-bd957dgb.js";
26
26
  import"./cli-pzxba7gw.js";
@@ -2,36 +2,36 @@ import {
2
2
  bufferThreadMessage,
3
3
  getBufferMessageCount,
4
4
  wasEventSeen
5
- } from "./cli-tp0d7vzb.js";
5
+ } from "./cli-jytrw2na.js";
6
6
  import {
7
7
  resolveSlackUserId,
8
8
  rewriteSlackMentions
9
- } from "./cli-9w4ex8vh.js";
9
+ } from "./cli-74h6f2bp.js";
10
10
  import {
11
11
  buildEffectiveText,
12
12
  createSlackTaskWithFiles,
13
13
  fetchSlackFiles,
14
14
  hasOtherUserMention,
15
15
  notifySlackFileFailures
16
- } from "./cli-9pyah9c4.js";
16
+ } from "./cli-01vfmq8c.js";
17
17
  import"./cli-0z2v4nhw.js";
18
18
  import"./cli-tt9k8r35.js";
19
19
  import"./cli-vhjwh6cz.js";
20
20
  import"./cli-re8z5p8p.js";
21
21
  import"./cli-3dpj7atn.js";
22
22
  import"./cli-aw1jwp1r.js";
23
- import"./cli-hc2fkhdv.js";
24
- import"./cli-t1cd3mhp.js";
25
- import"./cli-jk26c1sz.js";
23
+ import"./cli-6jjzxv3b.js";
24
+ import"./cli-xf5b7y1f.js";
25
+ import"./cli-f3va018d.js";
26
26
  import"./cli-ytxs7mn1.js";
27
- import"./cli-nyqza443.js";
27
+ import"./cli-c41wjx0r.js";
28
28
  import"./cli-epan13p1.js";
29
29
  import"./cli-y89t4nca.js";
30
30
  import"./cli-f14fvzag.js";
31
- import"./cli-28wkjpdp.js";
32
- import"./cli-90x9ewbz.js";
31
+ import"./cli-wsed24mk.js";
32
+ import"./cli-wb2zvbfg.js";
33
33
  import"./cli-jsp14b6c.js";
34
- import"./cli-08n8jxcw.js";
34
+ import"./cli-v53rbqp3.js";
35
35
  import"./cli-nbp6m6gp.js";
36
36
  import"./cli-bsakbbkm.js";
37
37
  import"./cli-fad8m16k.js";
@@ -42,7 +42,7 @@ import {
42
42
  ensureSlackThreadTree,
43
43
  isSlackRenderV2Enabled,
44
44
  require_dist
45
- } from "./cli-7vj52450.js";
45
+ } from "./cli-9p33cz9h.js";
46
46
  import"./cli-q51yprfq.js";
47
47
  import"./cli-3er6gcsn.js";
48
48
  import"./cli-2658f6at.js";
@@ -55,7 +55,7 @@ import {
55
55
  init_db,
56
56
  reactionName,
57
57
  slackContextKey
58
- } from "./cli-24w39x6n.js";
58
+ } from "./cli-awwphhcs.js";
59
59
  import"./cli-h0wdadsx.js";
60
60
  import"./cli-3gmcwfyx.js";
61
61
  import {
@@ -73,7 +73,7 @@ import {
73
73
  } from "./cli-ej6gbxfb.js";
74
74
  import"./cli-sd0mxa3c.js";
75
75
  import"./cli-w5e1d1vv.js";
76
- import"./cli-865swy5p.js";
76
+ import"./cli-sgyqyyxe.js";
77
77
  import"./cli-r2ap2czm.js";
78
78
  import"./cli-5b6b62tz.js";
79
79
  import"./cli-btbzvq95.js";
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  embedScript,
3
3
  embeddingProvider
4
- } from "./cli-28wkjpdp.js";
5
- import"./cli-08n8jxcw.js";
4
+ } from "./cli-wsed24mk.js";
5
+ import"./cli-v53rbqp3.js";
6
6
  import"./cli-nbp6m6gp.js";
7
7
  import"./cli-aehm1rbq.js";
8
8
  import"./cli-2658f6at.js";
9
9
  import {
10
10
  getDbClient,
11
11
  init_db
12
- } from "./cli-24w39x6n.js";
12
+ } from "./cli-awwphhcs.js";
13
13
  import"./cli-h0wdadsx.js";
14
14
  import"./cli-3gmcwfyx.js";
15
15
  import"./cli-ggm92wcn.js";
@@ -21,7 +21,7 @@ import"./cli-cqt19wg6.js";
21
21
  import"./cli-ej6gbxfb.js";
22
22
  import"./cli-sd0mxa3c.js";
23
23
  import"./cli-w5e1d1vv.js";
24
- import"./cli-865swy5p.js";
24
+ import"./cli-sgyqyyxe.js";
25
25
  import"./cli-r2ap2czm.js";
26
26
  import"./cli-zf8jjwex.js";
27
27
  import"./cli-bc05qbss.js";
@@ -3,14 +3,14 @@ import {
3
3
  getEmbeddingProvider,
4
4
  getMemoryStore,
5
5
  init_constants
6
- } from "./cli-08n8jxcw.js";
6
+ } from "./cli-v53rbqp3.js";
7
7
  import"./cli-nbp6m6gp.js";
8
8
  import"./cli-aehm1rbq.js";
9
9
  import"./cli-2658f6at.js";
10
10
  import {
11
11
  getDbClient,
12
12
  init_db
13
- } from "./cli-24w39x6n.js";
13
+ } from "./cli-awwphhcs.js";
14
14
  import"./cli-h0wdadsx.js";
15
15
  import"./cli-3gmcwfyx.js";
16
16
  import"./cli-ggm92wcn.js";
@@ -22,7 +22,7 @@ import"./cli-cqt19wg6.js";
22
22
  import"./cli-ej6gbxfb.js";
23
23
  import"./cli-sd0mxa3c.js";
24
24
  import"./cli-w5e1d1vv.js";
25
- import"./cli-865swy5p.js";
25
+ import"./cli-sgyqyyxe.js";
26
26
  import"./cli-r2ap2czm.js";
27
27
  import"./cli-zf8jjwex.js";
28
28
  import"./cli-bc05qbss.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getDbClient,
3
3
  init_db
4
- } from "./cli-24w39x6n.js";
4
+ } from "./cli-awwphhcs.js";
5
5
  import"./cli-h0wdadsx.js";
6
6
  import"./cli-3gmcwfyx.js";
7
7
  import"./cli-ggm92wcn.js";
@@ -13,7 +13,7 @@ import"./cli-cqt19wg6.js";
13
13
  import"./cli-ej6gbxfb.js";
14
14
  import"./cli-sd0mxa3c.js";
15
15
  import"./cli-w5e1d1vv.js";
16
- import"./cli-865swy5p.js";
16
+ import"./cli-sgyqyyxe.js";
17
17
  import {
18
18
  init_secret_scrubber,
19
19
  scrubSecrets
@@ -17,8 +17,8 @@ import {
17
17
  resolveClaudeBridgeEnabled,
18
18
  resolveClaudeQueueSteeringOverride,
19
19
  runClaudeSessionSummary
20
- } from "./cli-7j2098n5.js";
21
- import"./cli-b05d7szr.js";
20
+ } from "./cli-s98skd5r.js";
21
+ import"./cli-y3nxwx0t.js";
22
22
  import"./cli-n6zq3kbd.js";
23
23
  import"./cli-tng3131n.js";
24
24
  import"./cli-q2j38vre.js";
@@ -49,7 +49,7 @@ import"./cli-cqt19wg6.js";
49
49
  import"./cli-ej6gbxfb.js";
50
50
  import"./cli-sd0mxa3c.js";
51
51
  import"./cli-w5e1d1vv.js";
52
- import"./cli-865swy5p.js";
52
+ import"./cli-sgyqyyxe.js";
53
53
  import"./cli-r2ap2czm.js";
54
54
  import"./cli-5b6b62tz.js";
55
55
  import"./cli-btbzvq95.js";
@@ -3,8 +3,8 @@ import {
3
3
  cleanupTaskFile,
4
4
  normalizeClaudeMessage,
5
5
  runClaudeSessionSummary
6
- } from "./cli-7j2098n5.js";
7
- import"./cli-b05d7szr.js";
6
+ } from "./cli-s98skd5r.js";
7
+ import"./cli-y3nxwx0t.js";
8
8
  import"./cli-n6zq3kbd.js";
9
9
  import"./cli-tng3131n.js";
10
10
  import"./cli-q2j38vre.js";
@@ -46,7 +46,7 @@ import"./cli-cqt19wg6.js";
46
46
  import"./cli-ej6gbxfb.js";
47
47
  import"./cli-sd0mxa3c.js";
48
48
  import"./cli-w5e1d1vv.js";
49
- import"./cli-865swy5p.js";
49
+ import"./cli-sgyqyyxe.js";
50
50
  import {
51
51
  init_secret_scrubber,
52
52
  scrubSecrets
@@ -19,14 +19,14 @@ import {
19
19
  } from "./cli-3dpj7atn.js";
20
20
  import {
21
21
  startPricingRefreshLoop
22
- } from "./cli-hc2fkhdv.js";
22
+ } from "./cli-6jjzxv3b.js";
23
23
  import {
24
24
  seedPricingFromModelsDev
25
- } from "./cli-t1cd3mhp.js";
25
+ } from "./cli-xf5b7y1f.js";
26
26
  import {
27
27
  ensureRbacSeedsSynced,
28
28
  getUserGrant
29
- } from "./cli-jk26c1sz.js";
29
+ } from "./cli-f3va018d.js";
30
30
  import {
31
31
  can,
32
32
  decideAdmission,
@@ -103,7 +103,7 @@ import {
103
103
  validateDefinition,
104
104
  validateScriptImports,
105
105
  writeBareImportShim
106
- } from "./cli-nyqza443.js";
106
+ } from "./cli-c41wjx0r.js";
107
107
  import {
108
108
  detachedProcessGroup,
109
109
  registerProcessGroup,
@@ -114,7 +114,7 @@ import {
114
114
  } from "./cli-f14fvzag.js";
115
115
  import {
116
116
  embedScript
117
- } from "./cli-28wkjpdp.js";
117
+ } from "./cli-wsed24mk.js";
118
118
  import {
119
119
  buildAuthorizationUrl,
120
120
  createOAuthApp,
@@ -129,7 +129,7 @@ import {
129
129
  listAuthorizationsForApp,
130
130
  onAuthorizationRefreshed,
131
131
  upsertOAuthApp
132
- } from "./cli-90x9ewbz.js";
132
+ } from "./cli-wb2zvbfg.js";
133
133
  import {
134
134
  AgentFsProvider,
135
135
  getFileStorageProvider,
@@ -146,7 +146,7 @@ import {
146
146
  isGraphExpansionEnabled,
147
147
  rerank,
148
148
  rowToCandidate
149
- } from "./cli-08n8jxcw.js";
149
+ } from "./cli-v53rbqp3.js";
150
150
  import {
151
151
  ZodFirstPartyTypeKind,
152
152
  objectType
@@ -176,7 +176,7 @@ import {
176
176
  taskCitationWarnings,
177
177
  upsertTaskCitations,
178
178
  withSpan
179
- } from "./cli-7vj52450.js";
179
+ } from "./cli-9p33cz9h.js";
180
180
  import {
181
181
  init_task_attachment_links,
182
182
  taskAttachmentDisplayUrl,
@@ -442,7 +442,7 @@ import {
442
442
  upsertSwarmConfig,
443
443
  validateConfigValue,
444
444
  workflowContextKey
445
- } from "./cli-24w39x6n.js";
445
+ } from "./cli-awwphhcs.js";
446
446
  import {
447
447
  $OpenAPIRegistry,
448
448
  $OpenApiGeneratorV31,
@@ -580,7 +580,7 @@ import {
580
580
  import {
581
581
  init_package,
582
582
  package_default
583
- } from "./cli-865swy5p.js";
583
+ } from "./cli-sgyqyyxe.js";
584
584
  import {
585
585
  init_secret_scrubber,
586
586
  isSensitiveKey,
@@ -14319,7 +14319,7 @@ async function notifyAutomationPreflightFailure(preflight) {
14319
14319
  return;
14320
14320
  }
14321
14321
  try {
14322
- const { getSlackApp: getSlackApp2 } = await import("./app-tz2qrnah.js");
14322
+ const { getSlackApp: getSlackApp2 } = await import("./app-enysy1zd.js");
14323
14323
  const app = getSlackApp2();
14324
14324
  if (!app) {
14325
14325
  console.warn("[Automation Preflight] Slack not available, cannot send notification");
@@ -17549,6 +17549,18 @@ async function reconcileDeferredTaskWaits(taskId) {
17549
17549
  }
17550
17550
  }
17551
17551
  }
17552
+ var SPENT_DEFERRED_SCHEDULE_RETENTION_MS = 30 * 24 * 60 * 60 * 1000;
17553
+ async function reapSpentDeferredSchedules(now = new Date) {
17554
+ const cutoff = new Date(now.getTime() - SPENT_DEFERRED_SCHEDULE_RETENTION_MS).toISOString();
17555
+ const result = await getDbClient().run(`DELETE FROM scheduled_tasks
17556
+ WHERE taskType = 'deferred' AND scheduleType = 'one_time' AND enabled = 0
17557
+ AND lastRunAt IS NOT NULL AND lastRunAt < ?
17558
+ AND NOT EXISTS (
17559
+ SELECT 1 FROM deferred_task_waits w
17560
+ WHERE w.scheduleId = scheduled_tasks.id AND w.status = 'pending'
17561
+ )`, [cutoff]);
17562
+ return result.changes;
17563
+ }
17552
17564
  function onTaskEvent(payload) {
17553
17565
  if (!payload || typeof payload !== "object" || !("taskId" in payload) || typeof payload.taskId !== "string")
17554
17566
  return;
@@ -17577,6 +17589,8 @@ function stopDeferredTaskWaits() {
17577
17589
  var schedulerInterval = null;
17578
17590
  var schedulerRun = null;
17579
17591
  var isProcessing = false;
17592
+ var lastDeferredReapAt = 0;
17593
+ var DEFERRED_REAP_INTERVAL_MS = 60 * 60 * 1000;
17580
17594
  var executorRegistry = null;
17581
17595
  function resolveExecutorRegistry() {
17582
17596
  if (executorRegistry)
@@ -17889,6 +17903,16 @@ async function processSchedules() {
17889
17903
  console.error(`[Scheduler] Error executing "${schedule.name}":`, err);
17890
17904
  }
17891
17905
  }
17906
+ if (Date.now() - lastDeferredReapAt >= DEFERRED_REAP_INTERVAL_MS) {
17907
+ lastDeferredReapAt = Date.now();
17908
+ try {
17909
+ const reaped = await reapSpentDeferredSchedules();
17910
+ if (reaped)
17911
+ console.log(`[Scheduler] Reaped ${reaped} spent deferral schedule(s)`);
17912
+ } catch (err) {
17913
+ console.error("[Scheduler] Deferral schedule reap failed:", err);
17914
+ }
17915
+ }
17892
17916
  } finally {
17893
17917
  isProcessing = false;
17894
17918
  }
@@ -27749,7 +27773,7 @@ async function notifySlack(text) {
27749
27773
  return;
27750
27774
  }
27751
27775
  try {
27752
- const { getSlackApp: getSlackApp2 } = await import("./app-tz2qrnah.js");
27776
+ const { getSlackApp: getSlackApp2 } = await import("./app-enysy1zd.js");
27753
27777
  const app = getSlackApp2();
27754
27778
  if (!app) {
27755
27779
  console.warn("[Jira webhook keepalive] Slack not available, cannot send notification");
@@ -27820,7 +27844,7 @@ async function deleteJiraWebhook(webhookId) {
27820
27844
  console.log(`[Jira webhook keepalive] Deleted webhook id=${webhookId}`);
27821
27845
  }
27822
27846
  async function overwriteWebhookIds(next) {
27823
- const { getDbClient: getDbClient2 } = await import("./db-bezm97r9.js");
27847
+ const { getDbClient: getDbClient2 } = await import("./db-w8ghhsgf.js");
27824
27848
  await getDbClient2().transaction(async (tx) => {
27825
27849
  const row = await tx.get("SELECT metadata FROM oauth_apps WHERE provider = 'jira'");
27826
27850
  if (!row) {
@@ -101555,7 +101579,7 @@ async function reloadGlobalConfigsAndIntegrations() {
101555
101579
  return runWithoutRequestAuth(() => reloadGlobalConfigsAndIntegrationsInner());
101556
101580
  }
101557
101581
  async function reloadGlobalConfigsAndIntegrationsInner() {
101558
- const { getEmbeddingProvider: getEmbeddingProvider2, resetEmbeddingProvider } = await import("./index-yp8rasxk.js");
101582
+ const { getEmbeddingProvider: getEmbeddingProvider2, resetEmbeddingProvider } = await import("./index-dc2ek6bw.js");
101559
101583
  const wasEmbeddingsConfigured = getEmbeddingProvider2().isConfigured();
101560
101584
  const updated = await loadGlobalConfigsIntoEnv(true);
101561
101585
  await stopSlackApp();
@@ -101568,10 +101592,10 @@ async function reloadGlobalConfigsAndIntegrationsInner() {
101568
101592
  integrations.push("embeddings");
101569
101593
  }
101570
101594
  if (!wasEmbeddingsConfigured && isEmbeddingsConfigured) {
101571
- import("./boot-reembed-r00j03f3.js").then(({ runBootReembed }) => runBootReembed()).catch((err) => {
101595
+ import("./boot-reembed-zfxb937k.js").then(({ runBootReembed }) => runBootReembed()).catch((err) => {
101572
101596
  console.error("[config-reload] memory backfill failed (non-fatal):", err);
101573
101597
  });
101574
- import("./boot-reembed-0be1krkm.js").then(({ runBootReembedScripts }) => runBootReembedScripts()).catch((err) => {
101598
+ import("./boot-reembed-r6shx5qx.js").then(({ runBootReembedScripts }) => runBootReembedScripts()).catch((err) => {
101575
101599
  console.error("[config-reload] script backfill failed (non-fatal):", err);
101576
101600
  });
101577
101601
  }
@@ -102384,7 +102408,7 @@ function setPreloadedTools(server, names) {
102384
102408
  async function applyPreToolCall(name, args, requestInfo, inputSchema) {
102385
102409
  if (requestInfo.callOrigin !== "mcp")
102386
102410
  return { args };
102387
- const dispatcher = await import("./dispatcher-a97hc33y.js");
102411
+ const dispatcher = await import("./dispatcher-cp1rknjz.js");
102388
102412
  const result = await dispatcher.dispatchPre("pre.tool.call", { tool: name, args, requestInfo }, inputSchema ? {
102389
102413
  validateModify: async (data) => {
102390
102414
  const schema = normalizeObjectSchema(inputSchema) ?? inputSchema;
@@ -121377,8 +121401,8 @@ var registerListSchedulesTool = (server) => {
121377
121401
  keyPrefix: AssetKeySchema.optional().describe("Filter by namespace subtree."),
121378
121402
  scheduleType: _enum(["recurring", "one_time"]).optional().describe("Filter by schedule type"),
121379
121403
  hideCompleted: boolean().default(true).optional().describe("Hide completed one-time schedules (default: true)"),
121380
- consecutiveErrorsMin: number().int().min(0).optional().describe("Only return schedules with at least this many consecutive errors."),
121381
- lastRunStatus: _enum(["failed", "succeeded"]).optional().describe("Filter by derived last run status. `failed` means consecutiveErrors > 0; `succeeded` means lastRunAt is set and consecutiveErrors is 0."),
121404
+ consecutiveErrorsMin: number().int().min(0).optional().describe("Only return schedules with at least this many consecutive dispatch errors (the scheduler failed to create the task, workflow run, or script run). Does not count spawned tasks that later failed; for those use get-tasks with scheduleId and status failed."),
121405
+ lastRunStatus: _enum(["failed", "succeeded"]).optional().describe("Filter by derived last dispatch status. `failed` means consecutiveErrors > 0 (the last dispatch attempt errored); `succeeded` means lastRunAt is set and consecutiveErrors is 0. Reflects dispatch only, not the outcome of spawned tasks; for those use get-tasks with scheduleId and status failed."),
121382
121406
  includeFull: boolean().optional().describe("Return the full `taskTemplate` instead of a short `taskTemplatePreview`. Default false.")
121383
121407
  }),
121384
121408
  outputSchema: swarmToolOutputSchema({
@@ -131341,7 +131365,7 @@ class HumanInTheLoopExecutor extends BaseExecutor {
131341
131365
  }
131342
131366
  if (notification.channel === "slack") {
131343
131367
  try {
131344
- const { getSlackApp: getSlackApp2 } = await import("./app-tz2qrnah.js");
131368
+ const { getSlackApp: getSlackApp2 } = await import("./app-enysy1zd.js");
131345
131369
  const slackApp = getSlackApp2();
131346
131370
  if (!slackApp) {
131347
131371
  console.warn("[HITL] Slack not initialized — cannot send notification");
@@ -131470,7 +131494,7 @@ class NotifyExecutor extends BaseExecutor {
131470
131494
  }
131471
131495
  }
131472
131496
  case "slack": {
131473
- const { getSlackApp: getSlackApp2 } = await import("./app-tz2qrnah.js");
131497
+ const { getSlackApp: getSlackApp2 } = await import("./app-enysy1zd.js");
131474
131498
  const app = getSlackApp2();
131475
131499
  if (!app) {
131476
131500
  return {
@@ -5,12 +5,12 @@ import {
5
5
  instantFlush,
6
6
  requestSlackThreadSteering,
7
7
  wasEventSeen
8
- } from "./cli-tp0d7vzb.js";
8
+ } from "./cli-jytrw2na.js";
9
9
  import {
10
10
  enrichSlackUserEmail,
11
11
  resolveSlackUserId,
12
12
  rewriteSlackMentions
13
- } from "./cli-9w4ex8vh.js";
13
+ } from "./cli-74h6f2bp.js";
14
14
  import {
15
15
  TaskCreationBlockedError,
16
16
  broadcastMatches,
@@ -23,14 +23,14 @@ import {
23
23
  hasOtherUserMention,
24
24
  notifySlackFileFailures,
25
25
  routeMessage
26
- } from "./cli-9pyah9c4.js";
26
+ } from "./cli-01vfmq8c.js";
27
27
  import {
28
28
  ackSlackMessage,
29
29
  buildTreeBlocks,
30
30
  ensureSlackThreadTree,
31
31
  isSlackRenderV2Enabled,
32
32
  registerTreeMessage
33
- } from "./cli-7vj52450.js";
33
+ } from "./cli-9p33cz9h.js";
34
34
  import {
35
35
  getAgentById,
36
36
  getAgentWorkingOnThread,
@@ -43,7 +43,7 @@ import {
43
43
  isExtensionAgent,
44
44
  reactionName,
45
45
  slackContextKey
46
- } from "./cli-24w39x6n.js";
46
+ } from "./cli-awwphhcs.js";
47
47
  import {
48
48
  init_resolver,
49
49
  resolveTemplate
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  buildModelsDevSeedRows,
3
3
  loadModelsDevCache
4
- } from "./cli-t1cd3mhp.js";
4
+ } from "./cli-xf5b7y1f.js";
5
5
  import {
6
6
  createLogEntry,
7
7
  getActivePricingRow,
8
8
  getDbClient,
9
9
  init_db,
10
10
  insertPricingRow
11
- } from "./cli-24w39x6n.js";
11
+ } from "./cli-awwphhcs.js";
12
12
  import {
13
13
  init_secret_scrubber,
14
14
  scrubSecrets
@@ -4,12 +4,12 @@ import {
4
4
  linkIdentity,
5
5
  recordUnmappedIdentity,
6
6
  resolveIdentity
7
- } from "./cli-9pyah9c4.js";
7
+ } from "./cli-01vfmq8c.js";
8
8
  import {
9
9
  getKv,
10
10
  init_db,
11
11
  upsertKv
12
- } from "./cli-24w39x6n.js";
12
+ } from "./cli-awwphhcs.js";
13
13
 
14
14
  // src/slack/enrich.ts
15
15
  init_db();
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  init_package,
3
3
  package_default
4
- } from "./cli-865swy5p.js";
4
+ } from "./cli-sgyqyyxe.js";
5
5
 
6
6
  // src/commands/shared/client-config.ts
7
7
  init_package();
@@ -57,7 +57,7 @@ import {
57
57
  setSlackMessageTracking,
58
58
  slackContextKey,
59
59
  updateSlackMessageRecord
60
- } from "./cli-24w39x6n.js";
60
+ } from "./cli-awwphhcs.js";
61
61
  import {
62
62
  init_types,
63
63
  isTerminalTaskStatus
@@ -52883,7 +52883,7 @@ async function initOtel(serviceRole = process.env.AGENT_ROLE || "api") {
52883
52883
  return;
52884
52884
  initialized = true;
52885
52885
  try {
52886
- const impl = await import("./otel-impl-jgdfm26f.js");
52886
+ const impl = await import("./otel-impl-2ez6xk57.js");
52887
52887
  await impl.boot(serviceRole);
52888
52888
  realWithSpan = impl.withSpan;
52889
52889
  realStartSpan = impl.startSpan;
@@ -54285,15 +54285,15 @@ async function initSlackApp() {
54285
54285
  ...slackApiUrl ? { clientOptions: { slackApiUrl } } : {}
54286
54286
  });
54287
54287
  initialized2 = true;
54288
- const { registerMessageHandler } = await import("./handlers-wtdy1x02.js");
54289
- const { registerCommandHandler } = await import("./commands-z3gd8ppc.js");
54290
- const { registerActionHandlers } = await import("./actions-wd41qtdc.js");
54291
- const { registerWorkObjectHandlers } = await import("./work-objects-sjbcmvep.js");
54288
+ const { registerMessageHandler } = await import("./handlers-egfhr351.js");
54289
+ const { registerCommandHandler } = await import("./commands-hxy2y2sp.js");
54290
+ const { registerActionHandlers } = await import("./actions-9rrg0zxm.js");
54291
+ const { registerWorkObjectHandlers } = await import("./work-objects-ezmggdne.js");
54292
54292
  registerMessageHandler(app);
54293
54293
  registerCommandHandler(app);
54294
54294
  registerActionHandlers(app);
54295
54295
  registerWorkObjectHandlers(app);
54296
- const { createAssistant } = await import("./assistant-c3q1zj2t.js");
54296
+ const { createAssistant } = await import("./assistant-zegamy48.js");
54297
54297
  app.assistant(createAssistant());
54298
54298
  return app;
54299
54299
  }
@@ -54302,7 +54302,7 @@ async function startSlackApp() {
54302
54302
  await initSlackApp();
54303
54303
  }
54304
54304
  if (app) {
54305
- const { isSlackRenderV2Enabled: isSlackRenderV2Enabled2 } = await import("./render-v2-dbvpyysc.js");
54305
+ const { isSlackRenderV2Enabled: isSlackRenderV2Enabled2 } = await import("./render-v2-f026j6c4.js");
54306
54306
  if (isSlackRenderV2Enabled2())
54307
54307
  await ensureSlackRenderV2Activation();
54308
54308
  await app.start();
@@ -77,7 +77,7 @@ import {
77
77
  import {
78
78
  init_package,
79
79
  package_default
80
- } from "./cli-865swy5p.js";
80
+ } from "./cli-sgyqyyxe.js";
81
81
  import {
82
82
  init_secret_scrubber,
83
83
  registerVolatileSecret,
@@ -11,7 +11,7 @@ import {
11
11
  } from "./cli-f14fvzag.js";
12
12
  import {
13
13
  embedScript
14
- } from "./cli-28wkjpdp.js";
14
+ } from "./cli-wsed24mk.js";
15
15
  import {
16
16
  calculatePKCECodeChallenge,
17
17
  ensureAuthorizationTokenOrThrow,
@@ -23,7 +23,7 @@ import {
23
23
  oauthAppRowToProviderConfig,
24
24
  updateAuthorizationTokens,
25
25
  upsertAuthorization
26
- } from "./cli-90x9ewbz.js";
26
+ } from "./cli-wb2zvbfg.js";
27
27
  import {
28
28
  CredentialBroker,
29
29
  DEFAULT_CREDENTIAL_BINDINGS,
@@ -43,7 +43,7 @@ import {
43
43
  normalizeDateRequired,
44
44
  placeholderForConfigKey,
45
45
  upsertSwarmConfig
46
- } from "./cli-24w39x6n.js";
46
+ } from "./cli-awwphhcs.js";
47
47
  import {
48
48
  defaultAssetKey,
49
49
  init_key