release control ui improvements
This commit is contained in:
@@ -0,0 +1,114 @@
|
||||
# Sprint 20260320-001 — Releases Table + Create Release Wizard Enhancement
|
||||
|
||||
## Topic & Scope
|
||||
- Migrate releases pipeline table to use `app-data-table` with column sorting + right-aligned `app-pagination`.
|
||||
- Enhance the Create Release wizard with target selection, strategy detail configuration, and progressive delivery support.
|
||||
- Working directory: `src/Web/StellaOps.Web/src/app/features/`
|
||||
- Expected evidence: build passes, pages render correctly, wizard steps complete.
|
||||
|
||||
## Dependencies & Concurrency
|
||||
- No upstream sprint dependencies.
|
||||
- Task 1 (table) and Task 2 (wizard) are independent and can be done in parallel.
|
||||
|
||||
## Documentation Prerequisites
|
||||
- `docs/modules/release-orchestrator/deployment/strategies.md` — strategy configs
|
||||
- `docs/modules/release-orchestrator/progressive-delivery/ab-releases.md` — A/B models
|
||||
- `docs/modules/release-orchestrator/progressive-delivery/canary.md` — canary controller
|
||||
- `docs/modules/release-orchestrator/deployment/overview.md` — execution flow
|
||||
|
||||
## Delivery Tracker
|
||||
|
||||
### TASK-001 - Releases pipeline table: use app-data-table + sorting + right-aligned pager
|
||||
Status: DONE
|
||||
Dependency: none
|
||||
Owners: FE
|
||||
|
||||
Task description:
|
||||
- Replace the raw `<table class="stella-table">` in `releases-unified-page.component.ts` with `<app-data-table>`.
|
||||
- Define columns with `sortable: true` for: Release, Stage, Gates, Risk, Evidence, Status.
|
||||
- Add sort state signal + computed sorted+filtered+paged data.
|
||||
- Move `<app-pagination>` to right-aligned position below the table.
|
||||
- Remove manual `<thead>/<tbody>` markup — use data-table's column definitions and cell templates.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Table renders using `app-data-table`
|
||||
- [ ] Clicking column headers sorts ascending/descending
|
||||
- [ ] Pagination below table, right-aligned
|
||||
- [ ] Decision capsules still render in the last column
|
||||
- [ ] Build passes
|
||||
|
||||
### TASK-002 - Create Release wizard: target selection step
|
||||
Status: DONE
|
||||
Dependency: none
|
||||
Owners: FE
|
||||
|
||||
Task description:
|
||||
- Add a new step between current Step 1 (Identity) and Step 2 (Components) for target selection.
|
||||
- New step allows selecting: regions, environments, specific targets/hosts.
|
||||
- Use existing `PlatformContextStore` for available regions/environments.
|
||||
- Support multi-select with chips for selected items.
|
||||
- Wire selected targets into the release draft payload.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Wizard shows 5 steps (Identity → Targets → Components → Config → Review)
|
||||
- [ ] Target selection step shows available regions/environments from context
|
||||
- [ ] Selected targets appear as chips
|
||||
- [ ] Selected targets included in review step summary
|
||||
- [ ] Build passes
|
||||
|
||||
### TASK-003 - Create Release wizard: strategy detail configuration
|
||||
Status: DONE
|
||||
Dependency: none
|
||||
Owners: FE
|
||||
|
||||
Task description:
|
||||
- Enhance Step 3 (Config) to show strategy-specific configuration when a strategy is selected.
|
||||
- **Rolling**: batch size (count or %), batch delay, stabilization time, max failed batches.
|
||||
- **Canary**: canary stages (% + duration), health thresholds (success rate, error rate, latency), manual vs auto progression.
|
||||
- **Blue-Green**: switchover mode (instant vs gradual with stages), warmup period, blue keepalive duration.
|
||||
- **All-at-Once**: max concurrency, failure behavior (rollback/continue/pause).
|
||||
- Use a collapsible "Advanced" section that expands when the user selects a strategy.
|
||||
- Pre-fill with sensible defaults from docs.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Selecting a strategy shows its specific config fields
|
||||
- [ ] All 4 strategies have their documented fields
|
||||
- [ ] Defaults match documentation
|
||||
- [ ] Config values included in review step
|
||||
- [ ] Build passes
|
||||
|
||||
### TASK-004 - Create Release wizard: A/B and progressive delivery support
|
||||
Status: DONE
|
||||
Dependency: TASK-003
|
||||
Owners: FE
|
||||
|
||||
Task description:
|
||||
- Add "A/B Release" as a 5th deployment strategy option.
|
||||
- When selected, show sub-type selector: Target-Group A/B vs Router-Based A/B.
|
||||
- **Target-Group A/B**: stage editor (canary → expand → shift → complete) with % and duration.
|
||||
- **Router-Based A/B**: routing strategy (weight/header/cookie/tenant), traffic % stages, health thresholds.
|
||||
- Add rollback configuration: auto-rollback thresholds, manual override option.
|
||||
- Reference: `docs/modules/release-orchestrator/progressive-delivery/ab-releases.md`
|
||||
|
||||
Completion criteria:
|
||||
- [ ] A/B option available in strategy dropdown
|
||||
- [ ] Sub-type selection works
|
||||
- [ ] Stage editor allows adding/removing stages
|
||||
- [ ] Config included in review step
|
||||
- [ ] Build passes
|
||||
|
||||
## Execution Log
|
||||
| Date (UTC) | Update | Owner |
|
||||
| --- | --- | --- |
|
||||
| 2026-03-20 | Sprint created; tasks 1-3 starting immediately. | Planning |
|
||||
| 2026-03-20 | All 4 tasks DONE. Table sorting + pager, wizard targets step, strategy config, A/B release. Deployed. | FE |
|
||||
|
||||
## Decisions & Risks
|
||||
- TASK-004 depends on TASK-003 (strategy config infrastructure must exist first).
|
||||
- Custom script hooks deferred to a follow-up sprint (requires backend ScriptRunner integration).
|
||||
- A/B release UI is complex — may need iteration after initial implementation.
|
||||
|
||||
## Next Checkpoints
|
||||
- TASK-001: table + sorting + pager — should be quick (1 agent)
|
||||
- TASK-002 + TASK-003: wizard enhancements — can run in parallel
|
||||
- TASK-004: A/B support — after TASK-003 completes
|
||||
Reference in New Issue
Block a user