@tagma/sdk 0.7.1 → 0.7.4

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/README.md +109 -48
  2. package/dist/adapters/stdin-approval.d.ts +1 -5
  3. package/dist/adapters/stdin-approval.d.ts.map +1 -1
  4. package/dist/adapters/stdin-approval.js +1 -89
  5. package/dist/adapters/stdin-approval.js.map +1 -1
  6. package/dist/adapters/websocket-approval.d.ts +1 -27
  7. package/dist/adapters/websocket-approval.d.ts.map +1 -1
  8. package/dist/adapters/websocket-approval.js +1 -146
  9. package/dist/adapters/websocket-approval.js.map +1 -1
  10. package/dist/approval.d.ts +2 -12
  11. package/dist/approval.d.ts.map +1 -1
  12. package/dist/approval.js +1 -90
  13. package/dist/approval.js.map +1 -1
  14. package/dist/bootstrap.d.ts +21 -1
  15. package/dist/bootstrap.d.ts.map +1 -1
  16. package/dist/bootstrap.js +21 -11
  17. package/dist/bootstrap.js.map +1 -1
  18. package/dist/core/run-context.d.ts +3 -0
  19. package/dist/core/run-context.d.ts.map +1 -1
  20. package/dist/core/run-context.js +2 -0
  21. package/dist/core/run-context.js.map +1 -1
  22. package/dist/core/task-executor.d.ts.map +1 -1
  23. package/dist/core/task-executor.js +24 -37
  24. package/dist/core/task-executor.js.map +1 -1
  25. package/dist/engine.d.ts +8 -53
  26. package/dist/engine.d.ts.map +1 -1
  27. package/dist/engine.js +7 -294
  28. package/dist/engine.js.map +1 -1
  29. package/dist/index.d.ts +5 -5
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +2 -3
  32. package/dist/index.js.map +1 -1
  33. package/dist/logger.d.ts +2 -60
  34. package/dist/logger.d.ts.map +1 -1
  35. package/dist/logger.js +1 -153
  36. package/dist/logger.js.map +1 -1
  37. package/dist/plugins.d.ts +3 -3
  38. package/dist/plugins.d.ts.map +1 -1
  39. package/dist/plugins.js +1 -1
  40. package/dist/plugins.js.map +1 -1
  41. package/dist/registry.d.ts +2 -60
  42. package/dist/registry.d.ts.map +1 -1
  43. package/dist/registry.js +1 -253
  44. package/dist/registry.js.map +1 -1
  45. package/dist/runner.d.ts +1 -35
  46. package/dist/runner.d.ts.map +1 -1
  47. package/dist/runner.js +1 -610
  48. package/dist/runner.js.map +1 -1
  49. package/dist/runtime/adapters/stdin-approval.d.ts +2 -0
  50. package/dist/runtime/adapters/stdin-approval.d.ts.map +1 -0
  51. package/dist/runtime/adapters/stdin-approval.js +2 -0
  52. package/dist/runtime/adapters/stdin-approval.js.map +1 -0
  53. package/dist/runtime/adapters/websocket-approval.d.ts +2 -0
  54. package/dist/runtime/adapters/websocket-approval.d.ts.map +1 -0
  55. package/dist/runtime/adapters/websocket-approval.js +2 -0
  56. package/dist/runtime/adapters/websocket-approval.js.map +1 -0
  57. package/dist/runtime/bun-process-runner.d.ts +2 -0
  58. package/dist/runtime/bun-process-runner.d.ts.map +1 -0
  59. package/dist/runtime/bun-process-runner.js +2 -0
  60. package/dist/runtime/bun-process-runner.js.map +1 -0
  61. package/dist/runtime.d.ts +3 -0
  62. package/dist/runtime.d.ts.map +1 -0
  63. package/dist/runtime.js +2 -0
  64. package/dist/runtime.js.map +1 -0
  65. package/dist/schema.d.ts.map +1 -1
  66. package/dist/schema.js +1 -7
  67. package/dist/schema.js.map +1 -1
  68. package/dist/tagma.d.ts +13 -4
  69. package/dist/tagma.d.ts.map +1 -1
  70. package/dist/tagma.js +7 -2
  71. package/dist/tagma.js.map +1 -1
  72. package/dist/triggers/file.d.ts.map +1 -1
  73. package/dist/triggers/file.js +74 -107
  74. package/dist/triggers/file.js.map +1 -1
  75. package/dist/validate-raw.d.ts.map +1 -1
  76. package/dist/validate-raw.js +1 -101
  77. package/dist/validate-raw.js.map +1 -1
  78. package/package.json +15 -4
  79. package/src/adapters/stdin-approval.ts +1 -106
  80. package/src/adapters/websocket-approval.ts +1 -224
  81. package/src/approval.ts +5 -127
  82. package/src/bootstrap.ts +24 -15
  83. package/src/core/run-context.test.ts +47 -0
  84. package/src/core/run-context.ts +4 -0
  85. package/src/core/task-executor.ts +28 -45
  86. package/src/engine-ports-mixed.test.ts +70 -44
  87. package/src/engine-ports.test.ts +77 -33
  88. package/src/engine.ts +21 -439
  89. package/src/index.ts +7 -4
  90. package/src/logger.ts +2 -182
  91. package/src/package-split.test.ts +15 -0
  92. package/src/pipeline-runner.test.ts +65 -12
  93. package/src/plugin-registry.test.ts +207 -4
  94. package/src/plugins.ts +6 -3
  95. package/src/registry.ts +7 -298
  96. package/src/runner.ts +1 -666
  97. package/src/runtime/adapters/stdin-approval.ts +1 -0
  98. package/src/runtime/adapters/websocket-approval.ts +1 -0
  99. package/src/runtime/bun-process-runner.ts +1 -0
  100. package/src/runtime-adapters.test.ts +10 -0
  101. package/src/runtime.ts +12 -0
  102. package/src/schema-ports.test.ts +23 -0
  103. package/src/schema.ts +1 -7
  104. package/src/tagma.test.ts +234 -1
  105. package/src/tagma.ts +24 -4
  106. package/src/triggers/file.test.ts +79 -0
  107. package/src/triggers/file.ts +85 -118
  108. package/src/validate-raw.ts +1 -117
@@ -0,0 +1,2 @@
1
+ export * from '@tagma/runtime-bun/adapters/websocket-approval';
2
+ //# sourceMappingURL=websocket-approval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"websocket-approval.js","sourceRoot":"","sources":["../../../src/runtime/adapters/websocket-approval.ts"],"names":[],"mappings":"AAAA,cAAc,gDAAgD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { runCommand, runSpawn } from '@tagma/runtime-bun';
2
+ //# sourceMappingURL=bun-process-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bun-process-runner.d.ts","sourceRoot":"","sources":["../../src/runtime/bun-process-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { runCommand, runSpawn } from '@tagma/runtime-bun';
2
+ //# sourceMappingURL=bun-process-runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bun-process-runner.js","sourceRoot":"","sources":["../../src/runtime/bun-process-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from '@tagma/runtime-bun';
2
+ export type { OpenRunLogOptions, PruneLogOptions, RunOptions, RuntimeLogSink, RuntimeLogStore, RuntimeWatchEvent, RuntimeWatchOptions, TagmaRuntime, TaskOutputPathOptions, } from '@tagma/core';
3
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,qBAAqB,GACtB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '@tagma/runtime-bun';
2
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAOlB,MAAM,SAAS,CAAC;AAOjB,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CA8B5D;AAwDD,wBAAgB,aAAa,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,CA8FrF;AA4DD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,GAAG,MAAM,CAKpF;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAkF5F;AAID;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CAQ/D;AAID,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAGhG"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAOlB,MAAM,SAAS,CAAC;AAOjB,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CA8B5D;AAwDD,wBAAgB,aAAa,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,CA6FrF;AA4DD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,GAAG,MAAM,CAKpF;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,iBAAiB,CA6E5F;AAID;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CAQ/D;AAID,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAGhG"}
package/dist/schema.js CHANGED
@@ -143,11 +143,10 @@ export function resolveConfig(raw, workDir) {
143
143
  completion: rawTask.completion,
144
144
  agent_profile: rawTask.agent_profile ?? rawTrack.agent_profile,
145
145
  cwd: rawTask.cwd ? validatePath(rawTask.cwd, workDir) : trackCwd,
146
- // Lightweight bindings and ports: no inheritance they describe
146
+ // Unified bindings have no inheritance; they describe
147
147
  // per-task data flow, not cross-task defaults.
148
148
  inputs: rawTask.inputs,
149
149
  outputs: rawTask.outputs,
150
- ports: rawTask.ports,
151
150
  };
152
151
  });
153
152
  return {
@@ -272,11 +271,6 @@ export function deresolvePipeline(config, workDir) {
272
271
  : {}),
273
272
  ...(task.inputs && Object.keys(task.inputs).length > 0 ? { inputs: task.inputs } : {}),
274
273
  ...(task.outputs && Object.keys(task.outputs).length > 0 ? { outputs: task.outputs } : {}),
275
- ...(task.ports &&
276
- ((task.ports.inputs && task.ports.inputs.length > 0) ||
277
- (task.ports.outputs && task.ports.outputs.length > 0))
278
- ? { ports: task.ports }
279
- : {}),
280
274
  };
281
275
  });
282
276
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/dist/tagma.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { type EngineResult, type RunPipelineOptions } from './engine';
2
- import { PluginRegistry } from './registry';
3
- import type { PipelineConfig } from './types';
1
+ import { PluginRegistry, type EngineResult, type RunPipelineOptions } from '@tagma/core';
2
+ import type { TagmaRuntime } from '@tagma/core';
3
+ import type { PipelineConfig, TagmaPlugin } from './types';
4
4
  export interface CreateTagmaOptions {
5
5
  /**
6
6
  * Registry used by this SDK instance. Omit to create an isolated registry.
@@ -11,8 +11,17 @@ export interface CreateTagmaOptions {
11
11
  * instance registry. Defaults to true.
12
12
  */
13
13
  readonly builtins?: boolean;
14
+ /**
15
+ * Package-level capability plugins to register into this SDK instance.
16
+ */
17
+ readonly plugins?: readonly TagmaPlugin[];
18
+ /**
19
+ * Runtime implementation used for command and driver process execution.
20
+ * Defaults to the SDK's Bun runtime.
21
+ */
22
+ readonly runtime?: TagmaRuntime;
14
23
  }
15
- export interface TagmaRunOptions extends Omit<RunPipelineOptions, 'registry'> {
24
+ export interface TagmaRunOptions extends Omit<RunPipelineOptions, 'registry' | 'runtime'> {
16
25
  readonly cwd: string;
17
26
  }
18
27
  export interface Tagma {
@@ -1 +1 @@
1
- {"version":3,"file":"tagma.d.ts","sourceRoot":"","sources":["../src/tagma.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7E,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,MAAM,EAAE,CAAC;CACrD;AAED,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,KAAK,CAkBnE"}
1
+ {"version":3,"file":"tagma.d.ts","sourceRoot":"","sources":["../src/tagma.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAEd,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;CACjC;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,SAAS,CAAC;IACvF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7E,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,MAAM,EAAE,CAAC;CACrD;AAED,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,KAAK,CAuBnE"}
package/dist/tagma.js CHANGED
@@ -1,18 +1,23 @@
1
- import { runPipeline } from './engine';
1
+ import { PluginRegistry, runPipeline, } from '@tagma/core';
2
2
  import { bootstrapBuiltins } from './bootstrap';
3
- import { PluginRegistry } from './registry';
4
3
  import { validateConfig } from './schema';
4
+ import { bunRuntime } from '@tagma/runtime-bun';
5
5
  export function createTagma(options = {}) {
6
6
  const registry = options.registry ?? new PluginRegistry();
7
+ const runtime = options.runtime ?? bunRuntime();
7
8
  if (options.builtins !== false) {
8
9
  bootstrapBuiltins(registry);
9
10
  }
11
+ for (const plugin of options.plugins ?? []) {
12
+ registry.registerTagmaPlugin(plugin);
13
+ }
10
14
  return {
11
15
  registry,
12
16
  run(config, { cwd, ...runOptions }) {
13
17
  return runPipeline(config, cwd, {
14
18
  ...runOptions,
15
19
  registry,
20
+ runtime,
16
21
  });
17
22
  },
18
23
  validate(config) {
package/dist/tagma.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tagma.js","sourceRoot":"","sources":["../src/tagma.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA8C,MAAM,UAAU,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAyB1C,MAAM,UAAU,WAAW,CAAC,UAA8B,EAAE;IAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,cAAc,EAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC/B,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO;QACL,QAAQ;QACR,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,UAAU,EAAE;YAChC,OAAO,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;gBAC9B,GAAG,UAAU;gBACb,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QACD,QAAQ,CAAC,MAAM;YACb,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"tagma.js","sourceRoot":"","sources":["../src/tagma.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,WAAW,GAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAmChD,MAAM,UAAU,WAAW,CAAC,UAA8B,EAAE;IAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,cAAc,EAAE,CAAC;IAC1D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;IAChD,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC/B,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC3C,QAAQ,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,OAAO;QACL,QAAQ;QACR,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,UAAU,EAAE;YAChC,OAAO,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;gBAC9B,GAAG,UAAU;gBACb,QAAQ;gBACR,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QACD,QAAQ,CAAC,MAAM;YACb,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/triggers/file.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,UAAU,CAAC;AAU9D,eAAO,MAAM,WAAW,EAAE,aAsJzB,CAAC"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/triggers/file.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,UAAU,CAAC;AAU9D,eAAO,MAAM,WAAW,EAAE,aA4BzB,CAAC"}
@@ -1,8 +1,6 @@
1
- import { watch } from 'chokidar';
2
1
  import { resolve, dirname } from 'path';
3
- import { mkdir } from 'fs/promises';
4
2
  import { parseDuration, validatePath } from '../utils';
5
- import { TriggerTimeoutError } from '../engine';
3
+ import { TriggerTimeoutError } from '../core/trigger-errors';
6
4
  const IS_WINDOWS = process.platform === 'win32';
7
5
  function pathsEqual(a, b) {
8
6
  return IS_WINDOWS ? a.toLowerCase() === b.toLowerCase() : a === b;
@@ -31,112 +29,81 @@ export const FileTrigger = {
31
29
  throw new Error(`file trigger: "path" is required`);
32
30
  const safePath = validatePath(filePath, ctx.workDir);
33
31
  const timeoutMs = config.timeout != null ? parseDuration(String(config.timeout)) : 0;
34
- // Hoist the async work into a named async function so the Promise
35
- // constructor itself is synchronous — avoids the no-async-promise-executor
36
- // lint error and ensures exceptions are always propagated via reject().
37
- async function start(resolve_p, reject) {
38
- if (ctx.signal.aborted) {
39
- reject(new Error('Pipeline aborted'));
40
- return;
41
- }
42
- let settled = false;
43
- let timer = null;
44
- // Ensure the parent directory exists so the watcher doesn't fail
45
- // with ENOENT for nested paths like `build/output/result.json`.
46
- const dir = dirname(safePath);
47
- try {
48
- await mkdir(dir, { recursive: true });
49
- }
50
- catch {
51
- /* best effort — dir may already exist */
52
- }
53
- // Pass `cwd: dir` so chokidar resolves paths relative to the watched
54
- // directory. The 'add'/'change' events will then carry paths relative
55
- // to `dir`, which we resolve with `resolve(dir, addedPath)` for an
56
- // accurate absolute comparison — fixing the ambiguous process.cwd()
57
- // resolution of the previous implementation.
58
- const watcher = watch(dir, {
59
- ignoreInitial: true,
60
- depth: 0,
61
- cwd: dir,
62
- awaitWriteFinish: { stabilityThreshold: 100, pollInterval: 50 },
63
- });
64
- const cleanup = () => {
65
- if (settled)
66
- return;
67
- settled = true;
68
- watcher.close().catch(() => {
69
- /* ignore */
70
- });
71
- if (timer)
72
- clearTimeout(timer);
73
- ctx.signal.removeEventListener('abort', onAbort);
74
- };
75
- const onAbort = () => {
76
- cleanup();
77
- reject(new Error('Pipeline aborted'));
78
- };
79
- watcher.on('add', (addedPath) => {
80
- if (settled)
81
- return;
82
- if (pathsEqual(resolve(dir, addedPath), safePath)) {
83
- cleanup();
84
- resolve_p({ path: safePath });
32
+ return waitForFile({ filePath, safePath, timeoutMs, timeoutLabel: config.timeout, ctx });
33
+ },
34
+ };
35
+ async function waitForFile(options) {
36
+ const { filePath, safePath, timeoutMs, timeoutLabel, ctx } = options;
37
+ if (ctx.signal.aborted)
38
+ throw new Error('Pipeline aborted');
39
+ const dir = dirname(safePath);
40
+ await ctx.runtime.ensureDir(dir).catch(() => {
41
+ /* best effort; runtime watch will surface real failures */
42
+ });
43
+ const watchController = new AbortController();
44
+ let removeAbortListener = () => {
45
+ /* no-op until the abort listener is installed */
46
+ };
47
+ const abortPromise = new Promise((_, reject) => {
48
+ const onAbort = () => {
49
+ watchController.abort();
50
+ reject(new Error('Pipeline aborted'));
51
+ };
52
+ ctx.signal.addEventListener('abort', onAbort, { once: true });
53
+ removeAbortListener = () => ctx.signal.removeEventListener('abort', onAbort);
54
+ });
55
+ let timer = null;
56
+ const timeoutPromise = timeoutMs > 0
57
+ ? new Promise((_, reject) => {
58
+ timer = setTimeout(() => {
59
+ watchController.abort();
60
+ reject(new TriggerTimeoutError(`file trigger timeout: ${filePath} did not appear within ${timeoutLabel}`));
61
+ }, timeoutMs);
62
+ })
63
+ : new Promise(() => {
64
+ /* no timeout */
65
+ });
66
+ async function watchLoop() {
67
+ // Pass `cwd: dir` so runtimes can emit paths relative to the watched
68
+ // directory. The 'add'/'change' events are resolved against `dir` before
69
+ // comparison, preserving the old chokidar behavior without coupling this
70
+ // trigger to chokidar or Bun file APIs.
71
+ for await (const event of ctx.runtime.watch(dir, {
72
+ ignoreInitial: true,
73
+ depth: 0,
74
+ cwd: dir,
75
+ awaitWriteFinishMs: 100,
76
+ signal: watchController.signal,
77
+ })) {
78
+ if (event.type === 'ready') {
79
+ let exists = false;
80
+ try {
81
+ exists = await ctx.runtime.fileExists(safePath);
85
82
  }
86
- });
87
- // Also fire on 'change' so that overwriting an existing file is detected.
88
- // Without this, upstream tasks that truncate-and-rewrite a file emit only
89
- // a 'change' event and the downstream trigger would never resolve.
90
- watcher.on('change', (changedPath) => {
91
- if (settled)
92
- return;
93
- if (pathsEqual(resolve(dir, changedPath), safePath)) {
94
- cleanup();
95
- resolve_p({ path: safePath });
83
+ catch (err) {
84
+ throw new Error(`file trigger existence check failed: ${err instanceof Error ? err.message : String(err)}`);
96
85
  }
97
- });
98
- watcher.on('error', (err) => {
99
- if (settled)
100
- return;
101
- cleanup();
102
- reject(new Error(`file trigger watch error: ${err instanceof Error ? err.message : String(err)}`));
103
- });
104
- // After the watcher finishes its initial scan, check if the file already exists.
105
- // Doing this inside 'ready' eliminates the race window between existence check
106
- // and watcher startup, so we neither miss events nor double-resolve.
107
- watcher.on('ready', () => {
108
- if (settled)
109
- return;
110
- Bun.file(safePath)
111
- .exists()
112
- .then((exists) => {
113
- if (settled)
114
- return;
115
- if (exists) {
116
- cleanup();
117
- resolve_p({ path: safePath });
118
- }
119
- })
120
- .catch((err) => {
121
- if (settled)
122
- return;
123
- cleanup();
124
- reject(new Error(`file trigger existence check failed: ${err instanceof Error ? err.message : String(err)}`));
125
- });
126
- });
127
- if (timeoutMs > 0) {
128
- timer = setTimeout(() => {
129
- if (settled)
130
- return;
131
- cleanup();
132
- reject(new TriggerTimeoutError(`file trigger timeout: ${filePath} did not appear within ${config.timeout}`));
133
- }, timeoutMs);
86
+ if (exists)
87
+ return { path: safePath };
88
+ continue;
89
+ }
90
+ if ((event.type === 'add' || event.type === 'change') &&
91
+ pathsEqual(resolve(dir, event.path), safePath)) {
92
+ return { path: safePath };
134
93
  }
135
- ctx.signal.addEventListener('abort', onAbort);
136
94
  }
137
- return new Promise((resolve_p, reject) => {
138
- start(resolve_p, reject).catch(reject);
139
- });
140
- },
141
- };
95
+ if (ctx.signal.aborted)
96
+ throw new Error('Pipeline aborted');
97
+ throw new Error(`file trigger watch ended before ${filePath} appeared`);
98
+ }
99
+ try {
100
+ return await Promise.race([watchLoop(), timeoutPromise, abortPromise]);
101
+ }
102
+ finally {
103
+ if (timer !== null)
104
+ clearTimeout(timer);
105
+ removeAbortListener();
106
+ watchController.abort();
107
+ }
108
+ }
142
109
  //# sourceMappingURL=file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/triggers/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/triggers/file.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-raw.d.ts","sourceRoot":"","sources":["../src/validate-raw.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAGV,iBAAiB,EAGlB,MAAM,SAAS,CAAC;AA2DjB;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,EACzB,UAAU,CAAC,EAAE,gBAAgB,GAC5B,eAAe,EAAE,CA4SnB"}
1
+ {"version":3,"file":"validate-raw.d.ts","sourceRoot":"","sources":["../src/validate-raw.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAEV,iBAAiB,EAGlB,MAAM,SAAS,CAAC;AA2DjB;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,EACzB,UAAU,CAAC,EAAE,gBAAgB,GAC5B,eAAe,EAAE,CA4SnB"}
@@ -381,79 +381,6 @@ const VALID_PORT_TYPES = new Set([
381
381
  // be parsed as subtraction, so we also forbid them here to keep the
382
382
  // template grammar unambiguous.
383
383
  const PORT_NAME_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;
384
- function validatePortList(list, basePath, kind, errors) {
385
- if (!list)
386
- return;
387
- if (!Array.isArray(list)) {
388
- errors.push({
389
- path: basePath,
390
- message: `ports.${kind} must be an array`,
391
- });
392
- return;
393
- }
394
- const seen = new Set();
395
- for (let i = 0; i < list.length; i++) {
396
- const port = list[i];
397
- const path = `${basePath}[${i}]`;
398
- if (!port || typeof port !== 'object') {
399
- errors.push({ path, message: `ports.${kind}[${i}] must be an object` });
400
- continue;
401
- }
402
- if (typeof port.name !== 'string' || !port.name.trim()) {
403
- errors.push({ path: `${path}.name`, message: 'port.name is required' });
404
- continue;
405
- }
406
- if (!PORT_NAME_RE.test(port.name)) {
407
- errors.push({
408
- path: `${path}.name`,
409
- message: `port name "${port.name}" is invalid. Must match /^[A-Za-z_][A-Za-z0-9_]*$/ (letters, digits, underscores; starts with letter/underscore).`,
410
- });
411
- }
412
- if (seen.has(port.name)) {
413
- errors.push({
414
- path,
415
- message: `Duplicate ports.${kind} name "${port.name}"`,
416
- });
417
- }
418
- seen.add(port.name);
419
- if (!VALID_PORT_TYPES.has(port.type)) {
420
- errors.push({
421
- path: `${path}.type`,
422
- message: `port "${port.name}": type must be one of ${[...VALID_PORT_TYPES].join(', ')} (got ${JSON.stringify(port.type)})`,
423
- });
424
- }
425
- if (port.type === 'enum') {
426
- if (!Array.isArray(port.enum) || port.enum.length === 0) {
427
- errors.push({
428
- path: `${path}.enum`,
429
- message: `port "${port.name}": enum type requires a non-empty "enum" array`,
430
- });
431
- }
432
- else if (port.enum.some((v) => typeof v !== 'string')) {
433
- errors.push({
434
- path: `${path}.enum`,
435
- message: `port "${port.name}": enum values must all be strings`,
436
- });
437
- }
438
- }
439
- if (kind === 'outputs' && (port.required === true || port.from !== undefined)) {
440
- // `required` / `from` are input-only concepts 鈥?outputs are
441
- // always "produced when the task succeeds". Warn softly so the
442
- // YAML doesn't silently accept meaningless fields.
443
- errors.push({
444
- path,
445
- severity: 'warning',
446
- message: `port "${port.name}": "required" and "from" are input-only; ignored on outputs`,
447
- });
448
- }
449
- if (port.from !== undefined && typeof port.from !== 'string') {
450
- errors.push({
451
- path: `${path}.from`,
452
- message: `port "${port.name}": "from" must be a string (got ${typeof port.from})`,
453
- });
454
- }
455
- }
456
- }
457
384
  function validateBindingMap(value, basePath, kind, errors) {
458
385
  if (value === undefined)
459
386
  return;
@@ -519,28 +446,6 @@ function validateBindingMap(value, basePath, kind, errors) {
519
446
  }
520
447
  }
521
448
  }
522
- function validateBindingPortNameOverlap(task, taskPath, errors) {
523
- const looseInputs = objectKeys(task.inputs);
524
- const looseOutputs = objectKeys(task.outputs);
525
- const strictInputs = new Set(Array.isArray(task.ports?.inputs) ? task.ports.inputs.map((p) => p?.name) : []);
526
- const strictOutputs = new Set(Array.isArray(task.ports?.outputs) ? task.ports.outputs.map((p) => p?.name) : []);
527
- for (const name of looseInputs) {
528
- if (strictInputs.has(name)) {
529
- errors.push({
530
- path: `${taskPath}.inputs.${name}`,
531
- message: `task input binding "${name}" duplicates strict ports.inputs; choose one layer for this name`,
532
- });
533
- }
534
- }
535
- for (const name of looseOutputs) {
536
- if (strictOutputs.has(name)) {
537
- errors.push({
538
- path: `${taskPath}.outputs.${name}`,
539
- message: `task output binding "${name}" duplicates strict ports.outputs; choose one layer for this name`,
540
- });
541
- }
542
- }
543
- }
544
449
  function objectKeys(value) {
545
450
  if (!value || typeof value !== 'object' || Array.isArray(value))
546
451
  return [];
@@ -590,7 +495,6 @@ function validateTaskPorts(task, trackId, taskPath, qidIndex, index, errors) {
590
495
  const isCommandTask = typeof task.command === 'string' && typeof task.prompt !== 'string';
591
496
  validateBindingMap(task.inputs, `${taskPath}.inputs`, 'inputs', errors);
592
497
  validateBindingMap(task.outputs, `${taskPath}.outputs`, 'outputs', errors);
593
- validateBindingPortNameOverlap(task, taskPath, errors);
594
498
  validateInputBindingSources(task, trackId, taskPath, index, errors);
595
499
  if (ports !== undefined) {
596
500
  errors.push({
@@ -603,7 +507,7 @@ function validateTaskPorts(task, trackId, taskPath, qidIndex, index, errors) {
603
507
  // Collect placeholder references 鈹€鈹€
604
508
  // `{{inputs.X}}` is valid in both prompt and command text. The set of
605
509
  // names a task may legally reference differs by task kind:
606
- // - Command Task: its own declared `ports.inputs`
510
+ // - Command Task: its own declared `inputs`
607
511
  // - Prompt Task: the union of direct-upstream Command outputs
608
512
  const referenced = new Set();
609
513
  if (typeof task.prompt === 'string') {
@@ -766,10 +670,6 @@ function validateInferredPromptPortConflicts(task, trackId, taskPath, qidIndex,
766
670
  }
767
671
  }
768
672
  }
769
- /** Minimal shape fingerprint for conflict detection: type + enum set. */
770
- function portShapeKey(port) {
771
- return bindingShapeKey(port);
772
- }
773
673
  function bindingShapeKey(port) {
774
674
  if ((port.type ?? 'json') !== 'enum')
775
675
  return String(port.type ?? 'json');