@oisincoveney/pipeline 3.11.9 → 3.11.11

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.
@@ -80,6 +80,7 @@ declare const runnerArgoWorkflowManifestSchema: z.ZodObject<{
80
80
  path: z.ZodOptional<z.ZodString>;
81
81
  }, z.core.$strict>>;
82
82
  }, z.core.$strict>>;
83
+ activeDeadlineSeconds: z.ZodOptional<z.ZodNumber>;
83
84
  name: z.ZodString;
84
85
  retryStrategy: z.ZodOptional<z.ZodObject<{
85
86
  expression: z.ZodOptional<z.ZodString>;
@@ -31,6 +31,7 @@ const DEFAULT_RUNNER_RESOURCES = {
31
31
  memory: "8Gi"
32
32
  }
33
33
  };
34
+ const DEFAULT_RUNNER_DEADLINE_SECONDS = 3600;
34
35
  const kubernetesNameSchema = z.string().min(1);
35
36
  const labelValueSchema = z.string().min(1);
36
37
  const stringMapSchema = z.record(z.string().min(1), z.string().min(1));
@@ -109,6 +110,7 @@ const argoWorkflowTemplateSchema = z.object({
109
110
  parameters: z.array(z.object({ name: z.string().min(1) }).strict()).optional()
110
111
  }).strict().optional(),
111
112
  outputs: z.object({ artifacts: z.array(argoWorkflowArtifactSchema) }).strict().optional(),
113
+ activeDeadlineSeconds: z.number().int().positive().optional(),
112
114
  name: z.string().min(1),
113
115
  retryStrategy: argoWorkflowRetryStrategySchema.optional()
114
116
  }).strict().refine((template) => template.container !== void 0 || template.dag !== void 0, { message: "Workflow templates must declare container or dag" });
@@ -384,7 +386,8 @@ function runnerLifecycleTemplate(options, volumeMounts) {
384
386
  volumeMounts
385
387
  },
386
388
  name: RUNNER_WORKFLOW_START_TASK,
387
- retryStrategy: { ...RUNNER_RETRY_STRATEGY }
389
+ retryStrategy: { ...RUNNER_RETRY_STRATEGY },
390
+ activeDeadlineSeconds: DEFAULT_RUNNER_DEADLINE_SECONDS
388
391
  };
389
392
  }
390
393
  function runnerCommandTemplate(task, options, volumeMounts) {
@@ -412,7 +415,8 @@ function runnerCommandTemplate(task, options, volumeMounts) {
412
415
  volumeMounts: [...volumeMounts, taskVolumeMount]
413
416
  },
414
417
  name: task.templateName,
415
- retryStrategy: { ...RUNNER_RETRY_STRATEGY }
418
+ retryStrategy: { ...RUNNER_RETRY_STRATEGY },
419
+ activeDeadlineSeconds: DEFAULT_RUNNER_DEADLINE_SECONDS
416
420
  };
417
421
  }
418
422
  function runnerFinalizerTemplate(options, volumeMounts) {
@@ -435,7 +439,8 @@ function runnerFinalizerTemplate(options, volumeMounts) {
435
439
  resources: options.resources ?? DEFAULT_RUNNER_RESOURCES,
436
440
  volumeMounts
437
441
  },
438
- name: "pipeline-finalizer"
442
+ name: "pipeline-finalizer",
443
+ activeDeadlineSeconds: DEFAULT_RUNNER_DEADLINE_SECONDS
439
444
  };
440
445
  }
441
446
  function compactRecord(input) {
@@ -226,8 +226,8 @@ declare const configSchema: z.ZodObject<{
226
226
  policy: z.ZodOptional<z.ZodObject<{
227
227
  commands: z.ZodOptional<z.ZodEnum<{
228
228
  allow: "allow";
229
- deny: "deny";
230
229
  "trusted-only": "trusted-only";
230
+ deny: "deny";
231
231
  }>>;
232
232
  modules: z.ZodOptional<z.ZodEnum<{
233
233
  allow: "allow";
@@ -255,8 +255,8 @@ declare const configSchema: z.ZodObject<{
255
255
  global: "global";
256
256
  }>>;
257
257
  mode: z.ZodEnum<{
258
- local: "local";
259
258
  hosted: "hosted";
259
+ local: "local";
260
260
  }>;
261
261
  provider: z.ZodLiteral<"toolhive">;
262
262
  authorization_env: z.ZodDefault<z.ZodString>;
@@ -299,10 +299,10 @@ declare const configSchema: z.ZodObject<{
299
299
  }, z.core.$strict>>;
300
300
  output: z.ZodOptional<z.ZodObject<{
301
301
  format: z.ZodEnum<{
302
- json_schema: "json_schema";
303
302
  text: "text";
304
303
  json: "json";
305
304
  jsonl: "jsonl";
305
+ json_schema: "json_schema";
306
306
  }>;
307
307
  repair: z.ZodOptional<z.ZodObject<{
308
308
  enabled: z.ZodOptional<z.ZodBoolean>;
@@ -371,10 +371,10 @@ declare const configSchema: z.ZodObject<{
371
371
  disabled: "disabled";
372
372
  }>>>;
373
373
  output_formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
374
- json_schema: "json_schema";
375
374
  text: "text";
376
375
  json: "json";
377
376
  jsonl: "jsonl";
377
+ json_schema: "json_schema";
378
378
  }>>>;
379
379
  rules: z.ZodOptional<z.ZodBoolean>;
380
380
  skills: z.ZodOptional<z.ZodBoolean>;
@@ -481,8 +481,8 @@ declare const configSchema: z.ZodObject<{
481
481
  schedules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
482
482
  description: z.ZodOptional<z.ZodString>;
483
483
  baseline: z.ZodEnum<{
484
- quick: "quick";
485
484
  execute: "execute";
485
+ quick: "quick";
486
486
  }>;
487
487
  max_parallel_nodes: z.ZodOptional<z.ZodNumber>;
488
488
  node_catalog: z.ZodOptional<z.ZodString>;
package/dist/hooks.d.ts CHANGED
@@ -13,8 +13,8 @@ declare const hookResultSchema: z.ZodObject<{
13
13
  taskContext: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
14
14
  }, z.core.$strict>>;
15
15
  status: z.ZodEnum<{
16
- fail: "fail";
17
16
  pass: "pass";
17
+ fail: "fail";
18
18
  skip: "skip";
19
19
  }>;
20
20
  summary: z.ZodOptional<z.ZodString>;
@@ -161,8 +161,8 @@ declare const mokaSubmitOptionsSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
161
161
  }, z.core.$strict>>;
162
162
  serviceAccountName: z.ZodOptional<z.ZodString>;
163
163
  mode: z.ZodEnum<{
164
- full: "full";
165
164
  quick: "quick";
165
+ full: "full";
166
166
  }>;
167
167
  schedulePath: z.ZodOptional<z.ZodString>;
168
168
  scheduleYaml: z.ZodOptional<z.ZodString>;
@@ -74,6 +74,17 @@ function commitAndPushNodeRefEffect(input) {
74
74
  return sha;
75
75
  });
76
76
  }
77
+ /**
78
+ * Run a single git command through the runner's authenticated path: per-command
79
+ * credential-helper store (basic-auth from the mounted git-credentials) plus
80
+ * GIT_TERMINAL_PROMPT=0 so a missing credential fails fast instead of blocking
81
+ * forever on an interactive username prompt. This is the ONE git-auth primitive;
82
+ * every runner git operation (node delivery, dependency merge, open-pull-request)
83
+ * must route through it rather than spawning naked git.
84
+ */
85
+ async function runAuthenticatedGit(cwd, args) {
86
+ return await Effect.runPromise(Effect.provide(runGit(cwd, args), GitPorcelainServiceLive));
87
+ }
77
88
  async function promoteFinalRef(input) {
78
89
  return await Effect.runPromise(Effect.provide(promoteFinalRefEffect(input), GitPorcelainServiceLive));
79
90
  }
@@ -315,4 +326,4 @@ function shellQuote(value) {
315
326
  return `'${value.replaceAll("'", `'\\''`)}'`;
316
327
  }
317
328
  //#endregion
318
- export { commitAndPushNodeRef, mergeDependencyRefs, prepareRunnerGitWorkspace, promoteFinalRef };
329
+ export { commitAndPushNodeRef, mergeDependencyRefs, prepareRunnerGitWorkspace, promoteFinalRef, runAuthenticatedGit };
@@ -43,8 +43,8 @@ declare const runnerDeliverySchema: z.ZodObject<{
43
43
  declare const mokaSubmissionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
44
44
  kind: z.ZodLiteral<"graph">;
45
45
  mode: z.ZodEnum<{
46
- full: "full";
47
46
  quick: "quick";
47
+ full: "full";
48
48
  }>;
49
49
  }, z.core.$strict>, z.ZodObject<{
50
50
  argv: z.ZodArray<z.ZodString>;
@@ -104,8 +104,8 @@ declare const runnerCommandPayloadSchema: z.ZodObject<{
104
104
  submission: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
105
105
  kind: z.ZodLiteral<"graph">;
106
106
  mode: z.ZodEnum<{
107
- full: "full";
108
107
  quick: "quick";
108
+ full: "full";
109
109
  }>;
110
110
  }, z.core.$strict>, z.ZodObject<{
111
111
  argv: z.ZodArray<z.ZodString>;
@@ -108,8 +108,8 @@ declare const runnerEventRecordSchema: z.ZodUnion<readonly [z.ZodObject<{
108
108
  nodeId: z.ZodOptional<z.ZodString>;
109
109
  outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
110
110
  status: z.ZodEnum<{
111
- fail: "fail";
112
111
  pass: "pass";
112
+ fail: "fail";
113
113
  skip: "skip";
114
114
  }>;
115
115
  summary: z.ZodOptional<z.ZodString>;
@@ -286,8 +286,8 @@ declare const runnerEventBatchSchema: z.ZodObject<{
286
286
  nodeId: z.ZodOptional<z.ZodString>;
287
287
  outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
288
288
  status: z.ZodEnum<{
289
- fail: "fail";
290
289
  pass: "pass";
290
+ fail: "fail";
291
291
  skip: "skip";
292
292
  }>;
293
293
  summary: z.ZodOptional<z.ZodString>;
@@ -1,10 +1,10 @@
1
+ import { runAuthenticatedGit } from "../../run-state/git-refs.js";
1
2
  import { Context, Effect, Layer } from "effect";
2
- import simpleGit$1 from "simple-git";
3
3
  //#region src/runtime/services/open-pull-request-git-service.ts
4
4
  var OpenPullRequestGitService = class extends Context.Tag("OpenPullRequestGitService")() {};
5
- const OpenPullRequestGitServiceLive = Layer.succeed(OpenPullRequestGitService, { create: (baseDir) => Effect.sync(() => {
6
- const git = simpleGit$1({ baseDir });
7
- return { raw: (args) => Effect.tryPromise(() => git.raw(args)) };
8
- }) });
5
+ function authenticatedGitClient(baseDir) {
6
+ return { raw: (args) => Effect.tryPromise(() => runAuthenticatedGit(baseDir, args)) };
7
+ }
8
+ const OpenPullRequestGitServiceLive = Layer.succeed(OpenPullRequestGitService, { create: (baseDir) => Effect.sync(() => authenticatedGitClient(baseDir)) });
9
9
  //#endregion
10
10
  export { OpenPullRequestGitService, OpenPullRequestGitServiceLive };
@@ -1,5 +1,5 @@
1
- import { runScheduledWorkflowTask } from "../../pipeline-runtime.js";
2
1
  import { commitAndPushNodeRef, mergeDependencyRefs, prepareRunnerGitWorkspace, promoteFinalRef } from "../../run-state/git-refs.js";
2
+ import { runScheduledWorkflowTask } from "../../pipeline-runtime.js";
3
3
  import { resolveRunnerEventSinkAuthToken } from "../../runner-command-contract.js";
4
4
  import { createRunnerEventSink } from "../../runner-event-sink.js";
5
5
  import { Context, Effect, Layer } from "effect";
package/package.json CHANGED
@@ -127,7 +127,7 @@
127
127
  "prepack": "bun run build:cli"
128
128
  },
129
129
  "type": "module",
130
- "version": "3.11.9",
130
+ "version": "3.11.11",
131
131
  "description": "Config-driven multi-agent pipeline runner for repository work",
132
132
  "main": "./dist/index.js",
133
133
  "types": "./dist/index.d.ts",