Problem / why
Some components ship to only part of the repo's environment ladder. A shared global ladder
with a per-component subset (rather than fully independent ladders) keeps the promotion walk a
simple filtered list walk.
Scope (firm intent)
- Activate
ComponentConfig.Environments as an optional subset of the global ladder.
- Add per-component env helpers (
ComponentEnvironments(name) and per-component variants of
GetNextEnvironment / GetEnvironmentsInRange).
- The promotion walk filters the global ladder to the component's subset.
Files / areas touched
internal/config/types.go (subset resolver and per-component env helpers),
internal/promote/promote.go (filtered walk).
Tests and coverage required
- Unit and e2e: a component with a 2-environment subset promotes only through those
environments.
Acceptance criteria
- A component can target a subset of the global ladder and promotes only through it.
Dependencies
Blocked by the monorepo: independent promotion milestone.
Problem / why
Some components ship to only part of the repo's environment ladder. A shared global ladder
with a per-component subset (rather than fully independent ladders) keeps the promotion walk a
simple filtered list walk.
Scope (firm intent)
ComponentConfig.Environmentsas an optional subset of the global ladder.ComponentEnvironments(name)and per-component variants ofGetNextEnvironment/GetEnvironmentsInRange).Files / areas touched
internal/config/types.go(subset resolver and per-component env helpers),internal/promote/promote.go(filtered walk).Tests and coverage required
environments.
Acceptance criteria
Dependencies
Blocked by the
monorepo: independent promotionmilestone.