Fix Create Deployment wizard: add missing SlicePipe import
Root cause: the | slice pipe was used in the template but SlicePipe was not in the standalone component's imports array. This caused Angular's resolveDirective to throw 'Cannot read factory' on every change detection cycle, preventing mock version cards from rendering and breaking the Continue button validation. Also: removed unused RouterModule import, converted computed signals to methods for PlatformContextStore-dependent values, added platformCtx.initialize() in constructor. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
67
docs/implplan/SPRINT_20260322_001_FE_wizard_split.md
Normal file
67
docs/implplan/SPRINT_20260322_001_FE_wizard_split.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# Sprint 20260322-001 — Split Create Wizard into Version / Hotfix / Release
|
||||
|
||||
## Topic & Scope
|
||||
- Split the monolithic "Create Release" wizard into 3 distinct wizards matching DevOps concepts.
|
||||
- **Version**: artifact definition (name, version, images, scripts). No deployment info.
|
||||
- **Hotfix**: single emergency package (one image + tag). Minimal.
|
||||
- **Release**: deployment plan. Picks a Version or Hotfix, then configures WHERE (regions, envs) and HOW (stages, strategy). If hotfix → no stages, just target env. If version → requires promotion stages.
|
||||
- If Version/Hotfix doesn't exist during Release creation → inline creation within the same page.
|
||||
- Working directory: `src/Web/StellaOps.Web/src/app/features/release-orchestrator/releases/`
|
||||
|
||||
## Dependencies & Concurrency
|
||||
- Tasks are sequential (shared component first, then 3 wizards, then routes).
|
||||
|
||||
## Delivery Tracker
|
||||
|
||||
### TASK-001 - Create Version wizard
|
||||
Status: TODO
|
||||
Owners: FE
|
||||
Task description:
|
||||
- New component: `create-version.component.ts`
|
||||
- Steps: 1) Name + Version + Description 2) Components (images + scripts) with autocomplete 3) Review & Seal
|
||||
- Autocomplete: name defaults to last used or generic, version auto-increments
|
||||
- Component search uses existing registry API
|
||||
- No regions, no stages, no strategy, no deployment config
|
||||
- Route: `/releases/versions/new`
|
||||
|
||||
### TASK-002 - Create Hotfix wizard
|
||||
Status: TODO
|
||||
Owners: FE
|
||||
Task description:
|
||||
- New component: `create-hotfix.component.ts`
|
||||
- Single step or 2 steps: 1) Pick one Docker image + tag 2) Confirm
|
||||
- No name (derives from image), no version (uses digest)
|
||||
- Minimal, fast-track flow
|
||||
- Route: `/releases/hotfixes/new`
|
||||
|
||||
### TASK-003 - Create Release wizard
|
||||
Status: TODO
|
||||
Owners: FE
|
||||
Task description:
|
||||
- New component: `create-release.component.ts` (replaces old wizard)
|
||||
- Steps: 1) Pick Version or Hotfix (with inline create option) 2) Target (regions, envs, stages) 3) Strategy config 4) Review & Create
|
||||
- If Version selected → stages required (Dev → Stage → Prod)
|
||||
- If Hotfix selected → just target env, no stages
|
||||
- Inline create: if version/hotfix doesn't exist, expand an inline creation form
|
||||
- Route: `/releases/new`
|
||||
|
||||
### TASK-004 - Update routes and navigation
|
||||
Status: TODO
|
||||
Owners: FE
|
||||
Task description:
|
||||
- `/releases/versions/new` → CreateVersionComponent
|
||||
- `/releases/hotfixes/new` → CreateHotfixComponent
|
||||
- `/releases/new` → CreateReleaseComponent
|
||||
- Update sidebar "New Version" page action to point to `/releases/versions/new`
|
||||
- Update pipeline page "New Release" to point to `/releases/new`
|
||||
- Remove old `create-release.component.ts` or rename
|
||||
|
||||
## Execution Log
|
||||
| Date (UTC) | Update | Owner |
|
||||
| --- | --- | --- |
|
||||
| 2026-03-22 | Sprint created. | Planning |
|
||||
|
||||
## Decisions & Risks
|
||||
- Old create-release component will be replaced, not refactored (too intertwined).
|
||||
- Inline version/hotfix creation within release wizard is complex — may use dialog or expandable section.
|
||||
- Custom scripts support deferred to follow-up sprint.
|
||||
Reference in New Issue
Block a user