@voltro/cli 0.13.0 → 0.15.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 (166) hide show
  1. package/CHANGELOG.md +412 -0
  2. package/dist/{apiBuild-B6_ehbem.js → apiBuild-CHItlwPO.js} +2 -2
  3. package/dist/apiBuild-D8juhYsS.js +2 -0
  4. package/dist/bin.js +3 -3
  5. package/dist/{commands-DYOuGlEC.js → commands-CPQuQRXh.js} +3967 -2831
  6. package/dist/{dbCommand-DIOJQwsq.js → dbCommand-B8F29zV0.js} +2 -1
  7. package/dist/dbCommand-Dt7BtdMd.js +2 -0
  8. package/dist/{dev-xdijqojc.js → dev-BHLM3RPX.js} +1 -1
  9. package/dist/{dev-Fb9BmavX.js → dev-C2lCUhYI.js} +1478 -1347
  10. package/dist/fileConventions-Cu0tM-Bl.js +29 -0
  11. package/dist/{frameworkTableAssembly-CYlrafoK.js → frameworkTableAssembly-BA2bAmYN.js} +164 -163
  12. package/dist/frameworkTableAssembly-D1zJSgOU.js +2 -0
  13. package/dist/index.js +1 -1
  14. package/dist/{inspectMetrics-DOiiII34.js → inspectMetrics-CYDSO3za.js} +955 -945
  15. package/dist/{serveCommand-CqYxzBZR.js → serveCommand-DBzQcCuv.js} +410 -396
  16. package/dist/serveEntry.js +2 -2
  17. package/dist/{start-CjG_0xhR.js → start-BtgatJN3.js} +246 -246
  18. package/dist/startEntry.js +2 -2
  19. package/package.json +17 -17
  20. package/templates/AGENTS.core.md +77 -3
  21. package/templates/AGENTS.md +78 -4
  22. package/templates/agent-docs/_index.md +1 -1
  23. package/templates/agent-docs/_manifest.json +2 -2
  24. package/templates/agent-docs/authentication.md +34 -2
  25. package/templates/agent-docs/cli.md +116 -2
  26. package/templates/agent-docs/data.md +195 -3
  27. package/templates/agent-docs/database/hosting.md +2 -2
  28. package/templates/agent-docs/database/migrations.md +77 -3
  29. package/templates/agent-docs/database/overview.md +11 -0
  30. package/templates/agent-docs/database/seedsdialects.md +53 -1
  31. package/templates/agent-docs/internationalization.md +3 -3
  32. package/templates/agent-docs/introduction.md +133 -2
  33. package/templates/agent-docs/plugins.md +2 -1
  34. package/templates/agent-docs/reference.md +4 -4
  35. package/templates/agent-docs/routing.md +48 -43
  36. package/templates/agent-docs/schema-driven-ui.md +14 -3
  37. package/templates/agent-docs/templates/apibackends.md +1 -8
  38. package/templates/agent-docs/templates/appshells.md +24 -24
  39. package/templates/agent-docs/testing.md +16 -1
  40. package/templates/agent-docs/whats-new.md +247 -39
  41. package/templates/apps/api-ai/database/schema.ts +0 -2
  42. package/templates/apps/api-ai/package.json +7 -7
  43. package/templates/apps/api-auth/package.json +8 -8
  44. package/templates/apps/api-backend/database/schema.ts +0 -3
  45. package/templates/apps/api-backend/package.json +7 -7
  46. package/templates/apps/api-backend-deactivation/database/schema.ts +0 -1
  47. package/templates/apps/api-backend-deactivation/package.json +7 -7
  48. package/templates/apps/api-backend-mail/database/schema.ts +0 -3
  49. package/templates/apps/api-backend-mail/package.json +8 -8
  50. package/templates/apps/api-backend-mariadb/database/schema.ts +0 -3
  51. package/templates/apps/api-backend-mariadb/package.json +9 -9
  52. package/templates/apps/api-backend-storage/database/schema.ts +0 -3
  53. package/templates/apps/api-backend-storage/package.json +8 -8
  54. package/templates/apps/api-data-advanced/database/authors.entity.ts +0 -2
  55. package/templates/apps/api-data-advanced/database/books.entity.ts +0 -1
  56. package/templates/apps/api-data-advanced/package.json +8 -8
  57. package/templates/apps/api-durable/database/schema.ts +0 -3
  58. package/templates/apps/api-durable/package.json +8 -8
  59. package/templates/apps/api-feature-flags/database/schema.ts +0 -1
  60. package/templates/apps/api-feature-flags/package.json +9 -9
  61. package/templates/apps/api-governance/database/schema.ts +0 -1
  62. package/templates/apps/api-governance/package.json +8 -8
  63. package/templates/apps/api-kv/database/schema.ts +0 -3
  64. package/templates/apps/api-kv/package.json +8 -8
  65. package/templates/apps/api-moderation/database/schema.ts +0 -2
  66. package/templates/apps/api-moderation/package.json +8 -8
  67. package/templates/apps/api-observability/database/schema.ts +0 -1
  68. package/templates/apps/api-observability/package.json +8 -8
  69. package/templates/apps/api-ratelimit/database/schema.ts +0 -1
  70. package/templates/apps/api-ratelimit/package.json +8 -8
  71. package/templates/apps/api-rbac/database/schema.ts +0 -2
  72. package/templates/apps/api-rbac/package.json +8 -8
  73. package/templates/apps/api-rest/database/schema.ts +0 -3
  74. package/templates/apps/api-rest/package.json +7 -7
  75. package/templates/apps/api-saas/database/schema.ts +0 -1
  76. package/templates/apps/api-saas/package.json +11 -11
  77. package/templates/apps/api-search/database/schema.ts +0 -1
  78. package/templates/apps/api-search/package.json +8 -8
  79. package/templates/apps/api-versioning/database/schema.ts +0 -1
  80. package/templates/apps/api-versioning/package.json +8 -8
  81. package/templates/apps/api-webhooks/database/schema.ts +0 -1
  82. package/templates/apps/api-webhooks/package.json +9 -9
  83. package/templates/apps/changelog/package.json +6 -6
  84. package/templates/apps/changelog/src/pages/[locale]/{[slug].tsx → [slug].page.tsx} +2 -2
  85. package/templates/apps/changelog/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
  86. package/templates/apps/changelog/src/pages/[locale]/mirrors.test.tsx +2 -2
  87. package/templates/apps/changelog/src/pages/{[slug].test.tsx → [slug].page.test.tsx} +1 -1
  88. package/templates/apps/changelog/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  89. package/templates/apps/edge-functions/package.json +2 -2
  90. package/templates/apps/frontend-admin/package.json +8 -8
  91. package/templates/apps/frontend-admin/src/pages/(marketing)/{index.test.tsx → index.page.test.tsx} +1 -1
  92. package/templates/apps/frontend-admin/src/pages/(marketing)/{login.test.tsx → login.page.test.tsx} +1 -1
  93. package/templates/apps/frontend-admin/src/pages/admin/entity.test.tsx +1 -1
  94. package/templates/apps/frontend-admin/src/pages/admin/{index.test.tsx → index.page.test.tsx} +1 -1
  95. package/templates/apps/frontend-app/package.json +8 -8
  96. package/templates/apps/frontend-app/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  97. package/templates/apps/frontend-app/src/pages/{schema-ui.test.tsx → schema-ui.page.test.tsx} +1 -1
  98. package/templates/apps/frontend-blank/package.json +7 -7
  99. package/templates/apps/frontend-blank/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  100. package/templates/apps/frontend-contact/package.json +7 -7
  101. package/templates/apps/frontend-contact/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
  102. package/templates/apps/frontend-contact/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  103. package/templates/apps/frontend-dashboard/package.json +7 -7
  104. package/templates/apps/frontend-dashboard/src/pages/(marketing)/{index.test.tsx → index.page.test.tsx} +1 -1
  105. package/templates/apps/frontend-dashboard/src/pages/(marketing)/{login.test.tsx → login.page.test.tsx} +1 -1
  106. package/templates/apps/frontend-dashboard/src/pages/dashboard/{index.test.tsx → index.page.test.tsx} +1 -1
  107. package/templates/apps/frontend-dashboard/src/pages/dashboard/{settings.test.tsx → settings.page.test.tsx} +1 -1
  108. package/templates/apps/frontend-docs/package.json +7 -7
  109. package/templates/apps/frontend-docs/src/pages/[locale]/docs/{[...slug].tsx → [...slug].page.tsx} +3 -3
  110. package/templates/apps/frontend-docs/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
  111. package/templates/apps/frontend-docs/src/pages/[locale]/mirrors.test.tsx +2 -2
  112. package/templates/apps/frontend-docs/src/pages/docs/{[...slug].test.tsx → [...slug].page.test.tsx} +1 -1
  113. package/templates/apps/frontend-docs/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  114. package/templates/apps/frontend-i18n/package.json +6 -6
  115. package/templates/apps/frontend-i18n/src/pages/[locale]/{about.tsx → about.page.tsx} +2 -2
  116. package/templates/apps/frontend-i18n/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
  117. package/templates/apps/frontend-i18n/src/pages/[locale]/mirrors.test.tsx +2 -2
  118. package/templates/apps/frontend-i18n/src/pages/{about.test.tsx → about.page.test.tsx} +1 -1
  119. package/templates/apps/frontend-i18n/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  120. package/templates/apps/frontend-landing/package.json +7 -7
  121. package/templates/apps/frontend-landing/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
  122. package/templates/apps/frontend-landing/src/pages/[locale]/mirrors.test.tsx +1 -1
  123. package/templates/apps/frontend-landing/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  124. package/templates/apps/frontend-spa/package.json +7 -7
  125. package/templates/apps/frontend-spa/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  126. package/templates/apps/frontend-ssr/package.json +7 -7
  127. package/templates/apps/frontend-ssr/src/pages/{feed-swr.test.tsx → feed-swr.page.test.tsx} +1 -1
  128. package/templates/apps/frontend-ssr/src/pages/{feed.test.tsx → feed.page.test.tsx} +1 -1
  129. package/templates/apps/frontend-ssr/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  130. package/templates/apps/frontend-ssr-api/package.json +8 -8
  131. package/templates/apps/frontend-ssr-api/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  132. package/templates/apps/frontend-static-blog/package.json +6 -6
  133. package/templates/apps/frontend-static-blog/src/pages/[locale]/blog/{[slug].tsx → [slug].page.tsx} +2 -2
  134. package/templates/apps/frontend-static-blog/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
  135. package/templates/apps/frontend-static-blog/src/pages/[locale]/mirrors.test.tsx +2 -2
  136. package/templates/apps/frontend-static-blog/src/pages/blog/{[slug].test.tsx → [slug].page.test.tsx} +1 -1
  137. package/templates/apps/frontend-static-blog/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
  138. package/dist/apiBuild-Bzpb383i.js +0 -2
  139. package/dist/dbCommand-ADD4mrTI.js +0 -2
  140. package/dist/frameworkTableAssembly-XvKO7wQt.js +0 -2
  141. /package/templates/apps/changelog/src/pages/{[slug].tsx → [slug].page.tsx} +0 -0
  142. /package/templates/apps/changelog/src/pages/{index.tsx → index.page.tsx} +0 -0
  143. /package/templates/apps/frontend-admin/src/pages/(marketing)/{index.tsx → index.page.tsx} +0 -0
  144. /package/templates/apps/frontend-admin/src/pages/(marketing)/{login.tsx → login.page.tsx} +0 -0
  145. /package/templates/apps/frontend-admin/src/pages/admin/{[entity].tsx → [entity].page.tsx} +0 -0
  146. /package/templates/apps/frontend-admin/src/pages/admin/{index.tsx → index.page.tsx} +0 -0
  147. /package/templates/apps/frontend-app/src/pages/{index.tsx → index.page.tsx} +0 -0
  148. /package/templates/apps/frontend-app/src/pages/{schema-ui.tsx → schema-ui.page.tsx} +0 -0
  149. /package/templates/apps/frontend-blank/src/pages/{index.tsx → index.page.tsx} +0 -0
  150. /package/templates/apps/frontend-contact/src/pages/{index.tsx → index.page.tsx} +0 -0
  151. /package/templates/apps/frontend-dashboard/src/pages/(marketing)/{index.tsx → index.page.tsx} +0 -0
  152. /package/templates/apps/frontend-dashboard/src/pages/(marketing)/{login.tsx → login.page.tsx} +0 -0
  153. /package/templates/apps/frontend-dashboard/src/pages/dashboard/{index.tsx → index.page.tsx} +0 -0
  154. /package/templates/apps/frontend-dashboard/src/pages/dashboard/{settings.tsx → settings.page.tsx} +0 -0
  155. /package/templates/apps/frontend-docs/src/pages/docs/{[...slug].tsx → [...slug].page.tsx} +0 -0
  156. /package/templates/apps/frontend-docs/src/pages/{index.tsx → index.page.tsx} +0 -0
  157. /package/templates/apps/frontend-i18n/src/pages/{about.tsx → about.page.tsx} +0 -0
  158. /package/templates/apps/frontend-i18n/src/pages/{index.tsx → index.page.tsx} +0 -0
  159. /package/templates/apps/frontend-landing/src/pages/{index.tsx → index.page.tsx} +0 -0
  160. /package/templates/apps/frontend-spa/src/pages/{index.tsx → index.page.tsx} +0 -0
  161. /package/templates/apps/frontend-ssr/src/pages/{feed-swr.tsx → feed-swr.page.tsx} +0 -0
  162. /package/templates/apps/frontend-ssr/src/pages/{feed.tsx → feed.page.tsx} +0 -0
  163. /package/templates/apps/frontend-ssr/src/pages/{index.tsx → index.page.tsx} +0 -0
  164. /package/templates/apps/frontend-ssr-api/src/pages/{index.tsx → index.page.tsx} +0 -0
  165. /package/templates/apps/frontend-static-blog/src/pages/blog/{[slug].tsx → [slug].page.tsx} +0 -0
  166. /package/templates/apps/frontend-static-blog/src/pages/{index.tsx → index.page.tsx} +0 -0
@@ -1,174 +1,175 @@
1
1
  import { n as e } from "./appModuleLoader-C9r9mxZt.js";
2
- import { basename as t, join as n } from "node:path";
3
- import { pathToFileURL as r } from "node:url";
4
- import { Effect as i } from "effect";
5
- import { promises as a } from "node:fs";
6
- import { _voltroConnectionGrantsTable as o, _voltroConnectionsTable as s, _voltroScheduleClaimsTable as c, _voltroScheduleRunsTable as l, _voltroTracesTable as u, _voltroUndoLogTable as d, _voltroWakeupsTable as ee, _voltroWorkflowEventDeliveriesTable as f, _voltroWorkflowEventsTable as te, outboxAttemptsTable as ne, outboxTable as re, undoCaptureEnabled as ie } from "@voltro/runtime";
7
- import { SqlClient as p } from "@effect/sql";
8
- import { _voltroWorkflowRunEventsTable as ae, _voltroWorkflowRunStepsTable as oe, _voltroWorkflowRunsTable as se, _voltroWorkflowStartContextsTable as m } from "@voltro/workflow";
9
- import { agentMessagesTable as ce, agentThreadsTable as le, aiBudgetTable as ue, aiUsageTable as de, isAgentDescriptor as fe, isAgentExecutor as pe, resolveToolModuleHandlers as me } from "@voltro/ai";
10
- import { _voltroApiKeysTable as he, _voltroCdcOffsetsTable as ge, _voltroIdempotencyTable as _e, _voltroKvTable as ve, _voltroMigrationPlansTable as ye, _voltroMigrationsTable as be, _voltroMssqlCdcOffsetsTable as h, _voltroSeedsTable as g, lt as _ } from "@voltro/database";
11
- import { _voltroWebhookDeliveriesTable as v, _voltroWebhookTargetsTable as y } from "@voltro/plugin-webhooks/mixin";
12
- import { _voltroStorageBlobsTable as b, _voltroStorageGrantsTable as x, _voltroStorageRefsTable as S, _voltroStorageUsageTable as C } from "@voltro/plugin-storage";
13
- import { defineAction as w, defineMutation as T, defineQuery as E } from "@voltro/protocol";
2
+ import { C as t, D as n, T as r, i, l as a } from "./fileConventions-Cu0tM-Bl.js";
3
+ import { basename as o, join as s } from "node:path";
4
+ import { pathToFileURL as c } from "node:url";
5
+ import { Effect as l } from "effect";
6
+ import { promises as u } from "node:fs";
7
+ import { _voltroConnectionGrantsTable as d, _voltroConnectionsTable as f, _voltroScheduleClaimsTable as p, _voltroScheduleRunsTable as m, _voltroTracesTable as h, _voltroUndoLogTable as ee, _voltroWakeupsTable as g, _voltroWorkflowEventDeliveriesTable as te, _voltroWorkflowEventsTable as ne, outboxAttemptsTable as re, outboxTable as ie, undoCaptureEnabled as ae } from "@voltro/runtime";
8
+ import { SqlClient as _ } from "@effect/sql";
9
+ import { _voltroWorkflowRunEventsTable as oe, _voltroWorkflowRunStepsTable as se, _voltroWorkflowRunsTable as ce, _voltroWorkflowStartContextsTable as le } from "@voltro/workflow";
10
+ import { agentMessagesTable as ue, agentThreadsTable as de, aiBudgetTable as fe, aiUsageTable as pe, isAgentDescriptor as me, isAgentExecutor as v, resolveToolModuleHandlers as y } from "@voltro/ai";
11
+ import { _voltroApiKeysTable as b, _voltroCdcOffsetsTable as x, _voltroIdempotencyTable as S, _voltroKvTable as C, _voltroMigrationPlansTable as w, _voltroMigrationsTable as T, _voltroMssqlCdcOffsetsTable as E, _voltroSeedsTable as D, lt as O } from "@voltro/database";
12
+ import { _voltroWebhookDeliveriesTable as k, _voltroWebhookTargetsTable as A } from "@voltro/plugin-webhooks/mixin";
13
+ import { _voltroStorageBlobsTable as j, _voltroStorageGrantsTable as M, _voltroStorageRefsTable as N, _voltroStorageUsageTable as P } from "@voltro/plugin-storage";
14
+ import { defineAction as F, defineMutation as I, defineQuery as L } from "@voltro/protocol";
14
15
  //#region src/frameworkTables.ts
15
- var D = [
16
+ var R = [
16
17
  {
17
- table: be,
18
+ table: T,
18
19
  when: "always"
19
20
  },
20
21
  {
21
- table: g,
22
+ table: D,
22
23
  when: "always"
23
24
  },
24
25
  {
25
- table: ye,
26
+ table: w,
26
27
  when: "always"
27
28
  },
28
29
  {
29
- table: se,
30
+ table: ce,
30
31
  when: "workflows"
31
32
  },
32
33
  {
33
- table: oe,
34
+ table: se,
34
35
  when: "workflows"
35
36
  },
36
37
  {
37
- table: ae,
38
+ table: oe,
38
39
  when: "workflows"
39
40
  },
40
41
  {
41
- table: m,
42
+ table: le,
42
43
  when: "workflows"
43
44
  },
44
45
  {
45
- table: te,
46
+ table: ne,
46
47
  when: "workflows"
47
48
  },
48
49
  {
49
- table: f,
50
+ table: te,
50
51
  when: "workflows"
51
52
  },
52
53
  {
53
- table: l,
54
+ table: m,
54
55
  when: "schedules"
55
56
  },
56
57
  {
57
- table: c,
58
+ table: p,
58
59
  when: "schedules"
59
60
  },
60
61
  {
61
- table: y,
62
+ table: A,
62
63
  when: "webhooks"
63
64
  },
64
65
  {
65
- table: v,
66
+ table: k,
66
67
  when: "webhooks"
67
68
  },
68
69
  {
69
- table: u,
70
+ table: h,
70
71
  when: "traces"
71
72
  },
72
73
  {
73
- table: d,
74
+ table: ee,
74
75
  when: "undo"
75
76
  },
76
77
  {
77
- table: re,
78
+ table: ie,
78
79
  when: "outbox"
79
80
  },
80
81
  {
81
- table: ne,
82
+ table: re,
82
83
  when: "outbox"
83
84
  },
84
85
  {
85
- table: s,
86
+ table: f,
86
87
  when: "connections"
87
88
  },
88
89
  {
89
- table: o,
90
+ table: d,
90
91
  when: "connections"
91
92
  },
92
93
  {
93
- table: ee,
94
+ table: g,
94
95
  when: "always"
95
96
  },
96
97
  {
97
- table: S,
98
+ table: N,
98
99
  when: "always"
99
100
  },
100
101
  {
101
- table: x,
102
+ table: M,
102
103
  when: "always"
103
104
  },
104
105
  {
105
- table: b,
106
+ table: j,
106
107
  when: "always"
107
108
  },
108
109
  {
109
- table: C,
110
+ table: P,
110
111
  when: "always"
111
112
  },
112
113
  {
113
- table: _e,
114
+ table: S,
114
115
  when: "always"
115
116
  },
116
117
  {
117
- table: he,
118
+ table: b,
118
119
  when: "always"
119
120
  },
120
121
  {
121
- table: ve,
122
+ table: C,
122
123
  when: "always"
123
124
  }
124
- ], O = (e) => {
125
- let t = D.filter((t) => t.when === "always" || t.when === "workflows" && e.workflows || t.when === "schedules" && e.schedules || t.when === "webhooks" && e.webhooks || t.when === "traces" && e.traces || t.when === "undo" && e.undo === !0 || t.when === "outbox" && e.outbox === !0 || t.when === "connections" && e.connections === !0).map((e) => e.table);
126
- return e.cdc === !0 && t.push(e.cdcDialect === "mssql" ? h : ge), t;
127
- }, k = (e) => {
125
+ ], z = (e) => {
126
+ let t = R.filter((t) => t.when === "always" || t.when === "workflows" && e.workflows || t.when === "schedules" && e.schedules || t.when === "webhooks" && e.webhooks || t.when === "traces" && e.traces || t.when === "undo" && e.undo === !0 || t.when === "outbox" && e.outbox === !0 || t.when === "connections" && e.connections === !0).map((e) => e.table);
127
+ return e.cdc === !0 && t.push(e.cdcDialect === "mssql" ? E : x), t;
128
+ }, B = (e) => {
128
129
  let t = e.startsWith("@") ? e.replace(/^@[^/]+\//, "") : e;
129
130
  return (t.startsWith("plugin-") ? t.slice(7) : t).replace(/-([a-zA-Z0-9])/g, (e, t) => t.toUpperCase());
130
- }, A = (e) => {
131
+ }, he = (e) => {
131
132
  let t = e.startsWith("@") ? e.replace(/^@[^/]+\//, "") : e;
132
133
  return (t.startsWith("plugin-") ? t.slice(7) : t).replace(/#/g, "--").replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
133
- }, j = (e, t) => t.name.includes(".") ? t.name : `${k(e.name)}.${t.name}`, M = (e, t, n) => {
134
+ }, ge = (e, t) => t.name.includes(".") ? t.name : `${B(e.name)}.${t.name}`, _e = (e, t, n) => {
134
135
  switch (e) {
135
- case "query": return E({
136
+ case "query": return L({
136
137
  name: t,
137
138
  input: n.input,
138
139
  output: n.output,
139
140
  ...n.error === void 0 ? {} : { error: n.error },
140
141
  ...n.source === void 0 ? {} : { source: n.source }
141
142
  });
142
- case "mutation": return T({
143
+ case "mutation": return I({
143
144
  name: t,
144
145
  input: n.input,
145
146
  output: n.output,
146
147
  ...n.error === void 0 ? {} : { error: n.error }
147
148
  });
148
- case "action": return w({
149
+ case "action": return F({
149
150
  name: t,
150
151
  input: n.input,
151
152
  output: n.output,
152
153
  ...n.error === void 0 ? {} : { error: n.error }
153
154
  });
154
155
  }
155
- }, N = (e) => (t, n) => i.suspend(() => {
156
+ }, ve = (e) => (t, n) => l.suspend(() => {
156
157
  let r = { request: {
157
158
  subject: n.request.subject,
158
159
  traceId: n.request.traceId
159
160
  } };
160
161
  return e.execute(t, r);
161
- }), xe = (e) => {
162
+ }), ye = (e) => {
162
163
  let t = [];
163
164
  for (let n of e) {
164
165
  let e = n.routes ?? [];
165
166
  for (let r of e) {
166
- let e = j(n, r), i = M(r.kind, e, r);
167
+ let e = ge(n, r), i = _e(r.kind, e, r);
167
168
  t.push({
168
169
  kind: r.kind,
169
170
  file: `plugin:${n.name}`,
170
171
  descriptor: i,
171
- executor: N(r),
172
+ executor: ve(r),
172
173
  plugin: {
173
174
  name: n.name,
174
175
  version: n.version
@@ -177,7 +178,7 @@ var D = [
177
178
  }
178
179
  }
179
180
  return t;
180
- }, Se = (e, t) => {
181
+ }, be = (e, t) => {
181
182
  let n = /* @__PURE__ */ new Map();
182
183
  for (let e of t) n.set(e, "user-route");
183
184
  for (let t of e) {
@@ -185,85 +186,85 @@ var D = [
185
186
  if (r !== void 0) throw Error(`plugin route tag collision: "${e}" declared by plugin "${t.plugin.name}" but already claimed by ${r === "user-route" ? "a user-authored route" : `plugin "${r}"`}`);
186
187
  n.set(e, t.plugin.name);
187
188
  }
188
- }, P = "_voltro_plugin_migrations", Ce = () => i.gen(function* () {
189
- yield* (yield* p.SqlClient).unsafe(`
190
- CREATE TABLE IF NOT EXISTS ${P} (
189
+ }, V = "_voltro_plugin_migrations", xe = () => l.gen(function* () {
190
+ yield* (yield* _.SqlClient).unsafe(`
191
+ CREATE TABLE IF NOT EXISTS ${V} (
191
192
  id TEXT PRIMARY KEY,
192
193
  plugin_name TEXT NOT NULL,
193
194
  migration_id TEXT NOT NULL,
194
195
  description TEXT,
195
196
  applied_at TEXT NOT NULL
196
197
  );
197
- `).pipe(i.orDie);
198
- }), we = (e, t) => `${k(e)}__${t}`, Te = () => i.gen(function* () {
199
- let e = yield* p.SqlClient, t = yield* e`SELECT id FROM ${e(P)}`.pipe(i.orDie);
198
+ `).pipe(l.orDie);
199
+ }), Se = (e, t) => `${B(e)}__${t}`, Ce = () => l.gen(function* () {
200
+ let e = yield* _.SqlClient, t = yield* e`SELECT id FROM ${e(V)}`.pipe(l.orDie);
200
201
  return new Set(t.map((e) => e.id));
201
- }), Ee = (e) => i.gen(function* () {
202
- let t = yield* p.SqlClient, n = (/* @__PURE__ */ new Date()).toISOString();
202
+ }), we = (e) => l.gen(function* () {
203
+ let t = yield* _.SqlClient, n = (/* @__PURE__ */ new Date()).toISOString();
203
204
  yield* t`
204
- INSERT INTO ${t(P)} (id, plugin_name, migration_id, description, applied_at)
205
+ INSERT INTO ${t(V)} (id, plugin_name, migration_id, description, applied_at)
205
206
  VALUES (${e.key}, ${e.pluginName}, ${e.migration.id}, ${e.migration.description ?? null}, ${n})
206
- `.pipe(i.orDie);
207
- }), De = (e) => i.gen(function* () {
207
+ `.pipe(l.orDie);
208
+ }), Te = (e) => l.gen(function* () {
208
209
  let t = e.flatMap((e) => (e.extendSchema?.migrations ?? []).map((t) => ({
209
210
  plugin: e,
210
211
  migration: t
211
212
  })));
212
213
  if (t.length === 0) return [];
213
- yield* Ce();
214
- let n = yield* Te(), r = [];
215
- for (let { plugin: e, migration: a } of t) {
216
- let t = we(e.name, a.id), o = Date.now();
214
+ yield* xe();
215
+ let n = yield* Ce(), r = [];
216
+ for (let { plugin: e, migration: i } of t) {
217
+ let t = Se(e.name, i.id), a = Date.now();
217
218
  if (n.has(t)) {
218
219
  r.push({
219
220
  pluginName: e.name,
220
- migrationId: a.id,
221
+ migrationId: i.id,
221
222
  status: "skipped",
222
223
  durationMs: 0
223
224
  });
224
225
  continue;
225
226
  }
226
- let s = yield* p.SqlClient;
227
+ let o = yield* _.SqlClient;
227
228
  try {
228
- yield* a.up(s).pipe(i.mapError((e) => e)), yield* Ee({
229
+ yield* i.up(o).pipe(l.mapError((e) => e)), yield* we({
229
230
  key: t,
230
231
  pluginName: e.name,
231
- migration: a
232
+ migration: i
232
233
  }), r.push({
233
234
  pluginName: e.name,
234
- migrationId: a.id,
235
+ migrationId: i.id,
235
236
  status: "applied",
236
- durationMs: Date.now() - o
237
+ durationMs: Date.now() - a
237
238
  });
238
239
  } catch (t) {
239
240
  return r.push({
240
241
  pluginName: e.name,
241
- migrationId: a.id,
242
+ migrationId: i.id,
242
243
  status: "failed",
243
- durationMs: Date.now() - o,
244
+ durationMs: Date.now() - a,
244
245
  error: t
245
- }), yield* i.fail(/* @__PURE__ */ Error(`Plugin migration failed: ${e.name} ${a.id} — ${t instanceof Error ? t.message : String(t)}`));
246
+ }), yield* l.fail(/* @__PURE__ */ Error(`Plugin migration failed: ${e.name} ${i.id} — ${t instanceof Error ? t.message : String(t)}`));
246
247
  }
247
248
  }
248
249
  return r;
249
- }), Oe = (e) => e.filter((e) => e.extendSchema && (e.extendSchema.tables?.length ?? 0) + (e.extendSchema.migrations?.length ?? 0) > 0).map((e) => ({
250
+ }), Ee = (e) => e.filter((e) => e.extendSchema && (e.extendSchema.tables?.length ?? 0) + (e.extendSchema.migrations?.length ?? 0) > 0).map((e) => ({
250
251
  pluginName: e.name,
251
- pluginAlias: k(e.name),
252
+ pluginAlias: B(e.name),
252
253
  tables: e.extendSchema.tables?.length ?? 0,
253
254
  migrations: e.extendSchema.migrations?.length ?? 0
254
- })), ke = (e) => e.flatMap((e) => e.extendSchema?.tables ?? []), F = /(?<!\.server)\.agent\.tsx?$/, Ae = /\.agent\.server\.tsx?$/, I = /\.tool\.tsx?$/, L = async (t, n) => {
255
+ })), De = (e) => e.flatMap((e) => e.extendSchema?.tables ?? []), H = /(?<!\.server)\.agent\.tsx?$/, Oe = /\.agent\.server\.tsx?$/, U = /\.tool\.tsx?$/, ke = async (t, n) => {
255
256
  let r = 0;
256
- for (let i of t) if (I.test(i)) try {
257
+ for (let i of t) if (U.test(i)) try {
257
258
  let t = await e(i);
258
- r += me(t);
259
+ r += y(t);
259
260
  } catch (e) {
260
261
  n.warn("tool: failed to import — handler not wired", { file: i }, e);
261
262
  }
262
263
  return r;
263
- }, je = (e) => e.replace(/\.agent\.(tsx?)$/, ".agent.server.$1"), Me = async (t, n) => {
264
+ }, Ae = (e) => e.replace(/\.agent\.(tsx?)$/, ".agent.server.$1"), je = async (t, n) => {
264
265
  let r = [], i = /* @__PURE__ */ new Set();
265
266
  for (let a of t) {
266
- if (!F.test(a)) continue;
267
+ if (!H.test(a)) continue;
267
268
  let t;
268
269
  try {
269
270
  t = await e(a);
@@ -271,7 +272,7 @@ var D = [
271
272
  n.warn("agent: failed to import descriptor", { file: a }, e);
272
273
  continue;
273
274
  }
274
- let o = Object.values(t).find(fe);
275
+ let o = Object.values(t).find(me);
275
276
  if (o === void 0) {
276
277
  n.warn("agent: no defineAgent() descriptor export found", { file: a });
277
278
  continue;
@@ -283,7 +284,7 @@ var D = [
283
284
  });
284
285
  continue;
285
286
  }
286
- let s = je(a), c;
287
+ let s = Ae(a), c;
287
288
  try {
288
289
  c = await e(s);
289
290
  } catch (e) {
@@ -295,7 +296,7 @@ var D = [
295
296
  continue;
296
297
  }
297
298
  let l = c.default;
298
- if (!pe(l)) {
299
+ if (!v(l)) {
299
300
  n.warn("agent: executor file must default-export defineAgentExecutor(descriptor, {...})", {
300
301
  file: s,
301
302
  name: o.name
@@ -310,69 +311,69 @@ var D = [
310
311
  });
311
312
  }
312
313
  return { agents: r };
313
- }, R = /\.connection\.tsx?$/, Ne = (e) => e.replace(R, ""), Pe = async (n, r) => {
314
- let i = [], a = /* @__PURE__ */ new Map();
315
- for (let t of n) {
316
- let n;
314
+ }, W = /\.connection\.tsx?$/, Me = (e) => e.replace(W, ""), Ne = async (t, n) => {
315
+ let r = [], i = /* @__PURE__ */ new Map();
316
+ for (let a of t) {
317
+ let t;
317
318
  try {
318
- n = await e(t);
319
+ t = await e(a);
319
320
  } catch (e) {
320
- r.warn("connections: failed to import", { file: t }, e);
321
+ n.warn("connections: failed to import", { file: a }, e);
321
322
  continue;
322
323
  }
323
- let o = n.default;
324
+ let o = t.default;
324
325
  if (o === void 0 || typeof o != "object" || !o) {
325
- r.warn("connections: missing or non-object default export — expected `defineConnection({...})`", { file: t });
326
+ n.warn("connections: missing or non-object default export — expected `defineConnection({...})`", { file: a });
326
327
  continue;
327
328
  }
328
329
  let s = o;
329
330
  if (typeof s.id != "string" || s.id.length === 0) {
330
- r.warn("connections: invalid `id` field", { file: t });
331
+ n.warn("connections: invalid `id` field", { file: a });
331
332
  continue;
332
333
  }
333
334
  if (s.kind !== "oauth2" && s.kind !== "pat") {
334
- r.warn("connections: `kind` must be \"oauth2\" or \"pat\"", {
335
- file: t,
335
+ n.warn("connections: `kind` must be \"oauth2\" or \"pat\"", {
336
+ file: a,
336
337
  kind: String(s.kind)
337
338
  });
338
339
  continue;
339
340
  }
340
- let c = a.get(s.id);
341
+ let c = i.get(s.id);
341
342
  if (c !== void 0) {
342
- r.error("connections: DUPLICATE id — only the first is registered", {
343
+ n.error("connections: DUPLICATE id — only the first is registered", {
343
344
  id: s.id,
344
345
  registered: c,
345
- ignored: t
346
+ ignored: a
346
347
  });
347
348
  continue;
348
349
  }
349
- a.set(s.id, t), i.push({
350
- file: t,
350
+ i.set(s.id, a), r.push({
351
+ file: a,
351
352
  definition: s
352
353
  });
353
354
  }
354
- return i.length > 0 && r.info("discovered connections", {
355
- connections: i.map((e) => `${e.definition.id} (${e.definition.kind})`),
356
- files: i.map((e) => Ne(t(e.file)))
357
- }), i;
358
- }, z = (e) => typeof e.attributes["framework.kind"] == "string" && e.attributes["framework.kind"].startsWith("subscription."), B = (e) => {
355
+ return r.length > 0 && n.info("discovered connections", {
356
+ connections: r.map((e) => `${e.definition.id} (${e.definition.kind})`),
357
+ files: r.map((e) => Me(o(e.file)))
358
+ }), r;
359
+ }, G = (e) => typeof e.attributes["framework.kind"] == "string" && e.attributes["framework.kind"].startsWith("subscription."), K = (e) => {
359
360
  if (e.name.includes("_voltro_traces")) return !0;
360
361
  for (let t in e.attributes) {
361
362
  let n = e.attributes[t];
362
363
  if (typeof n == "string" && n.includes("_voltro_traces")) return !0;
363
364
  }
364
365
  return !1;
365
- }, Fe = (e) => typeof e.attributes["framework.kind"] == "string" && e.attributes["framework.kind"].startsWith("subscription"), Ie = 1e3, Le = 500, Re = 50, V = class {
366
+ }, Pe = (e) => typeof e.attributes["framework.kind"] == "string" && e.attributes["framework.kind"].startsWith("subscription"), Fe = 1e3, Ie = 500, Le = 50, q = class {
366
367
  capacity;
367
368
  buffer = [];
368
- constructor(e = Ie) {
369
+ constructor(e = Fe) {
369
370
  this.capacity = e;
370
371
  }
371
372
  append(e) {
372
373
  this.buffer.push(e), this.buffer.length > this.capacity && this.buffer.shift();
373
374
  }
374
375
  query(e = {}) {
375
- let t = e.since ?? 0, n = e.until ?? Date.now(), r = Math.min(e.max ?? Le, this.capacity), i = e.traceId, a = e.minDurationMs, o = e.status, s = e.name?.toLowerCase(), c = [];
376
+ let t = e.since ?? 0, n = e.until ?? Date.now(), r = Math.min(e.max ?? Ie, this.capacity), i = e.traceId, a = e.minDurationMs, o = e.status, s = e.name?.toLowerCase(), c = [];
376
377
  for (let e = this.buffer.length - 1; e >= 0 && c.length < r; e--) {
377
378
  let r = this.buffer[e];
378
379
  r.startMs < t || r.startMs > n || i !== void 0 && r.traceId !== i || a !== void 0 && r.durationMs < a || o !== void 0 && r.status !== o || s !== void 0 && !r.name.toLowerCase().includes(s) || c.push(r);
@@ -380,7 +381,7 @@ var D = [
380
381
  return c.reverse();
381
382
  }
382
383
  queryGrouped(e = {}) {
383
- let t = e.since ?? 0, n = e.maxTraces ?? Re, r = e.onlyErrors ?? !1, i = /* @__PURE__ */ new Map();
384
+ let t = e.since ?? 0, n = e.maxTraces ?? Le, r = e.onlyErrors ?? !1, i = /* @__PURE__ */ new Map();
384
385
  for (let e of this.buffer) {
385
386
  if (e.startMs < t) continue;
386
387
  let n = i.get(e.traceId);
@@ -391,7 +392,7 @@ var D = [
391
392
  t.sort((e, t) => e.startMs - t.startMs);
392
393
  let n = t.some((e) => e.status === "error");
393
394
  if (r && !n) continue;
394
- let i = t[0].startMs, o = t.reduce((e, t) => t.endMs > e ? t.endMs : e, i), s = t.filter(z), c = s.length > 0 || t.some(Fe), l = s.reduce((e, t) => e === void 0 || t.startMs > e.startMs ? t : e, void 0);
395
+ let i = t[0].startMs, o = t.reduce((e, t) => t.endMs > e ? t.endMs : e, i), s = t.filter(G), c = s.length > 0 || t.some(Pe), l = s.reduce((e, t) => e === void 0 || t.startMs > e.startMs ? t : e, void 0);
395
396
  a.push({
396
397
  traceId: e,
397
398
  rootName: t[0].name,
@@ -416,69 +417,69 @@ var D = [
416
417
  clear() {
417
418
  this.buffer = [];
418
419
  }
419
- }, H = null, ze = () => (H === null && (H = new V()), H), Be = /* @__PURE__ */ new Set([
420
+ }, J = null, Re = () => (J === null && (J = new q()), J), Y = /* @__PURE__ */ new Set([
420
421
  "off",
421
422
  "errors",
422
423
  "interesting",
423
424
  "all"
424
- ]), U = (e, t, n, r) => {
425
+ ]), X = (e, t, n, r) => {
425
426
  let i = Number(e);
426
427
  return Number.isFinite(i) ? Math.min(r, Math.max(n, i)) : t;
427
- }, Ve = (e) => e !== void 0 && [
428
+ }, ze = (e) => e !== void 0 && [
428
429
  "1",
429
430
  "true",
430
431
  "yes",
431
432
  "on"
432
- ].includes(e.toLowerCase()), He = (e) => {
433
+ ].includes(e.toLowerCase()), Be = (e) => {
433
434
  let t = Number(e);
434
435
  return Number.isFinite(t) && t > 0 ? t : 24;
435
- }, W = (e = process.env) => {
436
- let t = (e.VOLTRO_TRACING_BUFFER ?? "").toLowerCase() === "off", n = U(e.VOLTRO_TRACING_SAMPLE, 1, 0, 1), r = (e.VOLTRO_TRACING_PERSIST ?? "").toLowerCase(), i = e.NODE_ENV === "production" ? "off" : "interesting";
436
+ }, Z = (e = process.env) => {
437
+ let t = (e.VOLTRO_TRACING_BUFFER ?? "").toLowerCase() === "off", n = X(e.VOLTRO_TRACING_SAMPLE, 1, 0, 1), r = (e.VOLTRO_TRACING_PERSIST ?? "").toLowerCase(), i = e.NODE_ENV === "production" ? "off" : "interesting";
437
438
  return {
438
- mode: Be.has(r) ? r : n <= 0 ? "off" : i,
439
+ mode: Y.has(r) ? r : n <= 0 ? "off" : i,
439
440
  sampleRate: n,
440
- slowMs: U(e.VOLTRO_TRACING_SLOW_MS, 500, 0, 2 ** 53 - 1),
441
- ttlHours: He(e.VOLTRO_TRACING_TTL_HOURS),
442
- persistDelivery: Ve(e.VOLTRO_TRACING_PERSIST_DELIVERY),
441
+ slowMs: X(e.VOLTRO_TRACING_SLOW_MS, 500, 0, 2 ** 53 - 1),
442
+ ttlHours: Be(e.VOLTRO_TRACING_TTL_HOURS),
443
+ persistDelivery: ze(e.VOLTRO_TRACING_PERSIST_DELIVERY),
443
444
  bufferDisabled: t
444
445
  };
445
- }, G = (e = process.env) => {
446
- let t = W(e);
446
+ }, Q = (e = process.env) => {
447
+ let t = Z(e);
447
448
  return !t.bufferDisabled && t.mode !== "off";
448
- }, Ue = (e, t) => {
449
+ }, Ve = (e, t) => {
449
450
  if (t >= 1) return !0;
450
451
  if (t <= 0) return !1;
451
452
  let n = 2166136261;
452
453
  for (let t = 0; t < e.length; t++) n ^= e.charCodeAt(t), n = Math.imul(n, 16777619);
453
454
  return (n >>> 0) % 1e3 < t * 1e3;
454
- }, We = (e, t) => {
455
- if (t.mode === "off" || B(e) || z(e) && !t.persistDelivery) return !1;
455
+ }, He = (e, t) => {
456
+ if (t.mode === "off" || K(e) || G(e) && !t.persistDelivery) return !1;
456
457
  let n = e.status === "error";
457
458
  if (t.mode === "errors") return n;
458
459
  if (n) return !0;
459
- if (!Ue(e.traceId, t.sampleRate)) return !1;
460
+ if (!Ve(e.traceId, t.sampleRate)) return !1;
460
461
  if (t.mode === "all") return !0;
461
462
  let r = e.parentSpanId === null || e.parentSpanId === void 0 || e.parentSpanId === "", i = typeof e.durationMs == "number" && e.durationMs >= t.slowMs;
462
463
  return r || i;
463
- }, Ge = (e) => {
464
+ }, Ue = (e) => {
464
465
  if (e.bufferDisabled) return "durable traces: OFF (VOLTRO_TRACING_BUFFER=off)";
465
466
  if (e.mode === "off") return "durable traces: OFF — _voltro_traces not created (prod default; set VOLTRO_TRACING_PERSIST=interesting to enable, or use OTLP)";
466
467
  let t = e.mode === "interesting" ? ` (errors + slow≥${e.slowMs}ms + roots)` : e.mode === "errors" ? " (errors only)" : "";
467
468
  return `durable traces: mode=${e.mode}${t}` + (e.sampleRate < 1 ? ` · sample=${e.sampleRate}` : "") + (e.persistDelivery ? " · +delivery" : "") + ` · ttl=${e.ttlHours}h`;
468
- }, Ke = (e = 30 * 6e4) => {
469
+ }, We = (e = 30 * 6e4) => {
469
470
  let t = /* @__PURE__ */ new Map();
470
471
  return (n, r) => {
471
472
  let i = t.get(n);
472
473
  return i !== void 0 && r - i < e ? !1 : (t.set(n, r), !0);
473
474
  };
474
- }, qe = (e) => {
475
- let { store: t, log: n } = e, r = e.policy ?? W();
476
- n.info(Ge(r));
477
- let i = Ke(), a = [], o = () => {};
475
+ }, Ge = (e) => {
476
+ let { store: t, log: n } = e, r = e.policy ?? Z();
477
+ n.info(Ue(r));
478
+ let i = We(), a = [], o = () => {};
478
479
  if (r.mode !== "off") {
479
480
  let e = [], s = 0;
480
481
  o = (t) => {
481
- We(t, r) && (e.length >= 5e3 && (e.shift(), s += 1, i("flush-drop", Date.now()) && (n.warn(`trace flush queue saturated — dropping durable spans (${s}+ since last warning). Durable inflow exceeds write throughput; reduce it with VOLTRO_TRACING_PERSIST=errors|interesting or VOLTRO_TRACING_SAMPLE<1.`), s = 0)), e.push(t));
482
+ He(t, r) && (e.length >= 5e3 && (e.shift(), s += 1, i("flush-drop", Date.now()) && (n.warn(`trace flush queue saturated — dropping durable spans (${s}+ since last warning). Durable inflow exceeds write throughput; reduce it with VOLTRO_TRACING_PERSIST=errors|interesting or VOLTRO_TRACING_SAMPLE<1.`), s = 0)), e.push(t));
482
483
  };
483
484
  let c = async () => {
484
485
  if (e.length === 0) return;
@@ -520,7 +521,7 @@ var D = [
520
521
  let n = await t.query({
521
522
  table: "_voltro_traces",
522
523
  order: [],
523
- predicate: _("startedAt", e),
524
+ predicate: O("startedAt", e),
524
525
  projection: ["id"],
525
526
  skip: void 0,
526
527
  take: c
@@ -544,28 +545,28 @@ var D = [
544
545
  for (let e of a) clearInterval(e);
545
546
  }
546
547
  };
547
- }, Je = /\.(query|mutation|action|stream)\.ts$/, Ye = /\.(query|mutation|action|stream)\.server\.ts$/, K = /\.workflow\.tsx$/, q = /\.workflow\.server\.tsx$/, J = /\.workflow\.tsx?$/, Y = /\.trigger\.tsx?$/, X = /\.cron\.tsx?$/, Z = /\.webhook\.tsx?$/, Q = /\.outbox\.tsx?$/, Xe = /\.subscribe\.tsx?$/, Ze = /\.reaction\.tsx?$/, Qe = /\.aggregate\.tsx?$/, $e = /\.startup\.tsx?$/, et = /\.seed\.ts$/, tt = /\.relations\.ts$/, nt = /\.entity\.ts$|\.schema\.ts$|^schema\.ts$/, rt = (e) => J.test(e) && !K.test(e) && !q.test(e), it = async (e) => {
548
- let t = !1, r = !1, i = !1, o = !1, s = !1, c = !1, l = async (e) => {
549
- let u = await a.readdir(e, { withFileTypes: !0 }).catch(() => []);
550
- for (let a of u) if (a.isDirectory()) {
551
- if (a.name === "node_modules" || a.name === "dist" || a.name === ".framework" || a.name.startsWith(".")) continue;
552
- await l(n(e, a.name));
548
+ }, Ke = async (e) => {
549
+ let o = !1, c = !1, l = !1, d = !1, f = !1, p = !1, m = async (e) => {
550
+ let h = await u.readdir(e, { withFileTypes: !0 }).catch(() => []);
551
+ for (let u of h) if (u.isDirectory()) {
552
+ if (u.name === "node_modules" || u.name === "dist" || u.name === ".framework" || u.name.startsWith(".")) continue;
553
+ await m(s(e, u.name));
553
554
  } else {
554
- let e = a.name;
555
- (J.test(e) || Y.test(e)) && (t = !0), X.test(e) && (r = !0), Z.test(e) && (i = !0), F.test(e) && (o = !0), Q.test(e) && (s = !0), R.test(e) && (c = !0);
555
+ let e = u.name;
556
+ (n.test(e) || t.test(e)) && (o = !0), i.test(e) && (c = !0), r.test(e) && (l = !0), H.test(e) && (d = !0), a.test(e) && (f = !0), W.test(e) && (p = !0);
556
557
  }
557
558
  };
558
- return await l(e), {
559
- workflows: t,
560
- schedules: r,
561
- webhooks: i,
562
- agents: o,
563
- outbox: s,
564
- connections: c
559
+ return await m(e), {
560
+ workflows: o,
561
+ schedules: c,
562
+ webhooks: l,
563
+ agents: d,
564
+ outbox: f,
565
+ connections: p
565
566
  };
566
- }, at = async (e) => {
567
+ }, qe = async (e) => {
567
568
  try {
568
- return (await import(r(n(e, "app.config.ts")).href)).default?.plugins ?? [];
569
+ return (await import(c(s(e, "app.config.ts")).href)).default?.plugins ?? [];
569
570
  } catch {
570
571
  return [];
571
572
  }
@@ -573,22 +574,22 @@ var D = [
573
574
  let t = /* @__PURE__ */ new Map(), n = (e) => {
574
575
  e?.tableName && !t.has(e.tableName) && t.set(e.tableName, e);
575
576
  };
576
- for (let t of O({
577
+ for (let t of z({
577
578
  workflows: e.mix.workflows,
578
579
  schedules: e.mix.schedules,
579
580
  webhooks: e.mix.webhooks,
580
- traces: G(),
581
+ traces: Q(),
581
582
  cdc: e.cdc,
582
583
  ...e.cdcDialect ? { cdcDialect: e.cdcDialect } : {},
583
- undo: ie(),
584
+ undo: ae(),
584
585
  outbox: e.mix.outbox,
585
586
  connections: e.mix.connections
586
587
  })) n(t);
587
- e.mix.agents && (n(le), n(ce), n(de), n(ue));
588
- for (let t of ke(e.plugins)) n(t);
588
+ e.mix.agents && (n(de), n(ue), n(pe), n(fe));
589
+ for (let t of De(e.plugins)) n(t);
589
590
  return [...t.values()];
590
- }, ot = async (e) => {
591
- let t = await it(e.root), n = await at(e.root), r = (process.env.DB_DIALECT ?? "postgres").toLowerCase(), i = r === "mariadb" ? "mariadb" : r === "mssql" ? "mssql" : void 0;
591
+ }, Je = async (e) => {
592
+ let t = await Ke(e.root), n = await qe(e.root), r = (process.env.DB_DIALECT ?? "postgres").toLowerCase(), i = r === "mariadb" ? "mariadb" : r === "mssql" ? "mssql" : void 0;
592
593
  return $({
593
594
  mix: t,
594
595
  plugins: n,
@@ -597,4 +598,4 @@ var D = [
597
598
  });
598
599
  };
599
600
  //#endregion
600
- export { Me as A, ze as C, F as D, Pe as E, xe as F, k as I, A as L, De as M, Oe as N, Ae as O, Se as P, O as R, V as S, R as T, J as _, Q as a, qe as b, Ze as c, et as d, $e as f, K as g, Z as h, X as i, L as j, I as k, tt as l, Y as m, $ as n, Je as o, Xe as p, Qe as r, Ye as s, ot as t, nt as u, q as v, B as w, G as x, rt as y };
601
+ export { be as _, q as a, he as b, W as c, Oe as d, U as f, Ee as g, Te as h, Q as i, Ne as l, ke as m, $ as n, Re as o, je as p, Ge as r, K as s, Je as t, H as u, ye as v, z as x, B as y };