Skip to content

Rename rolling beta release tag to beta-fw (branch/tag collision)#91

Merged
bharvey88 merged 1 commit into
betafrom
fix-beta-tag-collision
Jul 8, 2026
Merged

Rename rolling beta release tag to beta-fw (branch/tag collision)#91
bharvey88 merged 1 commit into
betafrom
fix-beta-tag-collision

Conversation

@bharvey88

@bharvey88 bharvey88 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Version: 26.7.8.2

What does this implement/fix?

The rolling pre-release created a tag named beta, colliding with the beta branch. git resolves a bare fetch refspec to refs/tags/ before refs/heads/, so ESPHome remote packages pinned to ref: beta silently fetch the tag - which was frozen at creation time and never moves - instead of the branch tip. Users following beta as a package get stale YAML no matter how often they clean caches.

Reproduced end-to-end with an isolated cache: ESPHome's git.py runs git fetch --depth=1 -- origin beta then git reset --hard FETCH_HEAD, and .git/FETCH_HEAD shows tag 'beta' being fetched. On MSR-1 the tag pointed at main's then-HEAD (e24fc3f, 26.3.2.1) while the branch tip was 73fd740 (26.7.7.1 with the Firmware Channel select).

Fix: rename the release tag to beta-fw and update the beta manifest URLs to match. After this merges and the renamed release is populated by the next beta build, the old beta release + tag should be deleted. Until then, affected users can pin ref: refs/heads/beta.

Note: 26.7.8.1 is reserved by open PR #90, which will need a trivial rebase over this. Both variants config-validated on ESPHome 2026.6.4.

Types of changes

  • Bugfix (fixed change that fixes an issue)
  • New feature (thanks!)
  • Breaking change (repair/feature that breaks existing functionality)
  • Dependency Update - Does not publish
  • Other - Does not publish
  • Website of github readme file update - Does not publish
  • Github workflows - Does not publish

Checklist / Checklijst:

  • The code change has been tested and works locally
  • The code change has not yet been tested

If user-visible functionality or configuration variables are added/modified:

  • Added/updated documentation for the web page

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features
    • Beta firmware downloads and update manifests now point to the new rolling release channel, improving how beta builds are delivered.
  • Bug Fixes
    • Updated beta update paths so the correct firmware assets are used during OTA and manifest retrieval.
  • Chores
    • Bumped the bundled ESPHome integration version.

The rolling pre-release created a tag named "beta", colliding with the
beta branch. git resolves a bare fetch refspec to refs/tags/ before
refs/heads/, so ESPHome remote packages pinned to ref: beta silently
fetch the tag (which pointed at main's HEAD at creation and never
moves) instead of the branch tip - users following beta as a package
get stale YAML no matter how often they clean caches.

Rename the release tag to beta-fw and update beta_manifest_base to
match. The old beta release/tag should be deleted after this merges
and the renamed release is populated.

Version: 26.7.8.2 (26.7.8.1 is reserved by the open Bluetooth Proxy
PR #90, which will need a rebase over this)

🤖 Generated with [Claude Code](https://claude.com/claude-code)
@coderabbitai

coderabbitai Bot commented Jul 8, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

The beta firmware release pipeline is renamed from "beta" to "beta-fw" across the GitHub Actions workflow (pre-release creation, manifest URL rewriting, artifact uploads) and the ESPHome Core config's beta_manifest_base URL, alongside a version bump from 26.7.7.1 to 26.7.8.2.

Changes

Beta-fw release rename

Layer / File(s) Summary
Workflow beta-fw release targeting
.github/workflows/build-beta.yml
Comment, pre-release view/create check, BASE URL rewriting for manifest.json, and artifact upload commands (manifest-$v.json, .bin files) all switch from targeting the beta release to beta-fw.
ESPHome Core config update
Integrations/ESPHome/Core.yaml
substitutions.version bumped from 26.7.7.1 to 26.7.8.2, and beta_manifest_base URL updated to fetch from the beta-fw release path.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested reviewers: TrevorSchirmer

Poem

A hop, a skip, a rename true,
"beta" grows up to "beta-fw" new,
Manifests fetch from a fresher nest,
Version ticks on, doing its best,
🐰 Thump-thump — released with glee!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: renaming the rolling beta release tag to beta-fw to avoid the branch/tag collision.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix-beta-tag-collision
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch fix-beta-tag-collision

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
Integrations/ESPHome/Core.yaml (1)

14-14: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Update the stale comment on line 12 to match the renamed release.

The adjacent comment on line 12 still says rolling "beta" pre-release assets but the release tag is now beta-fw. Similarly, line 770 says rolling "beta" release assets. Both should reference beta-fw to avoid confusion.

♻️ Proposed fix for stale comments
   # Beta = rolling "beta-fw" pre-release assets (beta branch builds).
   stable_manifest_base: "https://apolloautomation.github.io/MSR-1"
   beta_manifest_base: "https://github.com/ApolloAutomation/MSR-1/releases/download/beta-fw"

And on line 770:

-  # Stable = GitHub Pages, Beta = rolling "beta" release assets.
+  # Stable = GitHub Pages, Beta = rolling "beta-fw" release assets.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Integrations/ESPHome/Core.yaml` at line 14, The comments in Core.yaml are
stale and still refer to the old “beta” release name; update the adjacent
documentation comments near beta_manifest_base and the later release-assets
comment so they consistently reference beta-fw. Keep the actual release URL
as-is and only rename the descriptive text in the nearby comment blocks to match
the current release tag and avoid confusion.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@Integrations/ESPHome/Core.yaml`:
- Line 14: The comments in Core.yaml are stale and still refer to the old “beta”
release name; update the adjacent documentation comments near beta_manifest_base
and the later release-assets comment so they consistently reference beta-fw.
Keep the actual release URL as-is and only rename the descriptive text in the
nearby comment blocks to match the current release tag and avoid confusion.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 47401612-9d92-45bf-8183-4a4f576ecc02

📥 Commits

Reviewing files that changed from the base of the PR and between 73fd740 and 6d3ebcf.

📒 Files selected for processing (2)
  • .github/workflows/build-beta.yml
  • Integrations/ESPHome/Core.yaml

@bharvey88
bharvey88 merged commit f802653 into beta Jul 8, 2026
10 checks passed
@bharvey88
bharvey88 deleted the fix-beta-tag-collision branch July 8, 2026 16:01
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.

1 participant