Skip to content

Land the beta/nightly channel on master (finish #48) - #49

Merged
TheAngryRaven merged 1 commit into
masterfrom
claude/beta-channel-onto-master-r7t2wp
Jun 8, 2026
Merged

Land the beta/nightly channel on master (finish #48)#49
TheAngryRaven merged 1 commit into
masterfrom
claude/beta-channel-onto-master-r7t2wp

Conversation

@TheAngryRaven

Copy link
Copy Markdown
Owner

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 to master at the variant-autodetect commit only, while #48 merged into the #47 branch afterward — a dead end. Net result: master is at 2.2.2 with the IDE variant-autodetect, but has no beta.yml and no FIRMWARE_VERSION_OVERRIDE macro. That's why no beta workflow shows up in the Actions tab.

This PR cherry-picks the beta commit cleanly onto current master to finish the job. Identical content to #48 (verified: override macro now wraps the 2.2.2 base, beta.yml valid, descriptor field widened 16→32).

What it adds (same as #48)

  • beta workflow: every push to the BETA branch builds both variants and publishes to a latest-only beta/ subtree on gh-pages with its own beta/manifest.json, alongside (not clobbering) the prod channel. No Release, no tag.
  • FIRMWARE_VERSION override: beta builds self-report 2.2.2-beta.<gitsha> over BLE via -DFIRMWARE_VERSION_OVERRIDE. Prod/IDE/compile-sketch builds are unchanged.

After this merges — how to use it

  1. beta will appear in the Actions list (it's now on the default branch).
  2. Re-point your BETA branch at the new master so it carries beta.yml:
    git checkout BETA && git merge origin/master && git push (or just delete/recreate BETA off master). Pushing to BETA then publishes a nightly.
  3. You can also trigger it via Actions → beta → Run workflow.

Note: the BETA branch you already made was cut from the old master, so it doesn't have beta.yml yet — step 2 fixes that.

https://claude.ai/code/session_01JZbL7ygHQcztBpzz4BiVuU


Generated by Claude Code

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.
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

Coverage — host-testable units

📂 Overall coverage

Metric Coverage
Lines 🟢 217/218 (99.5%)
Functions 🟢 20/20 (100.0%)
Branches 🟡 207/240 (86.2%)

📄 File coverage

File Lines Functions Branches
BirdsEye/crc32.cpp 🟢 30/30 (100.0%) 🟢 4/4 (100.0%) 🟢 24/24 (100.0%)
BirdsEye/dovex_header.cpp 🟢 96/97 (99.0%) 🟢 6/6 (100.0%) 🔴 57/88 (64.8%)
BirdsEye/filename_validator.cpp 🟢 14/14 (100.0%) 🟢 1/1 (100.0%) 🟢 30/30 (100.0%)
BirdsEye/gps_time.cpp 🟢 45/45 (100.0%) 🟢 6/6 (100.0%) 🟢 30/32 (93.8%)
BirdsEye/gps_validation.cpp 🟢 24/24 (100.0%) 🟢 2/2 (100.0%) 🟢 66/66 (100.0%)
BirdsEye/haversine.cpp 🟢 8/8 (100.0%) 🟢 1/1 (100.0%) ⚫ 0/0 (0.0%)

@TheAngryRaven
TheAngryRaven merged commit 4bffc6d into master Jun 8, 2026
6 checks passed
@TheAngryRaven
TheAngryRaven deleted the claude/beta-channel-onto-master-r7t2wp branch June 8, 2026 23:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants