Skip to content

Merge beta to main which fixes input dry logic, switches to actions, and removes strapping warning.#21

Merged
TrevorSchirmer merged 11 commits intomainfrom
beta
Dec 18, 2025
Merged

Merge beta to main which fixes input dry logic, switches to actions, and removes strapping warning.#21
TrevorSchirmer merged 11 commits intomainfrom
beta

Conversation

@bharvey88
Copy link
Contributor

@bharvey88 bharvey88 commented Dec 11, 2025

Version:

What does this implement/fix?

Merge beta to main which fixes input dry logic, switches to actions, and removes strapping warning.

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

Summary by CodeRabbit

  • New Features

    • Added ignore_strapping_warning option for the reset button.
  • Bug Fixes

    • Improved pump safety logic to better detect dry input conditions.
  • Refactor

    • Public API renamed: "services" entries are now "actions" (play_buzzer, run_pump_for_seconds, run_pump_until_full).

✏️ Tip: You can customize this high-level summary in your review settings.

bharvey88 and others added 8 commits September 25, 2025 11:57
Change from depreciated service calls to new actions
Removes warning in yaml about using gpio9 as a strapping pin
Change from depreciated service calls to new actions
…-warning

Removes warning in yaml about using gpio9 as a strapping pin
undo previous yaml change
@coderabbitai
Copy link

coderabbitai bot commented Dec 11, 2025

Walkthrough

Updates ESPHome YAML: bumps version, renames API surface from services to actions, adds ignore_strapping_warning: true to the reset button binary_sensor, inverts pump dry-input check from binary_sensor.is_on to binary_sensor.is_off, and applies minor EOF formatting tweaks.

Changes

Cohort / File(s) Summary
API structure migration
Integrations/ESPHome/Core.yaml
Top-level API declaration renamed from api.services to api.actions; each service entry renamed to action (play_buzzer, run_pump_for_seconds, run_pump_until_full).
Sensor & pump logic
Integrations/ESPHome/Core.yaml
Added ignore_strapping_warning: true to the binary_sensor reset_button; changed pump safety condition to use binary_sensor.is_off: fluid_input_sensor (previously is_on) in the "Stop Pump When Input Dry" pathway.
Formatting
Integrations/ESPHome/Core.yaml
Minor end-of-file/newline adjustments around rgb_light blocks (no behavioral change).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Verify the inverted pump condition correctly represents "dry" versus "wet" sensor logic and test pump shutdown behavior.
  • Confirm all references and consumers of the API were updated to use actions (search for services: in repo).
  • Check that ignore_strapping_warning: true on the reset button is acceptable for the hardware and documented.

Poem

🐰 I hopped through YAML, nibbling old lines,
Services turned actions — new names, new designs.
A button now quiet, a pump that knows when,
I thumped with delight and danced in the glen. 🥕✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the three main changes in the pull request: fixing input dry logic (pump safety logic change), switching to actions (API surface rename from services to actions), and removing strapping warning (ignore_strapping_warning property added).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch beta

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 and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

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

34-50: The migration from services to actions is correct and aligns with ESPHome's API evolution.

ESPHome supports the updated actions terminology while maintaining backward compatibility with services in YAML for the foreseeable future. This is not a breaking change for Home Assistant users—existing automations using services will continue to work. Updating to actions is a best practice following ESPHome's terminology alignment with Home Assistant, but not required.

📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0cd567f and 6fdf578.

📒 Files selected for processing (1)
  • Integrations/ESPHome/Core.yaml (5 hunks)
🔇 Additional comments (3)
Integrations/ESPHome/Core.yaml (3)

3-3: LGTM: Version bump

The version update from 25.8.6.1 to 25.12.18.1 is appropriate for this release.


174-180: Verify boot behavior with GPIO9 as strapping pin.

GPIO9 is a strapping pin on ESP32-C6 that affects boot mode. While ignore_strapping_warning: true suppresses the warning, ensure the pin's state during boot (with pullup enabled) doesn't interfere with normal startup or cause unintended boot modes.

Consider testing the device through multiple power cycles and resets to confirm reliable boot behavior. The pullup configuration should keep the pin HIGH by default, which is typically safe, but verification is recommended.


370-376: Critical bug fix: Corrected input dry logic.

This change fixes a critical logic error in the pump safety system. With inverted: true on the fluid_input_sensor (line 215), the sensor state is OFF when physically dry. The previous binary_sensor.is_on check would have incorrectly stopped the pump when the input was wet, opposite of the intended behavior.

The corrected logic now properly stops the pump when the input sensor is OFF (dry), which aligns with:

  • The feature name "Stop Pump When Input Dry" (line 124)
  • The on_turn_on condition that requires the sensor to be ON (wet) to start (line 150)

Excellent catch on fixing this safety-critical bug!

# Conflicts:
#	Integrations/ESPHome/Core.yaml
@TrevorSchirmer TrevorSchirmer merged commit 0e14af3 into main Dec 18, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants