@oisincoveney/pipeline 1.22.2 → 1.22.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.
- package/dist/config.d.ts +7 -7
- package/dist/config.js +5 -4
- package/dist/hooks.d.ts +1 -1
- package/dist/install-commands.js +6 -1
- package/dist/schedule-planner.js +2 -30
- package/package.json +1 -1
package/dist/config.d.ts
CHANGED
|
@@ -371,8 +371,8 @@ declare const configSchema: z.ZodObject<{
|
|
|
371
371
|
policy: z.ZodOptional<z.ZodObject<{
|
|
372
372
|
commands: z.ZodOptional<z.ZodEnum<{
|
|
373
373
|
allow: "allow";
|
|
374
|
-
"trusted-only": "trusted-only";
|
|
375
374
|
deny: "deny";
|
|
375
|
+
"trusted-only": "trusted-only";
|
|
376
376
|
}>>;
|
|
377
377
|
modules: z.ZodOptional<z.ZodEnum<{
|
|
378
378
|
allow: "allow";
|
|
@@ -396,8 +396,8 @@ declare const configSchema: z.ZodObject<{
|
|
|
396
396
|
}, z.core.$strict>>>;
|
|
397
397
|
default_profile: z.ZodOptional<z.ZodString>;
|
|
398
398
|
mode: z.ZodEnum<{
|
|
399
|
-
hosted: "hosted";
|
|
400
399
|
local: "local";
|
|
400
|
+
hosted: "hosted";
|
|
401
401
|
}>;
|
|
402
402
|
provider: z.ZodLiteral<"toolhive">;
|
|
403
403
|
authorization_env: z.ZodDefault<z.ZodString>;
|
|
@@ -440,10 +440,10 @@ declare const configSchema: z.ZodObject<{
|
|
|
440
440
|
}, z.core.$strict>>;
|
|
441
441
|
output: z.ZodOptional<z.ZodObject<{
|
|
442
442
|
format: z.ZodEnum<{
|
|
443
|
+
json_schema: "json_schema";
|
|
443
444
|
text: "text";
|
|
444
445
|
json: "json";
|
|
445
446
|
jsonl: "jsonl";
|
|
446
|
-
json_schema: "json_schema";
|
|
447
447
|
}>;
|
|
448
448
|
repair: z.ZodOptional<z.ZodObject<{
|
|
449
449
|
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -461,7 +461,6 @@ declare const configSchema: z.ZodObject<{
|
|
|
461
461
|
skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
462
462
|
timeout_ms: z.ZodOptional<z.ZodNumber>;
|
|
463
463
|
tools: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
464
|
-
task: "task";
|
|
465
464
|
read: "read";
|
|
466
465
|
list: "list";
|
|
467
466
|
grep: "grep";
|
|
@@ -469,6 +468,7 @@ declare const configSchema: z.ZodObject<{
|
|
|
469
468
|
bash: "bash";
|
|
470
469
|
edit: "edit";
|
|
471
470
|
write: "write";
|
|
471
|
+
task: "task";
|
|
472
472
|
}>>>;
|
|
473
473
|
}, z.core.$strict>>>;
|
|
474
474
|
runner_job: z.ZodDefault<z.ZodObject<{
|
|
@@ -512,15 +512,14 @@ declare const configSchema: z.ZodObject<{
|
|
|
512
512
|
disabled: "disabled";
|
|
513
513
|
}>>>;
|
|
514
514
|
output_formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
515
|
+
json_schema: "json_schema";
|
|
515
516
|
text: "text";
|
|
516
517
|
json: "json";
|
|
517
518
|
jsonl: "jsonl";
|
|
518
|
-
json_schema: "json_schema";
|
|
519
519
|
}>>>;
|
|
520
520
|
rules: z.ZodOptional<z.ZodBoolean>;
|
|
521
521
|
skills: z.ZodOptional<z.ZodBoolean>;
|
|
522
522
|
tools: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
523
|
-
task: "task";
|
|
524
523
|
read: "read";
|
|
525
524
|
list: "list";
|
|
526
525
|
grep: "grep";
|
|
@@ -528,15 +527,16 @@ declare const configSchema: z.ZodObject<{
|
|
|
528
527
|
bash: "bash";
|
|
529
528
|
edit: "edit";
|
|
530
529
|
write: "write";
|
|
530
|
+
task: "task";
|
|
531
531
|
}>>>;
|
|
532
532
|
}, z.core.$strict>;
|
|
533
533
|
command: z.ZodOptional<z.ZodString>;
|
|
534
534
|
host_models: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
535
535
|
model: z.ZodOptional<z.ZodString>;
|
|
536
536
|
type: z.ZodEnum<{
|
|
537
|
+
opencode: "opencode";
|
|
537
538
|
command: "command";
|
|
538
539
|
codex: "codex";
|
|
539
|
-
opencode: "opencode";
|
|
540
540
|
}>;
|
|
541
541
|
}, z.core.$strict>>>;
|
|
542
542
|
scheduler: z.ZodDefault<z.ZodObject<{
|
package/dist/config.js
CHANGED
|
@@ -112,6 +112,7 @@ const PACKAGE_DEFAULT_PROFILES_YAML = `version: 1
|
|
|
112
112
|
mcp_gateway:
|
|
113
113
|
provider: toolhive
|
|
114
114
|
mode: local
|
|
115
|
+
url: https://pipeline-mcp.momokaya.ee/mcp/
|
|
115
116
|
url_env: PIPELINE_MCP_GATEWAY_URL
|
|
116
117
|
authorization_env: PIPELINE_MCP_GATEWAY_AUTHORIZATION
|
|
117
118
|
default_profile: default
|
|
@@ -226,7 +227,7 @@ profiles:
|
|
|
226
227
|
runner: opencode
|
|
227
228
|
scheduling_roles: [implementation]
|
|
228
229
|
description: Add focused failing tests for the requested behavior.
|
|
229
|
-
instructions: { inline: "Add focused failing tests for the requested behavior only. Do not change production code. Return only valid JSON with top-level changes and verification. Every changes entry must include summary, why, and files. Include risks, followups, and lessons when present. Do not use Markdown fences or prose outside the JSON object." }
|
|
230
|
+
instructions: { inline: "Add focused failing tests for the requested behavior only. Do not change production code. Only edit files matching test paths such as **/*.test.*, **/*.spec.*, **/*_test.*, **/__tests__/**, test/**, or tests/**. Return only valid JSON with top-level changes and verification. Every changes entry must include summary, why, and files. Include risks, followups, and lessons when present. Do not use Markdown fences or prose outside the JSON object." }
|
|
230
231
|
skills: [test]
|
|
231
232
|
mcp_servers: [pipeline-gateway]
|
|
232
233
|
tools: [read, list, grep, glob, bash, edit, write]
|
|
@@ -356,7 +357,7 @@ scheduler:
|
|
|
356
357
|
green-implementation:
|
|
357
358
|
category: green
|
|
358
359
|
profile: pipeline-code-writer
|
|
359
|
-
models: [
|
|
360
|
+
models: [opencode-go/qwen3.7-max, kimi-for-coding/k2p6, opencode-go/deepseek-v4-pro]
|
|
360
361
|
verification:
|
|
361
362
|
category: verification
|
|
362
363
|
profile: pipeline-verifier
|
|
@@ -371,7 +372,7 @@ scheduler:
|
|
|
371
372
|
research:
|
|
372
373
|
category: research
|
|
373
374
|
profile: pipeline-researcher
|
|
374
|
-
models: [
|
|
375
|
+
models: [openai/gpt-5.5-fast, zai-coding-plan/glm-5.1, kimi-for-coding/k2p6]
|
|
375
376
|
red-tests:
|
|
376
377
|
category: red
|
|
377
378
|
profile: pipeline-test-writer
|
|
@@ -383,7 +384,7 @@ scheduler:
|
|
|
383
384
|
green-frontend:
|
|
384
385
|
category: green
|
|
385
386
|
profile: pipeline-code-writer
|
|
386
|
-
models: [
|
|
387
|
+
models: [opencode-go/qwen3.7-max, kimi-for-coding/k2p6, opencode-go/deepseek-v4-pro]
|
|
387
388
|
acceptance-review:
|
|
388
389
|
category: acceptance
|
|
389
390
|
profile: pipeline-acceptance-reviewer
|
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>;
|
package/dist/install-commands.js
CHANGED
|
@@ -181,6 +181,11 @@ function entrypointDispatchBlock(host, config, id, entrypoint) {
|
|
|
181
181
|
"Use `oisin-pipeline run --schedule <schedule.yaml>` only when rerunning an existing schedule artifact."
|
|
182
182
|
].join("\n");
|
|
183
183
|
}
|
|
184
|
+
function orchestratorEntrypointDispatchBlock(host, config) {
|
|
185
|
+
const scheduledEntrypoints = entrypointEntries(config).filter(([, entrypoint]) => !("workflow" in entrypoint));
|
|
186
|
+
if (scheduledEntrypoints.length === 0) return dispatchBlock(host, config);
|
|
187
|
+
return scheduledEntrypoints.map(([id, entrypoint]) => entrypointDispatchBlock(host, config, id, entrypoint)).filter((block) => Boolean(block)).join("\n\n");
|
|
188
|
+
}
|
|
184
189
|
function nativeDispatchBlock(host, routes) {
|
|
185
190
|
if (routes.length === 0) return;
|
|
186
191
|
return [
|
|
@@ -396,7 +401,7 @@ function opencodeDefinitions(config, cwd) {
|
|
|
396
401
|
"",
|
|
397
402
|
orchestratorBlock(config),
|
|
398
403
|
"",
|
|
399
|
-
|
|
404
|
+
orchestratorEntrypointDispatchBlock("opencode", config)
|
|
400
405
|
]).join("\n")),
|
|
401
406
|
host: "opencode",
|
|
402
407
|
invocation: invocationForHost("opencode"),
|
package/dist/schedule-planner.js
CHANGED
|
@@ -387,39 +387,10 @@ function executeBaselineWorkflow() {
|
|
|
387
387
|
needs: ["research"],
|
|
388
388
|
profile: "pipeline-test-writer"
|
|
389
389
|
},
|
|
390
|
-
{
|
|
391
|
-
builtin: "test",
|
|
392
|
-
id: "mechanical-red-tests",
|
|
393
|
-
kind: "builtin",
|
|
394
|
-
needs: ["red-tests"]
|
|
395
|
-
},
|
|
396
|
-
{
|
|
397
|
-
builtin: "typecheck",
|
|
398
|
-
id: "mechanical-red-typecheck",
|
|
399
|
-
kind: "builtin",
|
|
400
|
-
needs: ["red-tests"]
|
|
401
|
-
},
|
|
402
|
-
{
|
|
403
|
-
builtin: "lint",
|
|
404
|
-
id: "mechanical-red-lint",
|
|
405
|
-
kind: "builtin",
|
|
406
|
-
needs: ["red-tests"]
|
|
407
|
-
},
|
|
408
|
-
{
|
|
409
|
-
builtin: "fallow",
|
|
410
|
-
id: "mechanical-red-fallow",
|
|
411
|
-
kind: "builtin",
|
|
412
|
-
needs: ["red-tests"]
|
|
413
|
-
},
|
|
414
390
|
{
|
|
415
391
|
id: "green-implementation",
|
|
416
392
|
kind: "agent",
|
|
417
|
-
needs: [
|
|
418
|
-
"mechanical-red-tests",
|
|
419
|
-
"mechanical-red-typecheck",
|
|
420
|
-
"mechanical-red-lint",
|
|
421
|
-
"mechanical-red-fallow"
|
|
422
|
-
],
|
|
393
|
+
needs: ["red-tests"],
|
|
423
394
|
profile: "pipeline-code-writer"
|
|
424
395
|
},
|
|
425
396
|
{
|
|
@@ -631,6 +602,7 @@ function plannerPrompt(entrypointId, task, baseline, config, planningContext) {
|
|
|
631
602
|
"Gate recipes:",
|
|
632
603
|
"- Prefer preserving valid gates from the baseline workflows instead of recreating them.",
|
|
633
604
|
"- RED/test coverage may use changed_files gates on test-writing nodes. A changed_files gate must include a changed_files object with allow and/or require_any glob arrays.",
|
|
605
|
+
"- Do not add blocking builtin test, lint, typecheck, or fallow nodes between RED test-writing nodes and GREEN implementation nodes. RED tests are expected to make checks fail until GREEN implementation fixes the behavior.",
|
|
634
606
|
"- Acceptance coverage may use acceptance and verdict gates. Acceptance gates may use target: stdout and required: false.",
|
|
635
607
|
"- Verification may use builtin typecheck, test, lint, fallow, semgrep, duplication, plus verdict gates.",
|
|
636
608
|
"",
|
package/package.json
CHANGED
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
"prepack": "bun run build:cli"
|
|
112
112
|
},
|
|
113
113
|
"type": "module",
|
|
114
|
-
"version": "1.22.
|
|
114
|
+
"version": "1.22.4",
|
|
115
115
|
"description": "Config-driven multi-agent pipeline runner for repository work",
|
|
116
116
|
"main": "./dist/index.js",
|
|
117
117
|
"types": "./dist/index.d.ts",
|