feat(meta): interactive meta-pipeline orchestrator (wave run wave)#246
feat(meta): interactive meta-pipeline orchestrator (wave run wave)#246nextlevelshit wants to merge 3 commits intomainfrom
Conversation
Implement the core infrastructure for the `wave run wave` meta-orchestrator that provides parallel health checks, intelligent pipeline proposals with interactive selection, and codebase auto-tuning. New packages: - internal/meta: health checks, dependency installation, pipeline proposal engine, sequence composition, and codebase tuning - internal/platform: hosting platform detection (GitHub, GitLab, Bitbucket, Gitea) via git remote URL analysis - internal/tui: health report renderer, proposal selector, pipeline browser, run selector, and shared theme CLI integration: - Reserve "wave" keyword in `wave run` to dispatch to meta-orchestrator - Add --proposal flag for non-interactive proposal auto-selection - New wave.go command handler with health→propose→execute flow Pipeline cleanup: - Remove legacy workspace path resolution (exact-name dirs without hash) - Remove legacy YAML extraction fallback in meta-pipeline output parsing - Remove legacy template variable placeholders from context resolution - Fix workspace scanning to search across timestamped run dirs Closes #245
Update checkDependencies to accept skills as a parameter instead of reading from manifest.Skills (removed in pipeline-scoped skills refactor). Add collectSkillsFromPipelines() to scan pipeline YAML for skill configs. Update wave.go auto-install to source skills from pipelines.
Code Review (Wave Pipeline)Verdict: REQUEST_CHANGES PR #246 (interactive meta-pipeline) and #244 (pre-merge change summary) introduce a well-structured orchestration layer with clean interface-based design, ~2,200 lines of tests, and proper separation of concerns. However, the review uncovered 1 critical security vulnerability, 3 critical quality defects, and several high-severity issues that must be addressed before merge. All existing tests pass with Critical Issues (must fix)1. Arbitrary file write via adapter-supplied schema paths
2. ConcurrencyValidator has no synchronization — data race on shared maps
3. Nil pointer dereference in ProposalEngine.GenerateProposals
4. Workspace path resolution hardcoded in three locations
High-Severity Issues (should fix before merge)
Suggested Improvements
Breaking Changes to Document
These should be mentioned in release notes. Positive Observations
Test Gaps to Address
Generated by Wave gh-pr-review pipeline |
…et flow Implement #248 guided workflow: wave starts with a health phase showing system checks, auto-transitions to proposals view on completion, then Tab toggles to fleet monitoring. Replaces dashboard-first architecture. Key changes: - ViewHealthPhase → ViewProposals → ViewFleet guided state machine - Embedded huh forms replace broken form.Run() goroutines that fought the parent bubbletea program for terminal control (#250) - Proposals promoted from overlay to full-screen view with Tab toggle - Health phase renders spinner-per-check progress during startup - OverlayForm replaces OverlayProposals for pipeline selector/modify
deda796 to
60aed8f
Compare
Summary
wave run wavemeta-orchestrator command with parallel health checks, intelligent pipeline proposal, and codebase auto-tuninginternal/metapackage: health check runner, dependency installer, proposal engine, sequence composer, and tuning advisorinternal/platformpackage: hosting platform detection (GitHub, GitLab, Bitbucket, Gitea) via git remote URL analysisSpec
See
specs/245-interactive-meta-pipeline/spec.mdfor full feature specification.Test plan
go test -race ./...passes with 0 failuresKnown limitations
internal/meta/install.go) shells out to package managers — requires sandbox configuration for production use--proposalflagCloses #245