Skip to content

feat: run options parity across CLI, TUI, WebUI, and API#779

Merged
nextlevelshit merged 4 commits intomainfrom
717-run-options-parity
Apr 12, 2026
Merged

feat: run options parity across CLI, TUI, WebUI, and API#779
nextlevelshit merged 4 commits intomainfrom
717-run-options-parity

Conversation

@nextlevelshit
Copy link
Copy Markdown
Collaborator

Summary

  • Canonical RunOptions model: Unified run configuration type (RunRequest/RunResponse) shared across all surfaces — CLI, TUI, WebUI, and API
  • WebUI inline run form: Pipeline detail page now has an inline form with persona, model, provider, strategy selectors and verbose toggle; issue and PR detail pages gain override run forms
  • TUI launcher expansion: Pipeline launcher model extended with model, provider, and strategy input fields
  • CLI flag grouping: wave run flags reorganized into logical groups (pipeline, model, execution, output) with improved help text
  • API endpoint: POST /api/v1/run accepts full RunRequest with all configuration options
  • Documentation: New docs/running-pipelines.md guide and updated CLI reference

Spec

specs/717-run-options-parity/spec.md

Test Plan

  • All existing tests pass (go test -race ./... — 40 packages, 0 failures)
  • New WebUI handler tests for run form submission and validation (195+ lines)
  • TUI run selector test updated for new fields
  • Contract JSON schemas validate request shapes for pipeline, issue, and PR runs

Known Limitations

  • WebUI run form uses server-side form submission; future work could add client-side validation
  • TUI strategy field is text input, not a dropdown — could be improved with a picker widget

Closes #717

@nextlevelshit nextlevelshit force-pushed the 717-run-options-parity branch from 6f6afc5 to 0610038 Compare April 11, 2026 23:40
Defines canonical 4-tier RunOptions model and specifies parity
requirements across CLI, TUI, WebUI, and API surfaces with 6 user
stories, 20 functional requirements, and measurable success criteria.
)

Add canonical RunOptions model with consistent run configuration across
all surfaces:

- WebUI: inline run form on pipeline detail page with persona, model,
  provider, strategy, and verbose toggles; override forms on issue/PR
  detail pages
- TUI: expand pipeline launcher with model/provider/strategy fields
- CLI: group run flags into logical sections with improved help text
- API: full RunRequest/RunResponse types for POST /api/v1/run
- Docs: add running-pipelines guide and update CLI reference
- Pipelines list quickstart dialog now has full run options (from-step,
  force, dry-run, detach, steps, exclude, timeout, on-failure) matching
  the pipeline detail inline form
- collectAdvancedOptions() rewritten to handle all fields generically
  via prefix-based ID convention
- Fix checkbox alignment: center-aligned in grid rows instead of flex-end
- Remove heavy border-top dividers between form tier sections
- Tighter vertical spacing throughout run form
- Detach checked by default on all launch points (webui shouldn't block)
- Issue/PR detail forms: replace all inline styles with CSS classes
  (form-row, form-group, form-group-checkbox, run-form-tier-*)
- All 4 launch points now have identical form structure and styling
@nextlevelshit nextlevelshit force-pushed the 717-run-options-parity branch from 0610038 to 4579697 Compare April 12, 2026 01:01
@nextlevelshit nextlevelshit merged commit e371a63 into main Apr 12, 2026
3 checks passed
@nextlevelshit nextlevelshit deleted the 717-run-options-parity branch April 12, 2026 01:02
nextlevelshit added a commit that referenced this pull request Apr 12, 2026
feat: run options parity across CLI, TUI, WebUI, and API
nextlevelshit added a commit that referenced this pull request Apr 12, 2026
feat: run options parity across CLI, TUI, WebUI, and API
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: run options parity across WebUI, TUI, and API — inline form on pipeline detail page

1 participant