Skip to content

refactor(sensors): separate Dallas buses from logical sensor roles - #220

Draft
stritti wants to merge 4 commits into
mainfrom
refactor/dallas-bus-abstraction
Draft

stritti wants to merge 4 commits into
mainfrom
refactor/dallas-bus-abstraction

Conversation

@stritti

@stritti stritti commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

Draft architecture PR

Defines the hardware-sensitive refactor that separates physical OneWire/Dallas ownership from logical pool/solar sensor roles.

Target

  • DallasBus owns OneWire/Dallas discovery, conversion, read and rescan
  • pool/solar roles are explicit mapping data, not physical bus nodes
  • NORVI shared-bus and dedicated-bus boards differ only in composition
  • Core 0 publishes one complete sensor generation to Core 1
  • Web/MQTT/UI only consume cached discovery/sensor snapshots

Dependencies

Included now

OpenSpec proposal, design and detailed migration/verification tasks. Production code remains draft because this change requires real-hardware validation on both bus topologies.

@github-actions

github-actions Bot commented Oct 4, 2026 •

Copy link
Copy Markdown
Contributor

✅⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Max errors Warnings Elapsed time
✅ ACTION actionlint 8 0 0 0.74s
✅ BASH bash-exec 2 0 0 0.64s
✅ BASH shellcheck 2 0 0 0.77s
✅ BASH shfmt 2 0 0 0.01s
✅ C clang-format 1 0 0 0.05s
✅ C cppcheck 1 0 0 0.03s
✅ C cpplint 1 0 0 0.36s
✅ CPP clang-format 84 0 0 0.76s
✅ CPP cppcheck 84 0 0 7.14s
✅ CPP cpplint 84 0 0 8.26s
✅ EDITORCONFIG editorconfig-checker 268 0 0 0.53s
✅ JSON jsonlint 6 0 0 0.15s
✅ JSON v8r 6 0 0 4.08s
⚠️ MARKDOWN markdownlint 106 3 0 4.97s
✅ YAML yamllint 26 0 0 1.01s

Detailed Issues

⚠️ MARKDOWN / markdownlint - 3 errors
.opencode/skills/web-ui/SKILL.md:34 error MD028/no-blanks-blockquote Blank line inside blockquote
docs/superpowers/plans/2026-08-10-olimex-c6-local-ui-implementation.md:106:401 error MD013/line-length Line length [Expected: 400; Actual: 452]
docs/superpowers/plans/2026-08-16-norvi-button-calibration.md:7:401 error MD013/line-length Line length [Expected: 400; Actual: 412]

Notices

⚠️ Your configuration references items that have been removed from MegaLinter and are ignored: MAKEFILE, MAKEFILE_CHECKMAKE, MARKDOWN_MARKDOWN_LINK_CHECK. See Removed linters to find their replacements.

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@10.1.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,BASH_EXEC,BASH_SHELLCHECK,BASH_SHFMT,C_CPPCHECK,C_CPPLINT,C_CLANG_FORMAT,CPP_CPPCHECK,CPP_CPPLINT,CPP_CLANG_FORMAT,EDITORCONFIG_EDITORCONFIG_CHECKER,JSON_JSONLINT,JSON_V8R,MARKDOWN_MARKDOWNLINT,YAML_YAMLLINT

MegaLinter is provided by OX Security
Show us your support by starring ⭐ the repository

@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

Native Test Coverage

Metric Value
Line Coverage 47.0%
Branch Coverage 74.4%
Lines Hit/Total 370/787
Branches Hit/Total 166/223

Report from native unit tests (ASan + gcov).

This branch has not been deployed

No deployments
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