Skip to content

feat(cli): wave consolidate <pipeline> — multi-run delta report #1554

@nextlevelshit

Description

@nextlevelshit

Context

Wave already has typed pipeline_outputs declared in every pipeline YAML — every pipeline (audit-, ops-, impl-, inception-, plan-, wave-) emits structured artifacts at known paths. Today consolidating those across multiple runs of the same pipeline requires manual grep + read.

Proposal

New CLI: wave consolidate <pipeline-name> [--since <duration>] [--limit N] [--output <md|json>].

Generic — works for ANY pipeline with declared pipeline_outputs, not just wave-*. Walks runs of that pipeline, gathers each run's typed output artifacts, feeds to a summarizer persona, emits a multi-run delta report:

  • Recurring: findings/themes consistent across runs
  • Drifting: findings that appear/disappear over time
  • Latest-only: unique to most recent run
  • Aggregate metrics: total tokens, avg duration, pass-rate, token-burn-rate trend

Use cases (cross-pipeline-family)

  • wave consolidate audit-architecture --since 90d — architecture drift over a quarter
  • wave consolidate audit-security --since 30d — cumulative security posture
  • wave consolidate wave-test-hardening — recurring coverage gaps (signal that real gaps remain unfixed)
  • wave consolidate ops-pr-review --since 14d — review-finding patterns across recent PRs
  • wave consolidate plan-research — research themes accumulated for a project area
  • wave consolidate impl-issue --since 7d — implementation effort patterns / common rework triggers

How it works

  1. Looks up pipeline declared pipeline_outputs: block (each typed output: step, artifact, type)
  2. Globs .agents/workspaces/<pipeline-name>-*/<step>/.agents/output/<artifact>.<ext> (or queries state DB pipeline_run table joined to artifacts table)
  3. Filters by --since / --limit
  4. Feeds the corpus to summarizer with a per-pipeline-type prompt template (markdown reports, JSON findings, code diffs each rendered appropriately)
  5. Emits single delta report

Dependencies

Strong recommendation: visible-outcome PR (in flight) lands first so wave-* pipelines also produce consistent reports. Without it the wave-* family is excluded from consolidation. Other families (audit-/ops-/plan-/impl-) already qualify today.

Out of scope

  • Cross-pipeline-family consolidation (e.g. wave consolidate audit-* --since 30d aggregating ALL audit reports) — single-pipeline first, multi-pipeline later
  • Web UI surface — CLI first; UI page (/consolidate/<pipeline>) is a follow-up

Severity

Enhancement. Unlocks meta-analysis across run history. Especially valuable for long-running audit families and self-evolution pipelines.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions