canonical / canonical/observability
Delay stable promotion for new .0 releases on the latest track
- Dominant language
- Just
- Stars
- 10
- Forks
- 25
- Avg merge
- 6h 3m
- Merged PRs (30d)
- 7
Description
## Problem
`promote-snap-train` (justfile) promotes every track from `edge` straight to `stable` on a daily cron, with no age check. For the latest track, if the version being promoted is a new `.0` patch release (i.e. the first release of a new upstream minor/major version), this can push an untested release to `stable` the same day it lands in `edge`.
## Proposal
For the **latest track** only: if the revision in `edge` is a `.0` release, only promote it to `stable` once it has been sitting in `edge` for at least a week (or matches whatever soak period upstream uses for that release, if longer).
Non-`.0` patch releases and older tracks keep the current same-day `edge` → `stable` behavior.
## Why
Gives `.0` releases, which carry the highest regression risk, a minimum soak time in `edge` before reaching users on `stable`.
Contributor guide
Research direction
Start with the `promote-snap-train` recipe in the justfile and trace how it identifies the latest track, `.0` releases, and the time spent in `edge`. Implement the minimum soak period for qualifying latest-track releases while preserving same-day promotion for non-`.0` releases and older tracks, then verify the promotion behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- devops, release
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100