Land the beta/nightly channel on master (finish #48) - #49
Merged
Conversation
Every push to the BETA branch builds both XIAO nRF52840 variants and publishes them to a latest-only beta/ subtree on gh-pages, alongside the prod channel (keep_files keeps them from clobbering). No GitHub Release is cut - these are debug builds you flash from your phone at the track via DovesDataViewer's beta channel. beta/manifest.json mirrors the prod manifest shape plus channel/commit/ branch markers and beta/ asset URLs. Beta builds self-report their exact commit over BLE: project.h now stringizes an optional -DFIRMWARE_VERSION_OVERRIDE build flag, and the beta workflow stamps <base>-beta.<gitsha>. Normal builds (prod, IDE, compile-sketch CI) are unaffected. Widened the OTA image descriptor's version field 16 -> 32 bytes to hold the longer beta strings.
Coverage — host-testable units📂 Overall coverage
📄 File coverage
|
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.
Why this exists
The beta channel from #48 never actually reached
master. During the stacked-PR rebase, #48's base got pointed at #47's branch, and the merge order worked out so that #47 merged tomasterat the variant-autodetect commit only, while #48 merged into the #47 branch afterward — a dead end. Net result:masteris at 2.2.2 with the IDE variant-autodetect, but has nobeta.ymland noFIRMWARE_VERSION_OVERRIDEmacro. That's why nobetaworkflow shows up in the Actions tab.This PR cherry-picks the beta commit cleanly onto current
masterto finish the job. Identical content to #48 (verified: override macro now wraps the2.2.2base,beta.ymlvalid, descriptor field widened 16→32).What it adds (same as #48)
betaworkflow: every push to theBETAbranch builds both variants and publishes to a latest-onlybeta/subtree ongh-pageswith its ownbeta/manifest.json, alongside (not clobbering) the prod channel. No Release, no tag.FIRMWARE_VERSIONoverride: beta builds self-report2.2.2-beta.<gitsha>over BLE via-DFIRMWARE_VERSION_OVERRIDE. Prod/IDE/compile-sketch builds are unchanged.After this merges — how to use it
betawill appear in the Actions list (it's now on the default branch).BETAbranch at the new master so it carriesbeta.yml:git checkout BETA && git merge origin/master && git push(or just delete/recreateBETAoffmaster). Pushing toBETAthen publishes a nightly.Note: the
BETAbranch you already made was cut from the old master, so it doesn't havebeta.ymlyet — step 2 fixes that.https://claude.ai/code/session_01JZbL7ygHQcztBpzz4BiVuU
Generated by Claude Code