veryfront 0.1.974 → 0.1.976

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 (108) hide show
  1. package/esm/cli/commands/schedule/command-help.d.ts +3 -0
  2. package/esm/cli/commands/schedule/command-help.d.ts.map +1 -0
  3. package/esm/cli/commands/schedule/command-help.js +24 -0
  4. package/esm/cli/commands/schedule/handler.d.ts +3 -0
  5. package/esm/cli/commands/schedule/handler.d.ts.map +1 -0
  6. package/esm/cli/commands/schedule/handler.js +55 -0
  7. package/esm/cli/commands/schedules/command-help.d.ts +3 -0
  8. package/esm/cli/commands/schedules/command-help.d.ts.map +1 -0
  9. package/esm/cli/commands/schedules/command-help.js +16 -0
  10. package/esm/cli/commands/schedules/handler.d.ts +3 -0
  11. package/esm/cli/commands/schedules/handler.d.ts.map +1 -0
  12. package/esm/cli/commands/schedules/handler.js +19 -0
  13. package/esm/cli/commands/trigger-utils.d.ts +19 -0
  14. package/esm/cli/commands/trigger-utils.d.ts.map +1 -0
  15. package/esm/cli/commands/trigger-utils.js +50 -0
  16. package/esm/cli/commands/webhook/command-help.d.ts +3 -0
  17. package/esm/cli/commands/webhook/command-help.d.ts.map +1 -0
  18. package/esm/cli/commands/webhook/command-help.js +24 -0
  19. package/esm/cli/commands/webhook/handler.d.ts +3 -0
  20. package/esm/cli/commands/webhook/handler.d.ts.map +1 -0
  21. package/esm/cli/commands/webhook/handler.js +55 -0
  22. package/esm/cli/commands/webhooks/command-help.d.ts +3 -0
  23. package/esm/cli/commands/webhooks/command-help.d.ts.map +1 -0
  24. package/esm/cli/commands/webhooks/command-help.js +16 -0
  25. package/esm/cli/commands/webhooks/handler.d.ts +3 -0
  26. package/esm/cli/commands/webhooks/handler.d.ts.map +1 -0
  27. package/esm/cli/commands/webhooks/handler.js +19 -0
  28. package/esm/cli/help/command-definitions.d.ts.map +1 -1
  29. package/esm/cli/help/command-definitions.js +8 -0
  30. package/esm/cli/router.d.ts.map +1 -1
  31. package/esm/cli/router.js +8 -0
  32. package/esm/deno.d.ts +14 -0
  33. package/esm/deno.js +15 -1
  34. package/esm/src/agent/runtime/model-resolution.d.ts +1 -0
  35. package/esm/src/agent/runtime/model-resolution.d.ts.map +1 -1
  36. package/esm/src/agent/runtime/model-resolution.js +4 -1
  37. package/esm/src/agent/runtime/provider-tool-compat.d.ts.map +1 -1
  38. package/esm/src/agent/runtime/provider-tool-compat.js +2 -1
  39. package/esm/src/agent/types.d.ts +1 -1
  40. package/esm/src/config/schemas/config.schema.d.ts +24 -0
  41. package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
  42. package/esm/src/config/schemas/config.schema.js +24 -0
  43. package/esm/src/discovery/discovery-engine.d.ts.map +1 -1
  44. package/esm/src/discovery/discovery-engine.js +11 -1
  45. package/esm/src/discovery/handlers/index.d.ts +2 -0
  46. package/esm/src/discovery/handlers/index.d.ts.map +1 -1
  47. package/esm/src/discovery/handlers/index.js +2 -0
  48. package/esm/src/discovery/handlers/schedule-handler.d.ts +4 -0
  49. package/esm/src/discovery/handlers/schedule-handler.d.ts.map +1 -0
  50. package/esm/src/discovery/handlers/schedule-handler.js +8 -0
  51. package/esm/src/discovery/handlers/webhook-handler.d.ts +4 -0
  52. package/esm/src/discovery/handlers/webhook-handler.d.ts.map +1 -0
  53. package/esm/src/discovery/handlers/webhook-handler.js +8 -0
  54. package/esm/src/discovery/project-discovery-config.d.ts +4 -0
  55. package/esm/src/discovery/project-discovery-config.d.ts.map +1 -1
  56. package/esm/src/discovery/project-discovery-config.js +4 -0
  57. package/esm/src/discovery/types.d.ts +6 -0
  58. package/esm/src/discovery/types.d.ts.map +1 -1
  59. package/esm/src/platform/cloud/resolver.d.ts +1 -1
  60. package/esm/src/platform/cloud/resolver.d.ts.map +1 -1
  61. package/esm/src/platform/cloud/resolver.js +1 -1
  62. package/esm/src/provider/index.d.ts +1 -1
  63. package/esm/src/provider/index.js +1 -1
  64. package/esm/src/provider/veryfront-cloud/model-catalog.d.ts +1 -1
  65. package/esm/src/provider/veryfront-cloud/model-catalog.d.ts.map +1 -1
  66. package/esm/src/provider/veryfront-cloud/model-catalog.js +8 -1
  67. package/esm/src/schedule/discovery.d.ts +13 -0
  68. package/esm/src/schedule/discovery.d.ts.map +1 -0
  69. package/esm/src/schedule/discovery.js +12 -0
  70. package/esm/src/schedule/factory.d.ts +3 -0
  71. package/esm/src/schedule/factory.d.ts.map +1 -0
  72. package/esm/src/schedule/factory.js +48 -0
  73. package/esm/src/schedule/index.d.ts +25 -0
  74. package/esm/src/schedule/index.d.ts.map +1 -0
  75. package/esm/src/schedule/index.js +22 -0
  76. package/esm/src/schedule/types.d.ts +21 -0
  77. package/esm/src/schedule/types.d.ts.map +1 -0
  78. package/esm/src/schedule/types.js +9 -0
  79. package/esm/src/trigger/discovery.d.ts +31 -0
  80. package/esm/src/trigger/discovery.d.ts.map +1 -0
  81. package/esm/src/trigger/discovery.js +115 -0
  82. package/esm/src/trigger/index.d.ts +30 -0
  83. package/esm/src/trigger/index.d.ts.map +1 -0
  84. package/esm/src/trigger/index.js +26 -0
  85. package/esm/src/trigger/local-runner.d.ts +20 -0
  86. package/esm/src/trigger/local-runner.d.ts.map +1 -0
  87. package/esm/src/trigger/local-runner.js +92 -0
  88. package/esm/src/trigger/target.d.ts +7 -0
  89. package/esm/src/trigger/target.d.ts.map +1 -0
  90. package/esm/src/trigger/target.js +8 -0
  91. package/esm/src/trigger/validation.d.ts +3 -0
  92. package/esm/src/trigger/validation.d.ts.map +1 -0
  93. package/esm/src/trigger/validation.js +36 -0
  94. package/esm/src/utils/version-constant.d.ts +1 -1
  95. package/esm/src/utils/version-constant.js +1 -1
  96. package/esm/src/webhook/discovery.d.ts +13 -0
  97. package/esm/src/webhook/discovery.d.ts.map +1 -0
  98. package/esm/src/webhook/discovery.js +12 -0
  99. package/esm/src/webhook/factory.d.ts +3 -0
  100. package/esm/src/webhook/factory.d.ts.map +1 -0
  101. package/esm/src/webhook/factory.js +58 -0
  102. package/esm/src/webhook/index.d.ts +29 -0
  103. package/esm/src/webhook/index.d.ts.map +1 -0
  104. package/esm/src/webhook/index.js +26 -0
  105. package/esm/src/webhook/types.d.ts +26 -0
  106. package/esm/src/webhook/types.d.ts.map +1 -0
  107. package/esm/src/webhook/types.js +8 -0
  108. package/package.json +13 -1
@@ -313,6 +313,18 @@ export declare const getVeryfrontConfigSchema: () => import("../../internal-agen
313
313
  paths: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
314
314
  }>> | undefined>;
315
315
  }>> | undefined>;
316
+ schedules: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
317
+ discovery: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
318
+ enabled: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
319
+ paths: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
320
+ }>> | undefined>;
321
+ }>> | undefined>;
322
+ webhooks: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
323
+ discovery: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
324
+ enabled: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
325
+ paths: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
326
+ }>> | undefined>;
327
+ }>> | undefined>;
316
328
  evals: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
317
329
  discovery: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
318
330
  enabled: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
@@ -723,6 +735,18 @@ export declare const veryfrontConfigSchema: import("../../internal-agents/schema
723
735
  paths: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
724
736
  }>> | undefined>;
725
737
  }>> | undefined>;
738
+ schedules: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
739
+ discovery: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
740
+ enabled: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
741
+ paths: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
742
+ }>> | undefined>;
743
+ }>> | undefined>;
744
+ webhooks: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
745
+ discovery: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
746
+ enabled: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
747
+ paths: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
748
+ }>> | undefined>;
749
+ }>> | undefined>;
726
750
  evals: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
727
751
  discovery: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
728
752
  enabled: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../../../../src/src/config/schemas/config.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../../../../src/src/config/schemas/config.schema.ts"],"names":[],"mappings":"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"}
@@ -479,6 +479,30 @@ export const getVeryfrontConfigSchema = defineSchema((v) => v
479
479
  })
480
480
  .partial()
481
481
  .optional(),
482
+ schedules: v
483
+ .object({
484
+ discovery: v
485
+ .object({
486
+ enabled: v.boolean().optional(),
487
+ paths: v.array(v.string()).optional(),
488
+ })
489
+ .partial()
490
+ .optional(),
491
+ })
492
+ .partial()
493
+ .optional(),
494
+ webhooks: v
495
+ .object({
496
+ discovery: v
497
+ .object({
498
+ enabled: v.boolean().optional(),
499
+ paths: v.array(v.string()).optional(),
500
+ })
501
+ .partial()
502
+ .optional(),
503
+ })
504
+ .partial()
505
+ .optional(),
482
506
  evals: v
483
507
  .object({
484
508
  discovery: v
@@ -1 +1 @@
1
- {"version":3,"file":"discovery-engine.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/discovery-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EACV,eAAe,EAEf,eAAe,EAEhB,MAAM,YAAY,CAAC;AAwIpB;;GAEG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CA2FnF"}
1
+ {"version":3,"file":"discovery-engine.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/discovery-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EACV,eAAe,EAEf,eAAe,EAEhB,MAAM,YAAY,CAAC;AA0IpB;;GAEG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAuGnF"}
@@ -10,7 +10,7 @@ import { ensureError } from "../errors/veryfront-error.js";
10
10
  import { registerSkill, skillRegistry } from "../skill/registry.js";
11
11
  import { importModule } from "./transpiler.js";
12
12
  import { findTypeScriptFiles } from "./file-discovery.js";
13
- import { agentHandler, discoverSkills, evalHandler, promptHandler, resourceHandler, taskHandler, toolHandler, workflowHandler, workHandler, } from "./handlers/index.js";
13
+ import { agentHandler, discoverSkills, evalHandler, promptHandler, resourceHandler, scheduleHandler, taskHandler, toolHandler, webhookHandler, workflowHandler, workHandler, } from "./handlers/index.js";
14
14
  import { discoverRuntimeAgentMarkdownDefinitions } from "./handlers/runtime-agent-markdown-handler.js";
15
15
  import { filenameToId } from "./discovery-utils.js";
16
16
  import { join } from "../platform/compat/path/index.js";
@@ -115,6 +115,8 @@ export async function discoverAll(config) {
115
115
  workflows: new Map(),
116
116
  works: new Map(),
117
117
  tasks: new Map(),
118
+ schedules: new Map(),
119
+ webhooks: new Map(),
118
120
  evals: new Map(),
119
121
  errors: [],
120
122
  };
@@ -166,6 +168,14 @@ export async function discoverAll(config) {
166
168
  for (const dir of config.taskDirs ?? ["tasks"]) {
167
169
  await discoverItems(`${baseDir}/${dir}`, result, context, taskHandler, config.verbose);
168
170
  }
171
+ // Discover schedules
172
+ for (const dir of config.scheduleDirs ?? ["schedules"]) {
173
+ await discoverItems(`${baseDir}/${dir}`, result, context, scheduleHandler, config.verbose);
174
+ }
175
+ // Discover webhooks
176
+ for (const dir of config.webhookDirs ?? ["webhooks"]) {
177
+ await discoverItems(`${baseDir}/${dir}`, result, context, webhookHandler, config.verbose);
178
+ }
169
179
  // Discover eval definitions
170
180
  for (const dir of config.evalDirs ?? ["evals"]) {
171
181
  await discoverItems(`${baseDir}/${dir}`, result, context, evalHandler, config.verbose);
@@ -10,6 +10,8 @@ export { promptHandler } from "./prompt-handler.js";
10
10
  export { workflowHandler } from "./workflow-handler.js";
11
11
  export { workHandler } from "./work-handler.js";
12
12
  export { taskHandler } from "./task-handler.js";
13
+ export { scheduleHandler } from "./schedule-handler.js";
14
+ export { webhookHandler } from "./webhook-handler.js";
13
15
  export { evalHandler } from "./eval-handler.js";
14
16
  export { discoverSkills } from "./skill-handler.js";
15
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/discovery/handlers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/discovery/handlers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
@@ -10,5 +10,7 @@ export { promptHandler } from "./prompt-handler.js";
10
10
  export { workflowHandler } from "./workflow-handler.js";
11
11
  export { workHandler } from "./work-handler.js";
12
12
  export { taskHandler } from "./task-handler.js";
13
+ export { scheduleHandler } from "./schedule-handler.js";
14
+ export { webhookHandler } from "./webhook-handler.js";
13
15
  export { evalHandler } from "./eval-handler.js";
14
16
  export { discoverSkills } from "./skill-handler.js";
@@ -0,0 +1,4 @@
1
+ import type { ScheduleDefinition } from "../../schedule/index.js";
2
+ import type { DiscoveryHandler } from "../types.js";
3
+ export declare const scheduleHandler: DiscoveryHandler<ScheduleDefinition>;
4
+ //# sourceMappingURL=schedule-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-handler.d.ts","sourceRoot":"","sources":["../../../../src/src/discovery/handlers/schedule-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,aAAa,CAAC;AAErE,eAAO,MAAM,eAAe,EAAE,gBAAgB,CAAC,kBAAkB,CAMhE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { isScheduleDefinition } from "../../schedule/index.js";
2
+ export const scheduleHandler = {
3
+ typeName: "schedule",
4
+ validate: (item) => isScheduleDefinition(item),
5
+ getId: (definition) => definition.id,
6
+ register: (_id, definition) => definition,
7
+ getResultMap: (result) => result.schedules,
8
+ };
@@ -0,0 +1,4 @@
1
+ import type { WebhookDefinition } from "../../webhook/index.js";
2
+ import type { DiscoveryHandler } from "../types.js";
3
+ export declare const webhookHandler: DiscoveryHandler<WebhookDefinition>;
4
+ //# sourceMappingURL=webhook-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook-handler.d.ts","sourceRoot":"","sources":["../../../../src/src/discovery/handlers/webhook-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,aAAa,CAAC;AAErE,eAAO,MAAM,cAAc,EAAE,gBAAgB,CAAC,iBAAiB,CAM9D,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { isWebhookDefinition } from "../../webhook/index.js";
2
+ export const webhookHandler = {
3
+ typeName: "webhook",
4
+ validate: (item) => isWebhookDefinition(item),
5
+ getId: (definition) => definition.id,
6
+ register: (_id, definition) => definition,
7
+ getResultMap: (result) => result.webhooks,
8
+ };
@@ -10,6 +10,8 @@ export declare const DEFAULT_PROJECT_DISCOVERY_DIRS: {
10
10
  workflowDirs: string[];
11
11
  workDirs: string[];
12
12
  taskDirs: string[];
13
+ scheduleDirs: string[];
14
+ webhookDirs: string[];
13
15
  evalDirs: string[];
14
16
  };
15
17
  type ProjectDiscoveryConfigInput = {
@@ -27,6 +29,8 @@ export type ProjectDiscoveryConfig = DiscoveryConfig & {
27
29
  workflowDirs: string[];
28
30
  workDirs: string[];
29
31
  taskDirs: string[];
32
+ scheduleDirs: string[];
33
+ webhookDirs: string[];
30
34
  evalDirs: string[];
31
35
  };
32
36
  export declare function createProjectDiscoveryConfig(input: ProjectDiscoveryConfigInput): ProjectDiscoveryConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"project-discovery-config.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/project-discovery-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,8BAA8B;;;;;;;;;;CAU1C,CAAC;AAOF,KAAK,2BAA2B,GAAG;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,eAAe,GAAG;IACrD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAgBF,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,2BAA2B,GACjC,sBAAsB,CA4CxB"}
1
+ {"version":3,"file":"project-discovery-config.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/project-discovery-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,8BAA8B;;;;;;;;;;;;CAY1C,CAAC;AAOF,KAAK,2BAA2B,GAAG;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,eAAe,GAAG;IACrD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAgBF,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,2BAA2B,GACjC,sBAAsB,CAoDxB"}
@@ -7,6 +7,8 @@ export const DEFAULT_PROJECT_DISCOVERY_DIRS = {
7
7
  workflowDirs: ["workflows"],
8
8
  workDirs: ["work"],
9
9
  taskDirs: ["tasks"],
10
+ scheduleDirs: ["schedules"],
11
+ webhookDirs: ["webhooks"],
10
12
  evalDirs: ["evals"],
11
13
  };
12
14
  function isDiscoveryEnabled(discovery) {
@@ -30,6 +32,8 @@ export function createProjectDiscoveryConfig(input) {
30
32
  workflowDirs: resolveDiscoveryPaths(aiConfig?.workflows?.discovery, DEFAULT_PROJECT_DISCOVERY_DIRS.workflowDirs),
31
33
  workDirs: resolveDiscoveryPaths(aiConfig?.work?.discovery, DEFAULT_PROJECT_DISCOVERY_DIRS.workDirs),
32
34
  taskDirs: resolveDiscoveryPaths(aiConfig?.tasks?.discovery, DEFAULT_PROJECT_DISCOVERY_DIRS.taskDirs),
35
+ scheduleDirs: resolveDiscoveryPaths(aiConfig?.schedules?.discovery, DEFAULT_PROJECT_DISCOVERY_DIRS.scheduleDirs),
36
+ webhookDirs: resolveDiscoveryPaths(aiConfig?.webhooks?.discovery, DEFAULT_PROJECT_DISCOVERY_DIRS.webhookDirs),
33
37
  evalDirs: resolveDiscoveryPaths(aiConfig?.evals?.discovery, DEFAULT_PROJECT_DISCOVERY_DIRS.evalDirs),
34
38
  fsAdapter: input.fsAdapter,
35
39
  verbose: input.verbose ?? false,
@@ -12,6 +12,8 @@ import type { WorkDefinition } from "../work/index.js";
12
12
  import type { Workflow } from "../workflow/types.js";
13
13
  import type { TaskDefinition } from "../task/types.js";
14
14
  import type { EvalDefinition } from "../eval/index.js";
15
+ import type { ScheduleDefinition } from "../schedule/index.js";
16
+ import type { WebhookDefinition } from "../webhook/index.js";
15
17
  import type { Platform } from "../platform/core-platform.js";
16
18
  import type { FileSystemAdapter } from "../platform/adapters/base.js";
17
19
  /**
@@ -39,6 +41,8 @@ export interface DiscoveryConfig {
39
41
  workflowDirs?: string[];
40
42
  workDirs?: string[];
41
43
  taskDirs?: string[];
44
+ scheduleDirs?: string[];
45
+ webhookDirs?: string[];
42
46
  evalDirs?: string[];
43
47
  verbose?: boolean;
44
48
  fsAdapter?: FileSystemAdapter;
@@ -55,6 +59,8 @@ export interface DiscoveryResult {
55
59
  workflows: Map<string, Workflow>;
56
60
  works: Map<string, WorkDefinition>;
57
61
  tasks: Map<string, TaskDefinition>;
62
+ schedules: Map<string, ScheduleDefinition>;
63
+ webhooks: Map<string, WebhookDefinition>;
58
64
  evals: Map<string, EvalDefinition>;
59
65
  errors: Array<{
60
66
  file: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare const DEFAULT_VERYFRONT_CLOUD_MODEL = "veryfront-cloud/anthropic/claude-sonnet-4-6";
1
+ export declare const DEFAULT_VERYFRONT_CLOUD_MODEL = "veryfront-cloud/openai/gpt-5.4-nano";
2
2
  export declare const DEFAULT_VERYFRONT_CLOUD_EMBEDDING_MODEL = "veryfront-cloud/openai/text-embedding-3-small";
3
3
  export interface VeryfrontCloudBootstrap {
4
4
  apiBaseUrl: string;
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../../src/src/platform/cloud/resolver.ts"],"names":[],"mappings":"AAuCA,eAAO,MAAM,6BAA6B,gDAAgD,CAAC;AAC3F,eAAO,MAAM,uCAAuC,kDACH,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAyDD,wBAAgB,0BAA0B,IAAI,MAAM,GAAG,SAAS,CAE/D;AAED,wBAAgB,4BAA4B,IAAI,MAAM,GAAG,SAAS,CAEjE;AAED,wBAAgB,0BAA0B,IAAI,uBAAuB,CAOpE;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAgBjD;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAKtD;AAED,wBAAgB,sCAAsC,IAAI,MAAM,CAK/D"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../../src/src/platform/cloud/resolver.ts"],"names":[],"mappings":"AAuCA,eAAO,MAAM,6BAA6B,wCAAwC,CAAC;AACnF,eAAO,MAAM,uCAAuC,kDACH,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAyDD,wBAAgB,0BAA0B,IAAI,MAAM,GAAG,SAAS,CAE/D;AAED,wBAAgB,4BAA4B,IAAI,MAAM,GAAG,SAAS,CAEjE;AAED,wBAAgB,0BAA0B,IAAI,uBAAuB,CAOpE;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAgBjD;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAKtD;AAED,wBAAgB,sCAAsC,IAAI,MAAM,CAK/D"}
@@ -15,7 +15,7 @@ function getApiBaseUrlEnv() {
15
15
  return getHostEnv("VERYFRONT_API_BASE_URL") ??
16
16
  getHostEnv("VERYFRONT_API_URL")?.replace("/graphql", "/api") ?? DEFAULT_API_BASE_URL;
17
17
  }
18
- export const DEFAULT_VERYFRONT_CLOUD_MODEL = "veryfront-cloud/anthropic/claude-sonnet-4-6";
18
+ export const DEFAULT_VERYFRONT_CLOUD_MODEL = "veryfront-cloud/openai/gpt-5.4-nano";
19
19
  export const DEFAULT_VERYFRONT_CLOUD_EMBEDDING_MODEL = "veryfront-cloud/openai/text-embedding-3-small";
20
20
  function getRuntimeBootstrap() {
21
21
  if (!isRuntimeConfigInitialized()) {
@@ -7,7 +7,7 @@
7
7
  * ```ts
8
8
  * import { resolveModel } from "veryfront/provider";
9
9
  *
10
- * const model = resolveModel("veryfront-cloud/openai/gpt-5.2");
10
+ * const model = resolveModel("veryfront-cloud/openai/gpt-5.4-nano");
11
11
  * ```
12
12
  */
13
13
  import "../../_dnt.polyfills.js";
@@ -7,7 +7,7 @@
7
7
  * ```ts
8
8
  * import { resolveModel } from "veryfront/provider";
9
9
  *
10
- * const model = resolveModel("veryfront-cloud/openai/gpt-5.2");
10
+ * const model = resolveModel("veryfront-cloud/openai/gpt-5.4-nano");
11
11
  * ```
12
12
  */
13
13
  import "../../_dnt.polyfills.js";
@@ -14,7 +14,7 @@ export type VeryfrontCloudChatModel = {
14
14
  thinkingBudgetTokens?: number;
15
15
  };
16
16
  /** Default value for Veryfront Cloud model ID. */
17
- export declare const DEFAULT_VERYFRONT_CLOUD_MODEL_ID = "opus";
17
+ export declare const DEFAULT_VERYFRONT_CLOUD_MODEL_ID = "gpt-5.4-nano";
18
18
  /** Shared Veryfront Cloud model prefix value. */
19
19
  export declare const VERYFRONT_CLOUD_MODEL_PREFIX = "veryfront-cloud/";
20
20
  export declare function isSupportedMistralModelId(modelId: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"model-catalog.d.ts","sourceRoot":"","sources":["../../../../src/src/provider/veryfront-cloud/model-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAE5D,4DAA4D;AAC5D,MAAM,MAAM,iCAAiC,GAAG;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,gCAAgC,SAAS,CAAC;AACvD,iDAAiD;AACjD,eAAO,MAAM,4BAA4B,qBAAqB,CAAC;AAe/D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,gDAAgD;AAChD,eAAO,MAAM,2BAA2B,EAAE,uBAAuB,EA2DhE,CAAC;AAEF,kCAAkC;AAClC,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAEvF;AAED,2CAA2C;AAC3C,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAItE;AAED,8CAA8C;AAC9C,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,GACd,uBAAuB,GAAG,SAAS,CAGrC;AAED,qDAAqD;AACrD,wBAAgB,oCAAoC,CAClD,OAAO,EAAE,MAAM,GACd,wBAAwB,CAe1B;AAED,yDAAyD;AACzD,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,MAAM,GACd,wBAAwB,GAAG,SAAS,CAMtC;AAED,yCAAyC;AACzC,wBAAgB,4BAA4B,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBnE;AAED,iDAAiD;AACjD,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,GAAG,SAAS,CAsBpB;AAED,+CAA+C;AAC/C,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,iCAAiC,GAAG,SAAS,CAc/C;AAED,qEAAqE;AACrE,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,iCAAiC,GAAG,SAAS,GACtD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAoCrC;AAkBD,gDAAgD;AAChD,wBAAgB,mCAAmC,IAAI,KAAK,CAAC;IAC3D,QAAQ,EAAE,wBAAwB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,uBAAuB,EAAE,CAAC;CACnC,CAAC,CAMD;AAED,gDAAgD;AAChD,eAAO,MAAM,kCAAkC,4CAAsC,CAAC"}
1
+ {"version":3,"file":"model-catalog.d.ts","sourceRoot":"","sources":["../../../../src/src/provider/veryfront-cloud/model-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAE5D,4DAA4D;AAC5D,MAAM,MAAM,iCAAiC,GAAG;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,gCAAgC,iBAAiB,CAAC;AAC/D,iDAAiD;AACjD,eAAO,MAAM,4BAA4B,qBAAqB,CAAC;AAe/D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,gDAAgD;AAChD,eAAO,MAAM,2BAA2B,EAAE,uBAAuB,EAkEhE,CAAC;AAEF,kCAAkC;AAClC,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAEvF;AAED,2CAA2C;AAC3C,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAItE;AAED,8CAA8C;AAC9C,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,GACd,uBAAuB,GAAG,SAAS,CAGrC;AAED,qDAAqD;AACrD,wBAAgB,oCAAoC,CAClD,OAAO,EAAE,MAAM,GACd,wBAAwB,CAe1B;AAED,yDAAyD;AACzD,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,MAAM,GACd,wBAAwB,GAAG,SAAS,CAMtC;AAED,yCAAyC;AACzC,wBAAgB,4BAA4B,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBnE;AAED,iDAAiD;AACjD,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,GAAG,SAAS,CAsBpB;AAED,+CAA+C;AAC/C,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,iCAAiC,GAAG,SAAS,CAc/C;AAED,qEAAqE;AACrE,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,iCAAiC,GAAG,SAAS,GACtD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAoCrC;AAkBD,gDAAgD;AAChD,wBAAgB,mCAAmC,IAAI,KAAK,CAAC;IAC3D,QAAQ,EAAE,wBAAwB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,uBAAuB,EAAE,CAAC;CACnC,CAAC,CAMD;AAED,gDAAgD;AAChD,eAAO,MAAM,kCAAkC,4CAAsC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** Default value for Veryfront Cloud model ID. */
2
- export const DEFAULT_VERYFRONT_CLOUD_MODEL_ID = "opus";
2
+ export const DEFAULT_VERYFRONT_CLOUD_MODEL_ID = "gpt-5.4-nano";
3
3
  /** Shared Veryfront Cloud model prefix value. */
4
4
  export const VERYFRONT_CLOUD_MODEL_PREFIX = "veryfront-cloud/";
5
5
  const VERYFRONT_CLOUD_GATEWAY_MODEL_PROVIDER_PREFIXES = [
@@ -49,6 +49,13 @@ export const VERYFRONT_CLOUD_CHAT_MODELS = [
49
49
  name: "GPT-5.5",
50
50
  description: "Most capable OpenAI model",
51
51
  },
52
+ {
53
+ id: "gpt-5.4-nano",
54
+ modelId: "openai/gpt-5.4-nano",
55
+ provider: "openai",
56
+ name: "GPT-5.4 Nano",
57
+ description: "Default model for fast everyday tasks",
58
+ },
52
59
  {
53
60
  id: "gemini-3.1-pro-preview",
54
61
  modelId: "google-ai-studio/gemini-3.1-pro-preview",
@@ -0,0 +1,13 @@
1
+ import type { RuntimeAdapter } from "../platform/index.js";
2
+ import type { VeryfrontConfig } from "../config/index.js";
3
+ import { type SourceTriggerDiscoveryResult } from "../trigger/discovery.js";
4
+ import { type ScheduleDefinition } from "./types.js";
5
+ export interface ScheduleDiscoveryOptions {
6
+ projectDir: string;
7
+ adapter: RuntimeAdapter;
8
+ config?: VeryfrontConfig;
9
+ schedulesDir?: string;
10
+ }
11
+ export type ScheduleDiscoveryResult = SourceTriggerDiscoveryResult<ScheduleDefinition>;
12
+ export declare function discoverSchedules(options: ScheduleDiscoveryOptions): Promise<ScheduleDiscoveryResult>;
13
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/src/schedule/discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAwB,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,uBAAuB,GAAG,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;AAEvF,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,uBAAuB,CAAC,CASlC"}
@@ -0,0 +1,12 @@
1
+ import { discoverSourceTriggers, } from "../trigger/discovery.js";
2
+ import { isScheduleDefinition } from "./types.js";
3
+ export async function discoverSchedules(options) {
4
+ return await discoverSourceTriggers({
5
+ projectDir: options.projectDir,
6
+ adapter: options.adapter,
7
+ config: options.config,
8
+ triggerDir: options.schedulesDir ?? "schedules",
9
+ sourceKind: "schedule",
10
+ validate: isScheduleDefinition,
11
+ });
12
+ }
@@ -0,0 +1,3 @@
1
+ import type { ScheduleConfig, ScheduleDefinition } from "./types.js";
2
+ export declare function schedule(config: ScheduleConfig): ScheduleDefinition;
3
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/src/schedule/factory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA6B,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAkBhG,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,kBAAkB,CAsCnE"}
@@ -0,0 +1,48 @@
1
+ import { isTriggerTarget } from "../trigger/target.js";
2
+ import { assertSerializable, validateTriggerId } from "../trigger/validation.js";
3
+ const CONCURRENCY_POLICIES = new Set(["Allow", "Forbid", "Replace"]);
4
+ function requireString(value, label) {
5
+ if (typeof value !== "string" || value.trim().length === 0) {
6
+ throw new Error(`${label} is required.`);
7
+ }
8
+ return value;
9
+ }
10
+ function validatePositiveInteger(value, label) {
11
+ if (value === undefined)
12
+ return;
13
+ if (!Number.isInteger(value) || Number(value) <= 0) {
14
+ throw new Error(`${label} must be a positive integer.`);
15
+ }
16
+ }
17
+ export function schedule(config) {
18
+ const id = requireString(config.id, "Schedule id");
19
+ validateTriggerId(id, "Schedule");
20
+ const scheduleExpression = config.schedule ?? config.cron;
21
+ const normalizedSchedule = requireString(scheduleExpression, "Schedule cron");
22
+ if (!isTriggerTarget(config.target)) {
23
+ throw new Error("Schedule target must specify a valid task, workflow, or agent id.");
24
+ }
25
+ if (config.concurrencyPolicy !== undefined &&
26
+ !CONCURRENCY_POLICIES.has(config.concurrencyPolicy)) {
27
+ throw new Error("Schedule concurrencyPolicy must be Allow, Forbid, or Replace.");
28
+ }
29
+ validatePositiveInteger(config.timeoutSeconds, "Schedule timeoutSeconds");
30
+ validatePositiveInteger(config.backoffLimit, "Schedule backoffLimit");
31
+ validatePositiveInteger(config.maxRuns, "Schedule maxRuns");
32
+ assertSerializable(config.input, "Schedule input");
33
+ return {
34
+ id,
35
+ ...(config.name === undefined ? {} : { name: config.name }),
36
+ ...(config.description === undefined ? {} : { description: config.description }),
37
+ schedule: normalizedSchedule,
38
+ ...(config.timezone === undefined ? {} : { timezone: config.timezone }),
39
+ target: { kind: config.target.kind, id: config.target.id },
40
+ ...(config.input === undefined ? {} : { input: config.input }),
41
+ ...(config.timeoutSeconds === undefined ? {} : { timeoutSeconds: config.timeoutSeconds }),
42
+ ...(config.backoffLimit === undefined ? {} : { backoffLimit: config.backoffLimit }),
43
+ ...(config.concurrencyPolicy === undefined
44
+ ? {}
45
+ : { concurrencyPolicy: config.concurrencyPolicy }),
46
+ ...(config.maxRuns === undefined ? {} : { maxRuns: config.maxRuns }),
47
+ };
48
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Source-defined schedules for Veryfront projects.
3
+ *
4
+ * @module schedule
5
+ *
6
+ * @example Run a workflow every weekday morning
7
+ * ```ts
8
+ * import { schedule } from "veryfront/schedule";
9
+ *
10
+ * export default schedule({
11
+ * id: "daily-support-triage",
12
+ * schedule: "0 9 * * 1-5",
13
+ * timezone: "Europe/Stockholm",
14
+ * target: { kind: "workflow", id: "escalate-ticket" },
15
+ * input: { severity: "high" },
16
+ * });
17
+ * ```
18
+ */
19
+ import "../../_dnt.polyfills.js";
20
+ export { schedule } from "./factory.js";
21
+ export type { ScheduleConcurrencyPolicy, ScheduleConfig, ScheduleDefinition } from "./types.js";
22
+ export { isScheduleDefinition } from "./types.js";
23
+ export { discoverSchedules } from "./discovery.js";
24
+ export type { ScheduleDiscoveryOptions, ScheduleDiscoveryResult } from "./discovery.js";
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/schedule/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,yBAAyB,CAAC;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,YAAY,EAAE,yBAAyB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Source-defined schedules for Veryfront projects.
3
+ *
4
+ * @module schedule
5
+ *
6
+ * @example Run a workflow every weekday morning
7
+ * ```ts
8
+ * import { schedule } from "veryfront/schedule";
9
+ *
10
+ * export default schedule({
11
+ * id: "daily-support-triage",
12
+ * schedule: "0 9 * * 1-5",
13
+ * timezone: "Europe/Stockholm",
14
+ * target: { kind: "workflow", id: "escalate-ticket" },
15
+ * input: { severity: "high" },
16
+ * });
17
+ * ```
18
+ */
19
+ import "../../_dnt.polyfills.js";
20
+ export { schedule } from "./factory.js";
21
+ export { isScheduleDefinition } from "./types.js";
22
+ export { discoverSchedules } from "./discovery.js";
@@ -0,0 +1,21 @@
1
+ import type { TriggerTarget } from "../trigger/target.js";
2
+ export type ScheduleConcurrencyPolicy = "Allow" | "Forbid" | "Replace";
3
+ export interface ScheduleDefinition {
4
+ id: string;
5
+ name?: string;
6
+ description?: string;
7
+ schedule: string;
8
+ timezone?: string;
9
+ target: TriggerTarget;
10
+ input?: Record<string, unknown>;
11
+ timeoutSeconds?: number;
12
+ backoffLimit?: number;
13
+ concurrencyPolicy?: ScheduleConcurrencyPolicy;
14
+ maxRuns?: number;
15
+ }
16
+ export type ScheduleConfig = Omit<ScheduleDefinition, "schedule"> & {
17
+ cron?: string;
18
+ schedule?: string;
19
+ };
20
+ export declare function isScheduleDefinition(value: unknown): value is ScheduleDefinition;
21
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/schedule/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEvE,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,GAAG;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAShF"}
@@ -0,0 +1,9 @@
1
+ export function isScheduleDefinition(value) {
2
+ if (!value || typeof value !== "object")
3
+ return false;
4
+ const definition = value;
5
+ return (typeof definition.id === "string" &&
6
+ typeof definition.schedule === "string" &&
7
+ definition.target !== null &&
8
+ typeof definition.target === "object");
9
+ }
@@ -0,0 +1,31 @@
1
+ import type { VeryfrontConfig } from "../config/index.js";
2
+ import type { RuntimeAdapter } from "../platform/index.js";
3
+ export type SourceTriggerKind = "schedule" | "webhook";
4
+ export type SourceTriggerDiscoveryErrorCode = "parse_error" | "invalid_definition" | "dynamic_definition" | "duplicate_source_id" | "unsupported_target" | "manual_conflict";
5
+ export interface SourceTriggerDiscoveryError {
6
+ kind: "source_trigger_discovery_error";
7
+ sourceKind: SourceTriggerKind;
8
+ sourcePath: string;
9
+ sourceId?: string;
10
+ code: SourceTriggerDiscoveryErrorCode;
11
+ message: string;
12
+ details?: Record<string, unknown>;
13
+ }
14
+ export interface SourceTriggerDiscoveryResult<T> {
15
+ items: T[];
16
+ errors: SourceTriggerDiscoveryError[];
17
+ }
18
+ export interface TriggerDiscoveryOptions {
19
+ projectDir: string;
20
+ adapter: RuntimeAdapter;
21
+ config?: VeryfrontConfig;
22
+ triggerDir: string;
23
+ sourceKind: SourceTriggerKind;
24
+ }
25
+ export interface TriggerDefinitionWithId {
26
+ id: string;
27
+ }
28
+ export declare function discoverSourceTriggers<T extends TriggerDefinitionWithId>(options: TriggerDiscoveryOptions & {
29
+ validate: (value: unknown) => value is T;
30
+ }): Promise<SourceTriggerDiscoveryResult<T>>;
31
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/src/trigger/discovery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAY3D,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvD,MAAM,MAAM,+BAA+B,GACvC,aAAa,GACb,oBAAoB,GACpB,oBAAoB,GACpB,qBAAqB,GACrB,oBAAoB,GACpB,iBAAiB,CAAC;AAEtB,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,gCAAgC,CAAC;IACvC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,+BAA+B,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,4BAA4B,CAAC,CAAC;IAC7C,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,MAAM,EAAE,2BAA2B,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,iBAAiB,CAAC;CAC/B;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;CACZ;AA8DD,wBAAsB,sBAAsB,CAAC,CAAC,SAAS,uBAAuB,EAC5E,OAAO,EAAE,uBAAuB,GAAG;IACjC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC;CAC1C,GACA,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAiE1C"}