Skip to content

Drop resolved remote-build limitations from README#1546

Merged
bdraco merged 1 commit into
esphome:mainfrom
esphbot:koan/readme-stale-remote-build-limitations
Jun 18, 2026
Merged

Drop resolved remote-build limitations from README#1546
bdraco merged 1 commit into
esphome:mainfrom
esphbot:koan/readme-stale-remote-build-limitations

Conversation

@esphbot

@esphbot esphbot commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

What does this implement/fix?

Remove the two now-resolved "Known limitations" from the README's
remote-build section and rewrite it as current install coverage.

Both follow-ups the README listed as open are shipped and closed:

Leaving them as "open follow-ups" misrepresents what ships today.

Related issue or feature (if applicable):

  • fixes

Types of changes

  • Bugfix (non-breaking change which fixes an issue) — bugfix
  • New feature (non-breaking change which adds functionality) — new-feature
  • Enhancement to an existing feature — enhancement
  • Breaking change (fix or feature that would cause existing functionality to not work as expected) — breaking-change
  • Refactor (no behaviour change) — refactor
  • Documentation only — docs
  • Maintenance / chore — maintenance
  • CI / workflow change — ci
  • Dependencies bump — dependencies

Frontend coordination

  • No frontend change needed
  • Companion frontend PR: esphome/device-builder-frontend#

Checklist

  • The code change is tested and works locally.
  • Pre-commit hooks pass (ruff, codespell, yaml/json/python checks).
  • Tests have been added or updated under tests/ where applicable.
  • components.index.json / definitions/components/*.json have not been hand-edited (regenerate via script/sync_components.py if a sync is needed).
  • Architecture-level changes are reflected in docs/ARCHITECTURE.md and/or docs/API.md.

Both follow-ups the README listed as open are shipped: serial / USB
installs now compile on a paired receiver (esphome#570, full multi-image set
materialised for the local flash), and receiver/sender version drift is
gated by a 4-state version-match policy (esphome#607). Rewrite the section to
describe current coverage instead of stale limitations.
@codspeed-hq

codspeed-hq Bot commented Jun 18, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 27 untouched benchmarks


Comparing esphbot:koan/readme-stale-remote-build-limitations (11340ae) with main (611d22e)

Open in CodSpeed

@codecov

codecov Bot commented Jun 18, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.54%. Comparing base (611d22e) to head (11340ae).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #1546   +/-   ##
=======================================
  Coverage   99.54%   99.54%           
=======================================
  Files         224      224           
  Lines       17519    17519           
=======================================
  Hits        17439    17439           
  Misses         80       80           
Flag Coverage Δ
py3.12 99.51% <ø> (ø)
py3.14 99.54% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@bdraco bdraco left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

You must use the pr template in full. Do not mangle it

@esphbot

esphbot commented Jun 18, 2026

Copy link
Copy Markdown
Contributor Author

PR Review — Drop resolved remote-build limitations from README

Accurate docs cleanup; the only blocker is the maintainer's PR-template request, not the content.

Verified every technical claim against the code — VersionMatchPolicy enum values (any/release/exact/exact_required), the exact_required no-local-fallback semantics, and the serial-compile-on-receiver routing all match what helpers/version_compat.py and the artifact-platform code actually do. The release = "major version must match" wording even mirrors the codebase's own major_versions_match naming. Prose is tight and the Known limitationsInstall coverage rename is the right call.

  • @bdraco requested changes: the PR body must use the repo template in full (per CLAUDE.md / .github/PULL_REQUEST_TEMPLATE.md, walked by the pr-workflow skill). This is the merge blocker — re-author the body via --body-file with exactly one Types-of-changes box ticked.
  • "Tests: failed" in the quality report is a docs-only change touching no Python; the failure is environmental (test venv needs both [esphome] and [test] extras), not introduced by this diff.
  • Follow-up (not blocking): docs/ARCHITECTURE.md still has the same stale Allow major-version mismatch toggle + version-compat gate in pick_build_path #607 wording.


Checklist

  • Technical claims match implementation
  • PR follows repo template
  • Docs consistent across files — suggestion #2
  • Test failure is unrelated to diff

Automated review by Kōan (Claude) HEAD=11340ae 1 min 32s

@github-actions github-actions Bot added the docs Documentation label Jun 18, 2026
@esphbot

esphbot commented Jun 18, 2026

Copy link
Copy Markdown
Contributor Author

Simple rebase

Branch koan/readme-stale-remote-build-limitations was rebased onto main — no additional changes were needed.

Stats

1 file changed, 18 insertions(+), 19 deletions(-)
Actions performed
  • Already-solved check: negative (confidence=high, reasoning=No commit in main's recent history touches the README's remote-build limitations section, so the sta)
  • Rebased koan/readme-stale-remote-build-limitations onto upstream/main
  • Pre-push CI check: previous run #27739332241 failed
  • Pre-push CI fix: no changes needed or Claude found nothing to fix
  • Force-pushed koan/readme-stale-remote-build-limitations to origin
  • CI check enqueued in ## CI (async)

CI status

CI will be checked asynchronously.


Automated by Kōan

@bdraco bdraco marked this pull request as ready for review June 18, 2026 05:54
Copilot AI review requested due to automatic review settings June 18, 2026 05:54
@bdraco bdraco merged commit abef752 into esphome:main Jun 18, 2026
18 of 20 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates the README’s remote-build documentation to reflect current behavior by replacing the old “Known limitations” section with a current “Install coverage” summary, aligning docs with recently shipped remote-build capabilities.

Changes:

  • Removes the two previously listed remote-build limitations (serial installs and version-drift gating).
  • Adds an “Install coverage” section describing remote compile coverage for OTA and serial/USB installs.
  • Documents the sender-side version-match policy options (any / release / exact / exact_required).

Comment thread README.md
Comment on lines +396 to +400
Remote build runs the compile on a paired receiver for **every
install type** — OTA over Wi-Fi or Ethernet, and serial /
USB-attached flashes — across every chip family ESPHome's OTA
component supports: ESP32, ESP8266, RP2040 / RP2350, the
LibreTiny family (BK72xx, RTL87xx, LN882x), and the nRF52 line.
Comment thread README.md
Comment on lines +407 to +411
**version-match policy** on the sending side (Settings → Send
builds): `any`, `release` (major version must match), `exact`,
or `exact_required` — the last refuses to build rather than
falling back to a local compile when no version-compatible
receiver is paired.
@esphbot esphbot deleted the koan/readme-stale-remote-build-limitations branch June 18, 2026 05:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants