@dev-ecosystem/core 0.1.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 (122) hide show
  1. package/README.md +0 -0
  2. package/dist/capabilities/devforge.capabilities.json +0 -0
  3. package/dist/capabilities/mediaproc.capabilities.json +0 -0
  4. package/dist/capabilities/orbyt.capabilities.json +0 -0
  5. package/dist/capabilities/vaulta.capabilities.json +0 -0
  6. package/dist/contracts/adapter.contract.d.ts +1 -0
  7. package/dist/contracts/adapter.contract.d.ts.map +1 -0
  8. package/dist/contracts/adapter.contract.js +2 -0
  9. package/dist/contracts/adapter.contract.js.map +1 -0
  10. package/dist/contracts/cli.contract.d.ts +1 -0
  11. package/dist/contracts/cli.contract.d.ts.map +1 -0
  12. package/dist/contracts/cli.contract.js +2 -0
  13. package/dist/contracts/cli.contract.js.map +1 -0
  14. package/dist/contracts/engine.contract.d.ts +1 -0
  15. package/dist/contracts/engine.contract.d.ts.map +1 -0
  16. package/dist/contracts/engine.contract.js +2 -0
  17. package/dist/contracts/engine.contract.js.map +1 -0
  18. package/dist/contracts/plugin.contract.d.ts +1 -0
  19. package/dist/contracts/plugin.contract.d.ts.map +1 -0
  20. package/dist/contracts/plugin.contract.js +2 -0
  21. package/dist/contracts/plugin.contract.js.map +1 -0
  22. package/dist/contracts/vault.contract.d.ts +1 -0
  23. package/dist/contracts/vault.contract.d.ts.map +1 -0
  24. package/dist/contracts/vault.contract.js +2 -0
  25. package/dist/contracts/vault.contract.js.map +1 -0
  26. package/dist/contracts/workflow.contract.d.ts +1 -0
  27. package/dist/contracts/workflow.contract.d.ts.map +1 -0
  28. package/dist/contracts/workflow.contract.js +2 -0
  29. package/dist/contracts/workflow.contract.js.map +1 -0
  30. package/dist/errors/BaseError.d.ts +108 -0
  31. package/dist/errors/BaseError.d.ts.map +1 -0
  32. package/dist/errors/BaseError.js +163 -0
  33. package/dist/errors/BaseError.js.map +1 -0
  34. package/dist/errors/ErrorCodes.d.ts +111 -0
  35. package/dist/errors/ErrorCodes.d.ts.map +1 -0
  36. package/dist/errors/ErrorCodes.js +130 -0
  37. package/dist/errors/ErrorCodes.js.map +1 -0
  38. package/dist/errors/ErrorTypes.d.ts +144 -0
  39. package/dist/errors/ErrorTypes.d.ts.map +1 -0
  40. package/dist/errors/ErrorTypes.js +172 -0
  41. package/dist/errors/ErrorTypes.js.map +1 -0
  42. package/dist/errors/devforge.codes.d.ts +71 -0
  43. package/dist/errors/devforge.codes.d.ts.map +1 -0
  44. package/dist/errors/devforge.codes.js +84 -0
  45. package/dist/errors/devforge.codes.js.map +1 -0
  46. package/dist/errors/devforge.errors.d.ts +126 -0
  47. package/dist/errors/devforge.errors.d.ts.map +1 -0
  48. package/dist/errors/devforge.errors.js +139 -0
  49. package/dist/errors/devforge.errors.js.map +1 -0
  50. package/dist/errors/index.d.ts +22 -0
  51. package/dist/errors/index.d.ts.map +1 -0
  52. package/dist/errors/index.js +37 -0
  53. package/dist/errors/index.js.map +1 -0
  54. package/dist/errors/mediaproc.codes.d.ts +92 -0
  55. package/dist/errors/mediaproc.codes.d.ts.map +1 -0
  56. package/dist/errors/mediaproc.codes.js +108 -0
  57. package/dist/errors/mediaproc.codes.js.map +1 -0
  58. package/dist/errors/mediaproc.errors.d.ts +120 -0
  59. package/dist/errors/mediaproc.errors.d.ts.map +1 -0
  60. package/dist/errors/mediaproc.errors.js +133 -0
  61. package/dist/errors/mediaproc.errors.js.map +1 -0
  62. package/dist/errors/orbyt.errors.d.ts +168 -0
  63. package/dist/errors/orbyt.errors.d.ts.map +1 -0
  64. package/dist/errors/orbyt.errors.js +187 -0
  65. package/dist/errors/orbyt.errors.js.map +1 -0
  66. package/dist/errors/vaulta.codes.d.ts +81 -0
  67. package/dist/errors/vaulta.codes.d.ts.map +1 -0
  68. package/dist/errors/vaulta.codes.js +94 -0
  69. package/dist/errors/vaulta.codes.js.map +1 -0
  70. package/dist/errors/vaulta.errors.d.ts +135 -0
  71. package/dist/errors/vaulta.errors.d.ts.map +1 -0
  72. package/dist/errors/vaulta.errors.js +154 -0
  73. package/dist/errors/vaulta.errors.js.map +1 -0
  74. package/dist/exit-codes/ExitCodes.d.ts +136 -0
  75. package/dist/exit-codes/ExitCodes.d.ts.map +1 -0
  76. package/dist/exit-codes/ExitCodes.js +229 -0
  77. package/dist/exit-codes/ExitCodes.js.map +1 -0
  78. package/dist/index.d.ts +24 -0
  79. package/dist/index.d.ts.map +1 -0
  80. package/dist/index.js +48 -0
  81. package/dist/index.js.map +1 -0
  82. package/dist/logging/LogFormat.d.ts +1 -0
  83. package/dist/logging/LogFormat.d.ts.map +1 -0
  84. package/dist/logging/LogFormat.js +2 -0
  85. package/dist/logging/LogFormat.js.map +1 -0
  86. package/dist/manifests/adapter.manifest.json +0 -0
  87. package/dist/manifests/plugin.manifest.json +0 -0
  88. package/dist/manifests/workflow.manifest.json +0 -0
  89. package/dist/schemas/adapter.schema.json +0 -0
  90. package/dist/schemas/capability.schem.json +0 -0
  91. package/dist/schemas/index.d.ts +401 -0
  92. package/dist/schemas/index.d.ts.map +1 -0
  93. package/dist/schemas/index.js +107 -0
  94. package/dist/schemas/index.js.map +1 -0
  95. package/dist/schemas/manifest.schame.json +0 -0
  96. package/dist/schemas/plugin.schema.json +0 -0
  97. package/dist/schemas/workflow.schema.json +485 -0
  98. package/dist/schemas/workflow.schema.zod.d.ts +450 -0
  99. package/dist/schemas/workflow.schema.zod.d.ts.map +1 -0
  100. package/dist/schemas/workflow.schema.zod.js +234 -0
  101. package/dist/schemas/workflow.schema.zod.js.map +1 -0
  102. package/dist/types/adapter.types.d.ts +1 -0
  103. package/dist/types/adapter.types.d.ts.map +1 -0
  104. package/dist/types/adapter.types.js +2 -0
  105. package/dist/types/adapter.types.js.map +1 -0
  106. package/dist/types/global.types.d.ts +1 -0
  107. package/dist/types/global.types.d.ts.map +1 -0
  108. package/dist/types/global.types.js +2 -0
  109. package/dist/types/global.types.js.map +1 -0
  110. package/dist/types/plugin.types.d.ts +1 -0
  111. package/dist/types/plugin.types.d.ts.map +1 -0
  112. package/dist/types/plugin.types.js +2 -0
  113. package/dist/types/plugin.types.js.map +1 -0
  114. package/dist/types/workflow.types.d.ts +503 -0
  115. package/dist/types/workflow.types.d.ts.map +1 -0
  116. package/dist/types/workflow.types.js +90 -0
  117. package/dist/types/workflow.types.js.map +1 -0
  118. package/dist/utils/assert.d.ts +1 -0
  119. package/dist/utils/assert.d.ts.map +1 -0
  120. package/dist/utils/assert.js +2 -0
  121. package/dist/utils/assert.js.map +1 -0
  122. package/package.json +30 -0
@@ -0,0 +1,503 @@
1
+ /**
2
+ * Orbyt Workflow Type Definitions
3
+ *
4
+ * Comprehensive TypeScript types for Orbyt workflows.
5
+ * These types define the structure of workflow definitions across the ecosystem.
6
+ *
7
+ * Key Principles:
8
+ * - Domain-agnostic: works for any workflow type
9
+ * - Explicit over implicit: no `any` unless truly dynamic
10
+ * - Documented: every type has clear purpose
11
+ * - Versioned: includes v1 and future-reserved fields
12
+ */
13
+ /**
14
+ * Type of workflow executable
15
+ */
16
+ export declare enum WorkflowKind {
17
+ /** Standard workflow - default execution model */
18
+ Workflow = "workflow",
19
+ /** Pipeline - emphasizes data flow */
20
+ Pipeline = "pipeline",
21
+ /** Job - emphasizes scheduled/batch execution */
22
+ Job = "job",
23
+ /** Playbook - emphasizes operational procedures */
24
+ Playbook = "playbook",
25
+ /** Automation - emphasizes event-driven execution */
26
+ Automation = "automation"
27
+ }
28
+ /**
29
+ * Trigger types for workflow execution
30
+ */
31
+ export declare enum TriggerType {
32
+ /** Manually invoked by user */
33
+ Manual = "manual",
34
+ /** Scheduled via cron expression */
35
+ Cron = "cron",
36
+ /** Event-driven execution */
37
+ Event = "event",
38
+ /** HTTP webhook trigger */
39
+ Webhook = "webhook"
40
+ }
41
+ /**
42
+ * Failure handling policy
43
+ */
44
+ export declare enum FailurePolicy {
45
+ /** Stop entire workflow on first failure */
46
+ Stop = "stop",
47
+ /** Continue with remaining steps */
48
+ Continue = "continue",
49
+ /** Isolate failure to step only */
50
+ Isolate = "isolate"
51
+ }
52
+ /**
53
+ * Retry backoff strategy
54
+ */
55
+ export declare enum BackoffStrategy {
56
+ /** Fixed delay between retries */
57
+ Linear = "linear",
58
+ /** Exponentially increasing delay */
59
+ Exponential = "exponential"
60
+ }
61
+ /**
62
+ * Sandbox enforcement level
63
+ */
64
+ export declare enum SandboxLevel {
65
+ /** No sandboxing */
66
+ None = "none",
67
+ /** Basic permission checks */
68
+ Basic = "basic",
69
+ /** Strict isolation and permissions */
70
+ Strict = "strict"
71
+ }
72
+ /**
73
+ * Execution environment
74
+ */
75
+ export declare enum ExecutionEnvironment {
76
+ Local = "local",
77
+ Dev = "dev",
78
+ Staging = "staging",
79
+ Prod = "prod"
80
+ }
81
+ /**
82
+ * Workflow metadata for identification and organization.
83
+ * Never used for execution logic.
84
+ *
85
+ * @category Metadata
86
+ */
87
+ export interface WorkflowMetadata {
88
+ /** Human-readable workflow name */
89
+ name?: string;
90
+ /** Detailed description of workflow purpose */
91
+ description?: string;
92
+ /** Tags for categorization and search */
93
+ tags?: string[];
94
+ /** Team or individual owner */
95
+ owner?: string;
96
+ /** Version of this workflow (not schema version) */
97
+ version?: string;
98
+ /** ISO 8601 creation timestamp */
99
+ createdAt?: string;
100
+ /** ISO 8601 last update timestamp */
101
+ updatedAt?: string;
102
+ /** Allow additional metadata fields */
103
+ [key: string]: any;
104
+ }
105
+ /**
106
+ * Zero-runtime-impact annotations for AI, UI, and tooling.
107
+ *
108
+ * @category Metadata
109
+ */
110
+ export interface WorkflowAnnotations {
111
+ /** Hint for AI about workflow intent */
112
+ 'ai.intent'?: string;
113
+ /** UI grouping category */
114
+ 'ui.group'?: string;
115
+ /** Icon identifier for visual representation */
116
+ 'ui.icon'?: string;
117
+ /** Allow additional annotations */
118
+ [key: string]: any;
119
+ }
120
+ /**
121
+ * Base trigger interface
122
+ *
123
+ * @category Triggers
124
+ */
125
+ export interface BaseTrigger {
126
+ type: TriggerType;
127
+ }
128
+ /**
129
+ * Manual trigger - workflow must be explicitly invoked
130
+ *
131
+ * @category Triggers
132
+ */
133
+ export interface ManualTrigger extends BaseTrigger {
134
+ type: TriggerType.Manual;
135
+ }
136
+ /**
137
+ * Cron-based scheduled trigger
138
+ *
139
+ * @category Triggers
140
+ */
141
+ export interface CronTrigger extends BaseTrigger {
142
+ type: TriggerType.Cron;
143
+ /** Cron expression (e.g., "0 2 * * *") */
144
+ schedule: string;
145
+ }
146
+ /**
147
+ * Event-driven trigger
148
+ *
149
+ * @category Triggers
150
+ */
151
+ export interface EventTrigger extends BaseTrigger {
152
+ type: TriggerType.Event;
153
+ /** Event source identifier (e.g., "github.push") */
154
+ source: string;
155
+ /** Optional filtering conditions */
156
+ filters?: Record<string, any>;
157
+ }
158
+ /**
159
+ * HTTP webhook trigger
160
+ *
161
+ * @category Triggers
162
+ */
163
+ export interface WebhookTrigger extends BaseTrigger {
164
+ type: TriggerType.Webhook;
165
+ /** Webhook endpoint path */
166
+ endpoint: string;
167
+ /** Optional filtering conditions */
168
+ filters?: Record<string, any>;
169
+ }
170
+ /**
171
+ * Union of all trigger types
172
+ *
173
+ * @category Triggers
174
+ */
175
+ export type WorkflowTrigger = ManualTrigger | CronTrigger | EventTrigger | WebhookTrigger;
176
+ /**
177
+ * External secret references.
178
+ * Values are NEVER stored inline - only references to secret providers.
179
+ *
180
+ * Format: "provider:path" (e.g., "vaulta:mediaproc/api/key")
181
+ *
182
+ * @category Secrets
183
+ */
184
+ export interface WorkflowSecrets {
185
+ /** Secret vault provider (default: "vaulta") */
186
+ vault?: string;
187
+ /** Map of logical names to provider-specific paths */
188
+ keys: Record<string, string>;
189
+ }
190
+ /**
191
+ * Input parameter data types
192
+ *
193
+ * @category Inputs
194
+ */
195
+ export type InputType = 'string' | 'number' | 'boolean' | 'array' | 'object';
196
+ /**
197
+ * Definition of a single input parameter
198
+ *
199
+ * @category Inputs
200
+ */
201
+ export interface WorkflowInputDefinition {
202
+ /** Data type of input */
203
+ type?: InputType;
204
+ /** Whether input is required */
205
+ required?: boolean;
206
+ /** Default value if not provided */
207
+ default?: any;
208
+ /** Human-readable description */
209
+ description?: string;
210
+ }
211
+ /**
212
+ * Runtime parameters for workflow reusability
213
+ *
214
+ * @category Inputs
215
+ */
216
+ export type WorkflowInputs = Record<string, WorkflowInputDefinition>;
217
+ /**
218
+ * Runtime environment context (read-only for steps)
219
+ *
220
+ * @category Context
221
+ */
222
+ export interface WorkflowContext {
223
+ /** Environment name */
224
+ env?: ExecutionEnvironment;
225
+ /** Execution platform */
226
+ platform?: string;
227
+ /** Working directory path */
228
+ workspace?: string;
229
+ /** Allow additional context fields */
230
+ [key: string]: any;
231
+ }
232
+ /**
233
+ * Retry configuration
234
+ *
235
+ * @category Execution
236
+ */
237
+ export interface WorkflowRetryConfig {
238
+ /** Maximum retry attempts */
239
+ max: number;
240
+ /** Backoff strategy */
241
+ backoff?: BackoffStrategy;
242
+ /** Initial delay in milliseconds */
243
+ delay?: number;
244
+ }
245
+ /**
246
+ * Timeout specification (e.g., "30s", "5m", "1h")
247
+ *
248
+ * @category Execution
249
+ */
250
+ export type TimeoutSpec = string;
251
+ /**
252
+ * Default settings applied to all steps
253
+ *
254
+ * @category Configuration
255
+ */
256
+ export interface WorkflowDefaults {
257
+ /** Default retry configuration */
258
+ retry?: WorkflowRetryConfig;
259
+ /** Default step timeout */
260
+ timeout?: TimeoutSpec;
261
+ /** Default adapter if not specified in uses */
262
+ adapter?: string;
263
+ /** Allow additional defaults */
264
+ [key: string]: any;
265
+ }
266
+ /**
267
+ * Execution policies and rules
268
+ *
269
+ * @category Configuration
270
+ */
271
+ export interface WorkflowPolicies {
272
+ /** Failure handling policy */
273
+ failure?: FailurePolicy;
274
+ /** Maximum parallel step execution */
275
+ concurrency?: number;
276
+ /** Sandbox enforcement level */
277
+ sandbox?: SandboxLevel;
278
+ /** Allow additional policies */
279
+ [key: string]: any;
280
+ }
281
+ /**
282
+ * Filesystem permissions
283
+ *
284
+ * @category Security
285
+ */
286
+ export interface FilesystemPermissions {
287
+ /** Allowed read paths */
288
+ read?: string[];
289
+ /** Allowed write paths */
290
+ write?: string[];
291
+ }
292
+ /**
293
+ * Network permissions
294
+ *
295
+ * @category Security
296
+ */
297
+ export interface NetworkPermissions {
298
+ /** Allowed hosts/domains */
299
+ allow?: string[];
300
+ /** Blocked hosts/domains */
301
+ deny?: string[];
302
+ }
303
+ /**
304
+ * Fine-grained security permissions
305
+ *
306
+ * @category Security
307
+ */
308
+ export interface WorkflowPermissions {
309
+ /** Filesystem access permissions */
310
+ fs?: FilesystemPermissions;
311
+ /** Network access permissions */
312
+ network?: NetworkPermissions;
313
+ /** Allow additional permission types */
314
+ [key: string]: any;
315
+ }
316
+ /**
317
+ * Resource constraints for cloud/distributed execution
318
+ * Reserved for future use
319
+ *
320
+ * @category Resources
321
+ */
322
+ export interface WorkflowResources {
323
+ /** CPU allocation */
324
+ cpu?: number | string;
325
+ /** Memory allocation (e.g., "512MB", "2GB") */
326
+ memory?: string;
327
+ /** Disk allocation (e.g., "1GB", "10GB") */
328
+ disk?: string;
329
+ /** Overall workflow timeout */
330
+ timeout?: TimeoutSpec;
331
+ /** Allow additional resource specifications */
332
+ [key: string]: any;
333
+ }
334
+ /**
335
+ * Output mapping from step result to named outputs
336
+ *
337
+ * @category Steps
338
+ */
339
+ export type StepOutputMapping = Record<string, string>;
340
+ /**
341
+ * Conditional execution expression
342
+ * Supports ${inputs.*}, ${secrets.*}, ${steps.*.outputs.*}, ${context.*}
343
+ *
344
+ * @category Steps
345
+ */
346
+ export type StepCondition = string;
347
+ /**
348
+ * Individual workflow step definition
349
+ *
350
+ * @category Steps
351
+ */
352
+ export interface WorkflowStepDefinition {
353
+ /**
354
+ * Unique step identifier
355
+ * Used for output referencing and dependencies
356
+ * Pattern: ^[a-zA-Z][a-zA-Z0-9_-]*$
357
+ */
358
+ id: string;
359
+ /** Human-readable step name */
360
+ name?: string;
361
+ /**
362
+ * Action to execute - THE universal abstraction
363
+ * Format: namespace.action or namespace.domain.action
364
+ *
365
+ * Examples:
366
+ * - mediaproc.image.resize
367
+ * - cli.exec
368
+ * - http.request
369
+ * - shell.run
370
+ * - db.query
371
+ */
372
+ uses: string;
373
+ /**
374
+ * Adapter-specific input parameters
375
+ * Structure validated by adapter, not by schema
376
+ * Supports variable interpolation: ${namespace.path}
377
+ */
378
+ with?: Record<string, any>;
379
+ /** Conditional execution expression */
380
+ when?: StepCondition;
381
+ /** Explicit step dependencies (step IDs) */
382
+ needs?: string[];
383
+ /** Step-specific retry config (overrides defaults) */
384
+ retry?: WorkflowRetryConfig;
385
+ /** Step execution timeout (overrides defaults) */
386
+ timeout?: TimeoutSpec;
387
+ /**
388
+ * Continue workflow even if step fails
389
+ * Critical for cleanup and best-effort steps
390
+ */
391
+ continueOnError?: boolean;
392
+ /** Map step outputs to named values for other steps */
393
+ outputs?: StepOutputMapping;
394
+ /** Environment variables for this step */
395
+ env?: Record<string, string>;
396
+ }
397
+ /**
398
+ * Core workflow execution definition
399
+ *
400
+ * @category Workflow
401
+ */
402
+ export interface WorkflowBody {
403
+ /** Ordered list of execution steps */
404
+ steps: WorkflowStepDefinition[];
405
+ }
406
+ /**
407
+ * Lifecycle hooks - Reserved for future use
408
+ *
409
+ * @category Lifecycle
410
+ */
411
+ export interface WorkflowLifecycleHooks {
412
+ /** Steps to run on successful completion */
413
+ success?: any[];
414
+ /** Steps to run on failure */
415
+ failure?: any[];
416
+ /** Steps to always run (cleanup) */
417
+ always?: any[];
418
+ }
419
+ /**
420
+ * Complete Orbyt workflow definition
421
+ *
422
+ * This is the root type for all workflow YAML/JSON files.
423
+ *
424
+ * @category Workflow
425
+ */
426
+ export interface WorkflowDefinition {
427
+ /** Schema version (semantic versioning) */
428
+ version: string;
429
+ /** Type of executable */
430
+ kind: WorkflowKind | string;
431
+ /** Core workflow execution definition */
432
+ workflow: WorkflowBody;
433
+ /** Human-readable metadata */
434
+ metadata?: WorkflowMetadata;
435
+ /** Zero-impact annotations for tooling */
436
+ annotations?: WorkflowAnnotations;
437
+ /** Execution triggers */
438
+ triggers?: WorkflowTrigger[];
439
+ /** External secret references */
440
+ secrets?: WorkflowSecrets;
441
+ /** Runtime parameters */
442
+ inputs?: WorkflowInputs;
443
+ /** Runtime environment context */
444
+ context?: WorkflowContext;
445
+ /** Default settings for all steps */
446
+ defaults?: WorkflowDefaults;
447
+ /** Execution policies */
448
+ policies?: WorkflowPolicies;
449
+ /** Security permissions */
450
+ permissions?: WorkflowPermissions;
451
+ /** Resource constraints (future) */
452
+ resources?: WorkflowResources;
453
+ /** Final workflow outputs returned to caller */
454
+ outputs?: Record<string, string>;
455
+ /** Lifecycle hooks (future) */
456
+ on?: WorkflowLifecycleHooks;
457
+ }
458
+ /**
459
+ * Variable reference pattern
460
+ * Format: ${namespace.path.to.value}
461
+ *
462
+ * Namespaces:
463
+ * - inputs.*
464
+ * - secrets.*
465
+ * - steps.*.outputs.*
466
+ * - context.*
467
+ * - env.*
468
+ *
469
+ * @category Variables
470
+ */
471
+ export type VariableReference = string;
472
+ /**
473
+ * Action reference pattern
474
+ * Format: namespace.action or namespace.domain.action
475
+ *
476
+ * Examples:
477
+ * - mediaproc.image.resize
478
+ * - cli.exec
479
+ * - http.request
480
+ *
481
+ * @category Actions
482
+ */
483
+ export type ActionReference = string;
484
+ /**
485
+ * Secret reference pattern
486
+ * Format: provider:path
487
+ *
488
+ * Examples:
489
+ * - vaulta:mediaproc/api/key
490
+ * - aws-secrets:prod/db/password
491
+ *
492
+ * @category Secrets
493
+ */
494
+ export type SecretReference = string;
495
+ /**
496
+ * Marks fields that are implemented in v1
497
+ */
498
+ export type V1Field = unknown;
499
+ /**
500
+ * Marks fields that are reserved for future versions
501
+ */
502
+ export type FutureField = unknown;
503
+ //# sourceMappingURL=workflow.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.types.d.ts","sourceRoot":"","sources":["../../src/types/workflow.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Orbyt Workflow Type Definitions
3
+ *
4
+ * Comprehensive TypeScript types for Orbyt workflows.
5
+ * These types define the structure of workflow definitions across the ecosystem.
6
+ *
7
+ * Key Principles:
8
+ * - Domain-agnostic: works for any workflow type
9
+ * - Explicit over implicit: no `any` unless truly dynamic
10
+ * - Documented: every type has clear purpose
11
+ * - Versioned: includes v1 and future-reserved fields
12
+ */
13
+ // ============================================================================
14
+ // ENUMS & CONSTANTS
15
+ // ============================================================================
16
+ /**
17
+ * Type of workflow executable
18
+ */
19
+ export var WorkflowKind;
20
+ (function (WorkflowKind) {
21
+ /** Standard workflow - default execution model */
22
+ WorkflowKind["Workflow"] = "workflow";
23
+ /** Pipeline - emphasizes data flow */
24
+ WorkflowKind["Pipeline"] = "pipeline";
25
+ /** Job - emphasizes scheduled/batch execution */
26
+ WorkflowKind["Job"] = "job";
27
+ /** Playbook - emphasizes operational procedures */
28
+ WorkflowKind["Playbook"] = "playbook";
29
+ /** Automation - emphasizes event-driven execution */
30
+ WorkflowKind["Automation"] = "automation";
31
+ })(WorkflowKind || (WorkflowKind = {}));
32
+ /**
33
+ * Trigger types for workflow execution
34
+ */
35
+ export var TriggerType;
36
+ (function (TriggerType) {
37
+ /** Manually invoked by user */
38
+ TriggerType["Manual"] = "manual";
39
+ /** Scheduled via cron expression */
40
+ TriggerType["Cron"] = "cron";
41
+ /** Event-driven execution */
42
+ TriggerType["Event"] = "event";
43
+ /** HTTP webhook trigger */
44
+ TriggerType["Webhook"] = "webhook";
45
+ })(TriggerType || (TriggerType = {}));
46
+ /**
47
+ * Failure handling policy
48
+ */
49
+ export var FailurePolicy;
50
+ (function (FailurePolicy) {
51
+ /** Stop entire workflow on first failure */
52
+ FailurePolicy["Stop"] = "stop";
53
+ /** Continue with remaining steps */
54
+ FailurePolicy["Continue"] = "continue";
55
+ /** Isolate failure to step only */
56
+ FailurePolicy["Isolate"] = "isolate";
57
+ })(FailurePolicy || (FailurePolicy = {}));
58
+ /**
59
+ * Retry backoff strategy
60
+ */
61
+ export var BackoffStrategy;
62
+ (function (BackoffStrategy) {
63
+ /** Fixed delay between retries */
64
+ BackoffStrategy["Linear"] = "linear";
65
+ /** Exponentially increasing delay */
66
+ BackoffStrategy["Exponential"] = "exponential";
67
+ })(BackoffStrategy || (BackoffStrategy = {}));
68
+ /**
69
+ * Sandbox enforcement level
70
+ */
71
+ export var SandboxLevel;
72
+ (function (SandboxLevel) {
73
+ /** No sandboxing */
74
+ SandboxLevel["None"] = "none";
75
+ /** Basic permission checks */
76
+ SandboxLevel["Basic"] = "basic";
77
+ /** Strict isolation and permissions */
78
+ SandboxLevel["Strict"] = "strict";
79
+ })(SandboxLevel || (SandboxLevel = {}));
80
+ /**
81
+ * Execution environment
82
+ */
83
+ export var ExecutionEnvironment;
84
+ (function (ExecutionEnvironment) {
85
+ ExecutionEnvironment["Local"] = "local";
86
+ ExecutionEnvironment["Dev"] = "dev";
87
+ ExecutionEnvironment["Staging"] = "staging";
88
+ ExecutionEnvironment["Prod"] = "prod";
89
+ })(ExecutionEnvironment || (ExecutionEnvironment = {}));
90
+ //# sourceMappingURL=workflow.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.types.js","sourceRoot":"","sources":["../../src/types/workflow.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAN,IAAY,YAWX;AAXD,WAAY,YAAY;IACtB,kDAAkD;IAClD,qCAAqB,CAAA;IACrB,sCAAsC;IACtC,qCAAqB,CAAA;IACrB,iDAAiD;IACjD,2BAAW,CAAA;IACX,mDAAmD;IACnD,qCAAqB,CAAA;IACrB,qDAAqD;IACrD,yCAAyB,CAAA;AAC3B,CAAC,EAXW,YAAY,KAAZ,YAAY,QAWvB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,WASX;AATD,WAAY,WAAW;IACrB,+BAA+B;IAC/B,gCAAiB,CAAA;IACjB,oCAAoC;IACpC,4BAAa,CAAA;IACb,6BAA6B;IAC7B,8BAAe,CAAA;IACf,2BAA2B;IAC3B,kCAAmB,CAAA;AACrB,CAAC,EATW,WAAW,KAAX,WAAW,QAStB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,4CAA4C;IAC5C,8BAAa,CAAA;IACb,oCAAoC;IACpC,sCAAqB,CAAA;IACrB,mCAAmC;IACnC,oCAAmB,CAAA;AACrB,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,kCAAkC;IAClC,oCAAiB,CAAA;IACjB,qCAAqC;IACrC,8CAA2B,CAAA;AAC7B,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,YAOX;AAPD,WAAY,YAAY;IACtB,oBAAoB;IACpB,6BAAa,CAAA;IACb,8BAA8B;IAC9B,+BAAe,CAAA;IACf,uCAAuC;IACvC,iCAAiB,CAAA;AACnB,CAAC,EAPW,YAAY,KAAZ,YAAY,QAOvB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,uCAAe,CAAA;IACf,mCAAW,CAAA;IACX,2CAAmB,CAAA;IACnB,qCAAa,CAAA;AACf,CAAC,EALW,oBAAoB,KAApB,oBAAoB,QAK/B"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=assert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../src/utils/assert.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=assert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assert.js","sourceRoot":"","sources":["../../src/utils/assert.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "@dev-ecosystem/core",
3
+ "version": "0.1.0",
4
+ "description": "Core utilities and libraries for the Dev Ecosystem.",
5
+ "type": "module",
6
+ "scripts": {
7
+ "build": "rm -rf dist && tsc",
8
+ "clean": "rm -rf dist"
9
+ },
10
+ "keywords": [
11
+ "orbyt",
12
+ "ecosystem",
13
+ "developer",
14
+ "infrastructure",
15
+ "tools",
16
+ "devforge",
17
+ "scaffolding",
18
+ "automation",
19
+ "cli",
20
+ "libraries"
21
+ ],
22
+ "author": {
23
+ "name": "0xshariq",
24
+ "url": "https://github.com/0xshariq"
25
+ },
26
+ "license": "MIT",
27
+ "engines": {
28
+ "node": ">=22.0.0"
29
+ }
30
+ }