Conversation
Three facts were living only in agent memory, which does not survive a host move. Two are specific to this repository and belong here. A pull request targeting develop matches none of the workflow triggers, so it sits with an empty check list rather than a pending one, and needs a manual dispatch. A compile job that dies in about 18 seconds is the esphome-nonroot image failing to pull, not a template defect, and the duration is what separates it from a real esp-idf build. The camera exposure note claimed agc_gain_ceiling as the cause of a dark image. That rests on community reports rather than on anything measured here, and the bench frame that prompted it was dark because the protective film was still on the lens. Both are stated as such. The third fact, Copilot answering with a quota limit instead of a review, is fleet-wide and went to the hub as ptr727/ProjectTemplate#525.
These files are carried verbatim from ptr727/ProjectTemplate, so a local copy that differs is drift rather than a choice. The hub's regenerated fleet divergence report lists this repo for them. Changed: .markdownlint-cli2.jsonc repo-config/configure.sh Line endings preserved as each file held them. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Bumps the actions-deps group with 1 update: [DavidAnson/markdownlint-cli2-action](https://github.com/davidanson/markdownlint-cli2-action). Updates `DavidAnson/markdownlint-cli2-action` from 24.1.0 to 24.2.0 - [Release notes](https://github.com/davidanson/markdownlint-cli2-action/releases) - [Commits](DavidAnson/markdownlint-cli2-action@6bf21b0...21c1be1) --- updated-dependencies: - dependency-name: DavidAnson/markdownlint-cli2-action dependency-version: 24.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions-deps ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
The connected color latched a boolean that any one of the API server's client slots could clear, so a second client disconnecting left the LED white while Home Assistant was still connected and reporting the device online. The api.connected condition reads the live connection count instead. Upstream fires the disconnect trigger after removing the client, so the condition sees the true state from inside it.
There was a problem hiding this comment.
Pull request overview
Promotes the current develop snapshot to main, with the only functional behavior change being a fix to the RGB status LED “API connected” state so it reflects the live API connection count rather than a latched per-client flag.
Changes:
- Fix RGB status LED connected-state handling by switching from a latched global to the live
api.connectedcondition. - Re-vendor/update carried “hub” files (comment/doc-only refreshes in this PR’s diffs) and clarify operational hazards in
OPERATIONS.md. - Bump the pinned
DavidAnson/markdownlint-cli2-actionGitHub Action to v24.2.0.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
templates/rgb-led-status.yaml |
Removes the latched api_ok global and uses api.connected to drive the “API connected” LED color reliably with multiple clients. |
repo-config/configure.sh |
Comment/doc refactor for readability while preserving existing apply/check behavior. |
OPERATIONS.md |
Updates operational guidance and documents the “API connected must be live” status-LED rule plus CI/tooling hazards. |
.markdownlint-cli2.jsonc |
Comment-only clarification of markdownlint configuration intent (no rule behavior change in the shown diff). |
.github/workflows/test-pull-request.yml |
Updates the pinned markdownlint action SHA/version comment to v24.2.0. |
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.
Promotes the current
developsnapshot tomain. Four commits since the last promotion:ff1cc89Read the live API client count for the RGB status LED (Read the live API client count for the RGB status LED #80)88c4253Bump DavidAnson/markdownlint-cli2-action in the actions-deps group (Bump DavidAnson/markdownlint-cli2-action from 24.1.0 to 24.2.0 in the actions-deps group #78)662ebd6Re-vendor the carried hub files to the current canonical (Re-vendor the carried hub files to the current canonical #77)de55b02Record the CI hazards and the camera exposure provenanceThe status-LED change is the only device-behavior change in the set. The connected color was latched in a global that any one of the API server's client slots could clear, so a second client disconnecting left the LED white while Home Assistant was still connected. It now reads the
api.connectedcondition, which is the live connection count.That fix is flashed and confirmed on the office proxy: with two clients attached, one disconnecting re-drives the LED green rather than white.
esphome configpasses for all eleven consumers of the template, and the full lint set is clean locally.The other two deployed consumers, the pantry proxy and the HVAC compressor sensor, still run the previous firmware and carry the same latch until reflashed. That is a deployment step, not a repo change.