Skip to content

feat(pipeline): pipeline proposal engine — context-aware sequencing from health artifact #208

@nextlevelshit

Description

@nextlevelshit

Parent: #184

Summary

Implement the pipeline proposal engine that consumes the codebase health analysis artifact and the available pipeline catalog to propose optimal pipeline sequences. The engine applies contextual intelligence (nous) and practical judgment (phronesis) to recommend what pipelines to run, in what order, and which can run in parallel. This may extend or replace the existing wave meta / MetaPipelineExecutor (internal/pipeline/meta.go) which already supports dynamic child pipeline generation via the philosopher persona.

Acceptance Criteria

  • Engine consumes the health analysis artifact (from feat(pipeline): codebase health analysis step — forge-aware repository state artifact #207) as primary input
  • Engine discovers available pipelines from the manifest/pipeline catalog
  • Engine produces a structured proposal: ordered list of pipeline runs with dependency edges
  • Proposals identify pipelines that can run in parallel (independent inputs)
  • Proposals include rationale for each recommended pipeline (why it's relevant given codebase state)
  • Engine filters pipelines by detected forge type (only propose gh-* for GitHub repos, etc.)
  • Proposal output is a structured artifact consumable by the interactive TUI
  • Engine handles edge cases: no actionable proposals, all pipelines already completed, conflicting recommendations
  • Relationship with existing wave meta (internal/pipeline/meta.go) is resolved — either extends it or documents why a separate engine is needed

Dependencies

Scope Notes

  • In scope: Proposal generation logic, pipeline catalog discovery, forge-aware filtering, dependency ordering, parallel eligibility detection, structured proposal output
  • Out of scope: Executing the proposed pipelines (that's the orchestrator's job), interactive UI for selecting proposals (feat(pipeline): pipeline proposal engine — context-aware sequencing from health artifact #208), creating new pipeline definitions on the fly
  • Design decision needed: Whether to extend MetaPipelineExecutor or build a separate proposal engine. The existing meta executor uses a philosopher persona to generate child pipelines dynamically — the proposal engine could be a pipeline step that produces proposals as artifacts
  • Overlap note: feat: restore and stabilize wave meta dynamic pipeline generation #95 covers stabilizing wave meta — this issue should coordinate with or build upon that work

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestneeds-designNeeds design discussion before implementationpipelineRelated to pipeline execution and orchestrationpriority: highHigh priority issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions