Skip to content

Fix Nodus pressure gauge updates and automation display names - #31

Merged
mot-yelraf merged 1 commit into
trunkfrom
fix-pressure-range
Sep 20, 2026
Merged

mot-yelraf merged 1 commit into
trunkfrom
fix-pressure-range

Conversation

@mot-yelraf

@mot-yelraf mot-yelraf commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Summary

Nodus pressure readings corrected for altitude could retain a station-pressure gauge range because Sensorius did not mirror the advertised calibration altitude, and an open dashboard kept the calibration context from its initial page load. Mirror explicit device altitude from retained metadata and propagate updated pressure context through dashboard JSON refreshes so existing gauge limits, labels, and bands update automatically. Preserve explicit zero, partial metadata, and stored readings.

Also publish automation display names from script_json.name in Nodus ownership status, with an ID fallback for unnamed legacy rules and retained updates on rename. Update contract/configuration documentation, record the firmware metadata audit, and set version v0.26.263.3.

Verification

  • macOS, Python 3.13.9; simulated MQTT and isolated localhost browser fixture; no direct GPIO.
  • npm run validate:pr: 44 Chromium tests passed, including corrected/raw pressure, late calibration updates in GaugeJS and fallback canvas, and resetting calibration to zero.
  • python3 -m pytest testApparatus/test_mqtt_ingest_liveness.py testApparatus/test_nodus_settings_schema_writes.py testApparatus/test_nodus_automation_status.py testApparatus/test_automation_contract.py -q: 288 passed, 1 skipped.
  • git diff --check: passed.
  • User confirmed the corrected pressure display after refresh and subsequently verified the live-update fix.

Contributor checklist

  • This pull request is focused on Nodus metadata-driven presentation fixes.
  • I added or updated tests for behavior changes.
  • I updated the canonical documentation when behavior or configuration changed.
  • I did not commit credentials, private runtime configuration, databases, or logs.
  • I preserved compatibility-sensitive MQTT, settings, switch identity, and persistence behavior.

Maintainer verification

  • Required remote checks pass: Python compile (3.11 and 3.13) and full regression suite with coverage floor.
  • npm run validate:pr passes on a trusted host.
  • Hardware-, broker-, onboarding-, and platform-specific behavior not covered remotely is recorded below.

Residual risk or unverified areas

Agent verification used simulated MQTT; live Nodus hardware and broker interactions were not independently exercised. The firmware audit documents additional metadata gaps outside this change. Deployment needs a Sensorius restart and one dashboard reload to load the updated code; later calibration changes update through normal dashboard refreshes.

@mot-yelraf
mot-yelraf merged commit f50b8b3 into trunk Sep 20, 2026
3 checks passed
@mot-yelraf
mot-yelraf deleted the fix-pressure-range branch September 20, 2026 16:14
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