Record nightly previews as part of the branching North Star - #32
Draft
ChrisonSimtian wants to merge 1 commit into
Draft
Record nightly previews as part of the branching North Star#32ChrisonSimtian wants to merge 1 commit into
ChrisonSimtian wants to merge 1 commit into
Conversation
The GitFlow North Star moves the preview lane from `main` to `develop`. This
records that the cadence moves with it: one build a night instead of one per
commit.
Cadence only. The version stays `…-preview.{height}`, so `version.json` is
untouched and nbgv keeps producing monotonic heights. ADR-0004 rejected
date-based version cores and that rejection is not reopened.
Also records the two mechanical traps that would otherwise be found the hard
way. GitHub fires `schedule` only from the default branch, so a nightly of
`develop` needs `develop` to be the default branch or an explicit `ref` on the
checkout. And a night with no commits reproduces the previous version, because
`{height}` only advances on a commit, so the nightly needs a no-new-commits
guard or every quiet night reports a failed publish.
Nothing here is implemented. It sits under North Star in all three documents.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Records nightly previews as part of the branching North Star. Nothing is implemented; the live workflow is untouched.
Stacked on Fallout-build#637. Base is
docs/rework-contribution-md, so review that first — this diff only shows the delta.What changed
docs/branching-and-release.md→ North Star: aPreview cadencerow in the Current/North Star table, and a new## Nightly preview cadencesection with the current and proposed triggers side by side.docs/versioning.md→ North Star: a short note that the cadence change does not touch the version scheme, so nobody reads the GitFlow section and assumesversion.jsonmoves with it.docs/adr/0012-…: one bullet under §2 North Star.Docs only, additive, 51 lines.
Why the version scheme stays put
Nightly needs no date in the version. The shape stays
…-preview.{height},{height}stays monotonic, and.g<commit>still names the exact commit built. ADR-0004 rejected date-based version cores; that rejection stands and this does not reopen it. Worth stating explicitly, because "nightly" usually implies a date-stamped version and here it does not.The two traps are the point of the section
Both would have been found the hard way:
schedulefires only from the default branch. GitHub ignoresscheduleon non-default branches, so a nightly meant to builddevelopneedsdevelopto be the default branch, or an explicitref: developon the checkout. Under full GitFlow,developas default is the consistent choice and also makes new PRs target it.{height}only advances on a commit, so a quiet day yields a version that already exists and the push is rejected as a duplicate. Without a no-new-commits guard, every quiet night reports a red publish.Trade-off, stated rather than buried
The preview lane publishes 22 packages per run, so per-commit means most runs differ trivially. Nightly cuts published versions, CI wall-clock, and the work the prune job undoes. It costs up to a day of latency before a merged fix is consumable, with
workflow_dispatchas the escape hatch, and it attributes a regression to a night rather than a commit.Fallout.Canaryis unaffected either way — it already runs on a nightly cron and treats therepository_dispatchlink as optional.