nightshift-mcp 2.0.1 → 2.1.1

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 (50) hide show
  1. package/README.md +46 -15
  2. package/dist/agent-spawner.d.ts +9 -0
  3. package/dist/agent-spawner.d.ts.map +1 -1
  4. package/dist/agent-spawner.js +88 -5
  5. package/dist/agent-spawner.js.map +1 -1
  6. package/dist/daemon.d.ts +19 -5
  7. package/dist/daemon.d.ts.map +1 -1
  8. package/dist/daemon.js +220 -36
  9. package/dist/daemon.js.map +1 -1
  10. package/dist/database.d.ts +2 -2
  11. package/dist/database.d.ts.map +1 -1
  12. package/dist/database.js +4 -4
  13. package/dist/database.js.map +1 -1
  14. package/dist/index.js +219 -1146
  15. package/dist/index.js.map +1 -1
  16. package/dist/orchestrator.d.ts +12 -1
  17. package/dist/orchestrator.d.ts.map +1 -1
  18. package/dist/orchestrator.js +245 -15
  19. package/dist/orchestrator.js.map +1 -1
  20. package/dist/pipeline.d.ts +61 -0
  21. package/dist/pipeline.d.ts.map +1 -0
  22. package/dist/pipeline.js +227 -0
  23. package/dist/pipeline.js.map +1 -0
  24. package/dist/project-context.d.ts +28 -0
  25. package/dist/project-context.d.ts.map +1 -0
  26. package/dist/project-context.js +45 -0
  27. package/dist/project-context.js.map +1 -0
  28. package/dist/run-logger.d.ts +61 -0
  29. package/dist/run-logger.d.ts.map +1 -0
  30. package/dist/run-logger.js +219 -0
  31. package/dist/run-logger.js.map +1 -0
  32. package/dist/tools/agents.d.ts +3 -0
  33. package/dist/tools/agents.d.ts.map +1 -1
  34. package/dist/tools/agents.js +148 -5
  35. package/dist/tools/agents.js.map +1 -1
  36. package/dist/tools/bugs.d.ts.map +1 -1
  37. package/dist/tools/bugs.js +48 -22
  38. package/dist/tools/bugs.js.map +1 -1
  39. package/dist/tools/chat.d.ts.map +1 -1
  40. package/dist/tools/chat.js +47 -20
  41. package/dist/tools/chat.js.map +1 -1
  42. package/dist/tools/prd.d.ts.map +1 -1
  43. package/dist/tools/prd.js +67 -31
  44. package/dist/tools/prd.js.map +1 -1
  45. package/dist/tools/progress.d.ts.map +1 -1
  46. package/dist/tools/progress.js +22 -7
  47. package/dist/tools/progress.js.map +1 -1
  48. package/dist/tools/utility.js +2 -2
  49. package/dist/tools/utility.js.map +1 -1
  50. package/package.json +1 -1
@@ -4,8 +4,11 @@
4
4
  * Autonomous orchestration loop for project completion.
5
5
  * Manages agent selection, task delegation, and workflow coordination.
6
6
  */
7
+ import * as fs from "fs";
8
+ import * as path from "path";
7
9
  import { spawnAgent, spawnAgentBackground, getAvailableAgents, } from "./agent-spawner.js";
8
- import { getNightshiftCliCommand } from "./platform.js";
10
+ import { getNightshiftCliCommand, isProcessRunning } from "./platform.js";
11
+ import { resolveExecutablePipeline } from "./pipeline.js";
9
12
  /**
10
13
  * Project Orchestrator
11
14
  *
@@ -22,6 +25,8 @@ export class ProjectOrchestrator {
22
25
  quarantinedTasks = new Set();
23
26
  taskRetries = new Map();
24
27
  agentIndex = 0;
28
+ completedCount = 0;
29
+ failedCount = 0;
25
30
  MAX_RETRIES = 3;
26
31
  constructor(projectPath, ralph, chat, workflow, config = {}) {
27
32
  this.projectPath = projectPath;
@@ -42,6 +47,13 @@ export class ProjectOrchestrator {
42
47
  async run() {
43
48
  // Initialize
44
49
  this.availableAgents = await getAvailableAgents();
50
+ this.completedCount = 0;
51
+ this.failedCount = 0;
52
+ this.chat.writeMessage({
53
+ agent: "Orchestrator",
54
+ type: "INFO",
55
+ content: `Detected available agents: ${this.availableAgents.length > 0 ? this.availableAgents.join(", ") : "(none)"}`,
56
+ });
45
57
  if (this.availableAgents.length === 0) {
46
58
  return {
47
59
  success: false,
@@ -59,8 +71,6 @@ export class ProjectOrchestrator {
59
71
  content: `Starting orchestration with strategy: ${this.config.strategy}\nAvailable agents: ${this.availableAgents.join(", ")}\nMax concurrent: ${this.config.maxConcurrent}`,
60
72
  });
61
73
  let iterations = 0;
62
- let completedCount = 0;
63
- let failedCount = 0;
64
74
  // Optional: Run research phase first (prefer gemini, fall back to claude)
65
75
  if (this.config.includeResearch) {
66
76
  const researchAgent = this.availableAgents.includes("gemini")
@@ -88,8 +98,8 @@ export class ProjectOrchestrator {
88
98
  });
89
99
  return {
90
100
  success: true,
91
- completed: completedCount,
92
- failed: failedCount,
101
+ completed: this.completedCount,
102
+ failed: this.failedCount,
93
103
  quarantined: Array.from(this.quarantinedTasks),
94
104
  iterations,
95
105
  summary: "All stories and bugs completed successfully!",
@@ -104,6 +114,11 @@ export class ProjectOrchestrator {
104
114
  .filter(b => !this.quarantinedTasks.has(b.id) && !this.activeAssignments.has(b.id));
105
115
  // Calculate available slots
106
116
  const availableSlots = this.config.maxConcurrent - this.activeAssignments.size;
117
+ this.chat.writeMessage({
118
+ agent: "Orchestrator",
119
+ type: "INFO",
120
+ content: `Iteration ${iterations}/${this.config.maxIterations}: slots=${availableSlots}, active=${this.activeAssignments.size}, stories=${incompleteStories.length}, bugs=${unfixedBugs.length}, quarantined=${this.quarantinedTasks.size}`,
121
+ });
107
122
  if (availableSlots <= 0) {
108
123
  // Wait for current tasks to complete
109
124
  await this.waitForCompletion();
@@ -169,8 +184,8 @@ export class ProjectOrchestrator {
169
184
  // Max iterations reached
170
185
  return {
171
186
  success: false,
172
- completed: completedCount,
173
- failed: failedCount,
187
+ completed: this.completedCount,
188
+ failed: this.failedCount,
174
189
  quarantined: Array.from(this.quarantinedTasks),
175
190
  iterations,
176
191
  summary: `Max iterations (${this.config.maxIterations}) reached. Some work may remain incomplete.`,
@@ -269,18 +284,138 @@ Focus on patterns that will help the implementation agents.`;
269
284
  }
270
285
  }
271
286
  /**
272
- * Assign a task to an agent
287
+ * Assign a task runs through the configured pipeline steps sequentially.
288
+ * Each step builds on the previous step's output as context.
273
289
  */
274
290
  async assignTask(task, taskType) {
275
- const agent = this.selectAgentForTask(task, taskType);
276
- if (!agent) {
291
+ // Only use pipeline if user has configured one (preserves backward compat)
292
+ const configFile = path.join(this.projectPath, "nightshift.config.json");
293
+ const overrideFile = path.join(this.projectPath, ".robot-chat", "pipeline-override.json");
294
+ const hasPipelineConfig = fs.existsSync(configFile) || fs.existsSync(overrideFile);
295
+ const tags = ("tags" in task && Array.isArray(task.tags)) ? task.tags : [];
296
+ const pipeline = hasPipelineConfig
297
+ ? await resolveExecutablePipeline(this.projectPath, tags)
298
+ : { name: "default", steps: [], skipped: [] };
299
+ if (pipeline.steps.length === 0) {
300
+ // No pipeline steps available — fall back to single-agent assignment
301
+ const agent = this.selectAgentForTask(task, taskType);
302
+ if (!agent) {
303
+ this.chat.writeMessage({
304
+ agent: "Orchestrator",
305
+ type: "ERROR",
306
+ content: `No agent available for ${task.id}`,
307
+ });
308
+ return;
309
+ }
310
+ await this.assignTaskSingleAgent(task, taskType, agent);
311
+ return;
312
+ }
313
+ if (this.config.dryRun) {
314
+ const stepsSummary = pipeline.steps.map(s => `${s.agent}:${s.role}`).join(" → ");
277
315
  this.chat.writeMessage({
278
316
  agent: "Orchestrator",
279
- type: "ERROR",
280
- content: `No agent available for ${task.id}`,
317
+ type: "INFO",
318
+ content: `[DRY RUN] Would run pipeline "${pipeline.name}" for ${task.id}: ${stepsSummary}`,
281
319
  });
282
320
  return;
283
321
  }
322
+ const stepsSummary = pipeline.steps.map(s => `${s.agent}:${s.role}`).join(" → ");
323
+ this.chat.writeMessage({
324
+ agent: "Orchestrator",
325
+ type: "TASK_ASSIGNMENT",
326
+ content: `Running pipeline "${pipeline.name}" for ${task.id}: ${stepsSummary}${pipeline.skipped.length > 0 ? `\nSkipped: ${pipeline.skipped.map(s => `${s.agent}:${s.role} (${s.reason})`).join(", ")}` : ""}`,
327
+ });
328
+ // Execute pipeline steps sequentially, passing context forward
329
+ let previousOutput = "";
330
+ for (let i = 0; i < pipeline.steps.length; i++) {
331
+ const step = pipeline.steps[i];
332
+ const isLastStep = i === pipeline.steps.length - 1;
333
+ const prompt = this.buildPipelineStepPrompt(task, taskType, step, previousOutput, i, pipeline.steps.length);
334
+ this.chat.writeMessage({
335
+ agent: "Orchestrator",
336
+ type: "INFO",
337
+ content: `${task.id} step ${i + 1}/${pipeline.steps.length}: ${step.agent} [${step.role}]`,
338
+ });
339
+ // Last step runs in background (non-blocking for the orchestrator)
340
+ // Earlier steps run foreground so we can capture output for the next step
341
+ if (isLastStep && pipeline.steps.length > 1) {
342
+ const result = spawnAgentBackground({
343
+ agent: step.agent,
344
+ prompt,
345
+ projectPath: this.projectPath,
346
+ role: step.role,
347
+ storyId: task.id,
348
+ });
349
+ this.activeAssignments.set(task.id, {
350
+ taskId: task.id,
351
+ taskType,
352
+ agent: step.agent,
353
+ startTime: Date.now(),
354
+ pid: result.pid,
355
+ outputFile: result.outputFile,
356
+ retryCount: this.taskRetries.get(task.id) || 0,
357
+ });
358
+ return;
359
+ }
360
+ // Run step foreground to capture output
361
+ try {
362
+ const result = await spawnAgent({
363
+ agent: step.agent,
364
+ prompt,
365
+ projectPath: this.projectPath,
366
+ timeout: (step.timeout || 600) * 1000,
367
+ role: step.role,
368
+ storyId: task.id,
369
+ });
370
+ if (result.success) {
371
+ // Capture output for next step (truncate to avoid massive prompts)
372
+ previousOutput = result.output.length > 8000
373
+ ? result.output.substring(0, 4000) + "\n\n...[truncated]...\n\n" + result.output.substring(result.output.length - 4000)
374
+ : result.output;
375
+ this.chat.writeMessage({
376
+ agent: "Orchestrator",
377
+ type: "INFO",
378
+ content: `${task.id} step ${i + 1} completed (${step.agent} [${step.role}])`,
379
+ });
380
+ }
381
+ else {
382
+ // Step failed — skip remaining steps if it was required
383
+ this.chat.writeMessage({
384
+ agent: "Orchestrator",
385
+ type: "ERROR",
386
+ content: `${task.id} step ${i + 1} failed (${step.agent} [${step.role}]): ${result.error?.substring(0, 300) || "unknown error"}`,
387
+ });
388
+ if (step.optional === false) {
389
+ // Required step failed — mark task as failed
390
+ const retries = (this.taskRetries.get(task.id) || 0) + 1;
391
+ this.taskRetries.set(task.id, retries);
392
+ if (retries >= this.MAX_RETRIES) {
393
+ this.quarantinedTasks.add(task.id);
394
+ }
395
+ return;
396
+ }
397
+ // Optional step failed — continue with what we have
398
+ }
399
+ }
400
+ catch (error) {
401
+ this.chat.writeMessage({
402
+ agent: "Orchestrator",
403
+ type: "ERROR",
404
+ content: `${task.id} step ${i + 1} error (${step.agent} [${step.role}]): ${error instanceof Error ? error.message : String(error)}`,
405
+ });
406
+ if (step.optional === false)
407
+ return;
408
+ }
409
+ }
410
+ // If we get here with a single-step pipeline that ran foreground, track it
411
+ if (pipeline.steps.length === 1) {
412
+ // Single-step pipeline already completed foreground — nothing to track as active
413
+ }
414
+ }
415
+ /**
416
+ * Fall back to single-agent assignment (when no pipeline is configured or available)
417
+ */
418
+ async assignTaskSingleAgent(task, taskType, agent) {
284
419
  if (this.config.dryRun) {
285
420
  this.chat.writeMessage({
286
421
  agent: "Orchestrator",
@@ -289,20 +424,19 @@ Focus on patterns that will help the implementation agents.`;
289
424
  });
290
425
  return;
291
426
  }
292
- // Build the prompt
293
427
  const prompt = this.buildTaskPrompt(task, taskType);
294
428
  this.chat.writeMessage({
295
429
  agent: "Orchestrator",
296
430
  type: "TASK_ASSIGNMENT",
297
431
  content: `Assigning ${task.id} (${taskType}) to ${agent}`,
298
432
  });
299
- // Spawn agent in background
300
433
  const result = spawnAgentBackground({
301
434
  agent,
302
435
  prompt,
303
436
  projectPath: this.projectPath,
437
+ role: "implementer",
438
+ storyId: task.id,
304
439
  });
305
- // Track assignment
306
440
  this.activeAssignments.set(task.id, {
307
441
  taskId: task.id,
308
442
  taskType,
@@ -473,6 +607,66 @@ ${recentChat.map(m => `[${m.agent}] ${m.type}: ${m.content.substring(0, 200)}`).
473
607
  Begin investigation now.`;
474
608
  }
475
609
  }
610
+ /**
611
+ * Build a prompt for a specific pipeline step, incorporating previous step output.
612
+ */
613
+ buildPipelineStepPrompt(task, taskType, step, previousOutput, stepIndex, totalSteps) {
614
+ const ns = getNightshiftCliCommand(this.projectPath);
615
+ const isStory = taskType === "story";
616
+ const story = isStory ? task : null;
617
+ const bug = !isStory ? task : null;
618
+ const taskHeader = isStory
619
+ ? `## Story: ${story.id} - ${story.title}\n\n${story.description}\n\n### Acceptance Criteria:\n${story.acceptanceCriteria.map(c => `- ${c}`).join("\n")}`
620
+ : `## Bug: ${bug.id} - ${bug.title}\n\n${bug.description}`;
621
+ const roleInstructions = {
622
+ planner: `You are a **planning agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
623
+ 1. Analyze the codebase and understand the current patterns
624
+ 2. Create a detailed implementation plan with exact file paths, function names, and code snippets
625
+ 3. Specify which files to modify and what changes to make
626
+ 4. Do NOT write code to files — only output the plan
627
+ 5. Be specific enough that a code-writing agent can implement without ambiguity`,
628
+ drafter: `You are a **drafting agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
629
+ 1. Create an initial rough implementation
630
+ 2. Focus on getting the structure right, not perfection
631
+ 3. Write code to the actual files
632
+ 4. Don't worry about edge cases — the next agent will fix those`,
633
+ implementer: `You are an **implementation agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
634
+ 1. Implement the task fully based on any planning context provided
635
+ 2. Write clean, production-quality code
636
+ 3. Run quality checks (typecheck, lint, test) if available
637
+ 4. Commit with message: "${isStory ? "feat" : "fix"}: ${task.id} - ${task.title}"
638
+ 5. Mark the ${taskType} complete: ${ns} ${isStory ? "complete" : "bug-fix"} ${task.id} --agent ${step.agent} --summary "what you did"`,
639
+ fixer: `You are a **fixer agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
640
+ 1. Review the implementation from the previous step
641
+ 2. Fix any bugs, type errors, lint issues, or test failures
642
+ 3. Run quality checks and ensure they all pass
643
+ 4. Commit fixes if needed`,
644
+ verifier: `You are a **verification agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
645
+ 1. Run all quality checks: typecheck, lint, test
646
+ 2. Report pass/fail status
647
+ 3. If all pass, mark complete: ${ns} ${isStory ? "complete" : "bug-fix"} ${task.id} --agent ${step.agent} --summary "verified: all checks pass"
648
+ 4. If any fail, report what failed so the next iteration can fix it`,
649
+ reviewer: `You are a **review agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
650
+ 1. Review the implementation for correctness, security, and code quality
651
+ 2. Check for edge cases and potential issues
652
+ 3. Post findings to chat: ${ns} chat --agent ${step.agent} --type INFO --message "review findings"`,
653
+ researcher: `You are a **research agent** (step ${stepIndex + 1}/${totalSteps}). Your job is to:
654
+ 1. Explore the codebase and understand existing patterns
655
+ 2. Research the best approach for this task
656
+ 3. Provide detailed recommendations
657
+ 4. Post findings to chat: ${ns} chat --agent ${step.agent} --type INFO --message "research findings"`,
658
+ };
659
+ const instructions = roleInstructions[step.role] || roleInstructions["implementer"];
660
+ let prompt = `${instructions}\n\n${taskHeader}`;
661
+ if (previousOutput) {
662
+ prompt += `\n\n### Context from previous step:\n${previousOutput}`;
663
+ }
664
+ prompt += `\n\n### Coordination:
665
+ Use the nightshift CLI:
666
+ - Status: ${ns} chat --agent ${step.agent} --type STATUS_UPDATE --message "your progress"
667
+ - If stuck: ${ns} failover --agent ${step.agent} --task "${task.id}" --message "reason"`;
668
+ return prompt;
669
+ }
476
670
  /**
477
671
  * Wait for at least one active assignment to complete
478
672
  * Max wait: 35 minutes (slightly longer than the 30-min task timeout)
@@ -494,6 +688,7 @@ Begin investigation now.`;
494
688
  const story = this.ralph.getStory(taskId);
495
689
  if (story?.passes) {
496
690
  this.activeAssignments.delete(taskId);
691
+ this.completedCount++;
497
692
  this.chat.writeMessage({
498
693
  agent: "Orchestrator",
499
694
  type: "INFO",
@@ -506,6 +701,7 @@ Begin investigation now.`;
506
701
  const bug = this.ralph.getBug(taskId);
507
702
  if (bug?.fixed) {
508
703
  this.activeAssignments.delete(taskId);
704
+ this.completedCount++;
509
705
  this.chat.writeMessage({
510
706
  agent: "Orchestrator",
511
707
  type: "INFO",
@@ -514,12 +710,46 @@ Begin investigation now.`;
514
710
  return;
515
711
  }
516
712
  }
713
+ if (assignment.pid && !isProcessRunning(assignment.pid)) {
714
+ this.activeAssignments.delete(taskId);
715
+ const story = assignment.taskType === "story" ? this.ralph.getStory(taskId) : null;
716
+ const bug = assignment.taskType === "bug" ? this.ralph.getBug(taskId) : null;
717
+ if (story?.passes || bug?.fixed) {
718
+ this.completedCount++;
719
+ this.chat.writeMessage({
720
+ agent: "Orchestrator",
721
+ type: "INFO",
722
+ content: `${taskId} ${assignment.taskType === "story" ? "completed" : "fixed"} by ${assignment.agent}`,
723
+ });
724
+ return;
725
+ }
726
+ let outputTail = "";
727
+ if (assignment.outputFile && fs.existsSync(assignment.outputFile)) {
728
+ const output = fs.readFileSync(assignment.outputFile, "utf-8").trim();
729
+ outputTail = output ? output.slice(-300) : "";
730
+ }
731
+ const retries = (this.taskRetries.get(taskId) || 0) + 1;
732
+ this.taskRetries.set(taskId, retries);
733
+ this.failedCount++;
734
+ if (retries >= this.MAX_RETRIES) {
735
+ this.quarantinedTasks.add(taskId);
736
+ }
737
+ this.chat.writeMessage({
738
+ agent: "Orchestrator",
739
+ type: "ERROR",
740
+ content: retries >= this.MAX_RETRIES
741
+ ? `${taskId} quarantined after agent exit without completion`
742
+ : `${taskId} agent exited without completing (attempt ${retries}/${this.MAX_RETRIES})${outputTail ? `\nLast output: ${outputTail}` : ""}`,
743
+ });
744
+ return;
745
+ }
517
746
  // Check for timeout (30 minutes)
518
747
  const elapsed = Date.now() - assignment.startTime;
519
748
  if (elapsed > 30 * 60 * 1000) {
520
749
  this.activeAssignments.delete(taskId);
521
750
  const retries = (this.taskRetries.get(taskId) || 0) + 1;
522
751
  this.taskRetries.set(taskId, retries);
752
+ this.failedCount++;
523
753
  if (retries >= this.MAX_RETRIES) {
524
754
  this.quarantinedTasks.add(taskId);
525
755
  this.chat.writeMessage({
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * NightShift Pipeline Configuration
3
+ *
4
+ * Defines agent pipelines for story execution.
5
+ * Zero config required — auto-detects available agents and uses smart defaults.
6
+ * Users can customize via set_pipeline tool or nightshift.config.json.
7
+ */
8
+ import { type AgentType } from "./agent-spawner.js";
9
+ export interface PipelineStep {
10
+ agent: AgentType;
11
+ role: string;
12
+ /** Skip this step if agent unavailable (default: true) */
13
+ optional?: boolean;
14
+ /** Timeout in seconds for this step */
15
+ timeout?: number;
16
+ }
17
+ export interface PipelineConfig {
18
+ /** Named pipelines. "default" is used when no tag matches. */
19
+ pipelines: Record<string, PipelineStep[]>;
20
+ /** Map story tags to pipeline names. e.g., { "frontend": "frontend", "api": "backend" } */
21
+ tagRouting?: Record<string, string>;
22
+ }
23
+ /**
24
+ * Load pipeline config. Merges: defaults → config file → runtime overrides.
25
+ */
26
+ export declare function loadPipelineConfig(projectPath: string): PipelineConfig;
27
+ /**
28
+ * Save a runtime pipeline override (persists across tool calls but not across projects).
29
+ */
30
+ export declare function savePipelineOverride(projectPath: string, overrides: Partial<PipelineConfig>): void;
31
+ /**
32
+ * Clear runtime pipeline overrides (revert to defaults + config file).
33
+ */
34
+ export declare function clearPipelineOverride(projectPath: string): void;
35
+ /**
36
+ * Pick the right pipeline for a story based on its tags.
37
+ * Falls back to "default" if no tags match.
38
+ */
39
+ export declare function resolvePipelineName(config: PipelineConfig, storyTags?: string[]): string;
40
+ /**
41
+ * Get the executable pipeline for a story — filters out unavailable agents.
42
+ * Returns only steps that can actually run right now.
43
+ */
44
+ export declare function resolveExecutablePipeline(projectPath: string, storyTags?: string[], pipelineName?: string): Promise<{
45
+ name: string;
46
+ steps: PipelineStep[];
47
+ skipped: Array<{
48
+ agent: AgentType;
49
+ role: string;
50
+ reason: string;
51
+ }>;
52
+ }>;
53
+ /**
54
+ * Get all available pipeline names and their steps.
55
+ */
56
+ export declare function listPipelines(projectPath: string): Record<string, PipelineStep[]>;
57
+ /**
58
+ * Get the tag routing rules.
59
+ */
60
+ export declare function getTagRouting(projectPath: string): Record<string, string>;
61
+ //# sourceMappingURL=pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAmC,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAMrF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC1C,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAoDD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAwCtE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAsBlG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAK/D;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,cAAc,EACtB,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,MAAM,CAeR;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,EAAE,EACpB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpE,CAAC,CAmCD;AA4BD;;GAEG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAGjF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGzE"}