Skip to content

fix(matter_server): consolidate JS server flag fixes#4533

Open
markvp wants to merge 2 commits intohome-assistant:masterfrom
markvp:copilot/merge-three-local-fix-branches
Open

fix(matter_server): consolidate JS server flag fixes#4533
markvp wants to merge 2 commits intohome-assistant:masterfrom
markvp:copilot/merge-three-local-fix-branches

Conversation

@markvp
Copy link
Copy Markdown

@markvp markvp commented Apr 3, 2026

Summary

  • Moves --log-level-sdk from the shared argument list into the Python-only (non-beta) code path via extra_args, matching the existing pattern for server-specific options
  • Moves --paa-root-cert-dir from the shared argument list into the Python-only (non-beta) code path via extra_args, matching the existing pattern for server-specific options
  • Moves --ota-provider-dir from the shared argument list into both server-specific code paths via extra_args
  • Removes the now-unused declare log_level_sdk and top-level config read
  • The JavaScript Matter Server does not support --log-level-sdk and emits Warning: --log-level-sdk is deprecated and no longer supported. This option will be ignored. on every startup
  • The JavaScript Matter Server does not support --paa-root-cert-dir and emits Warning: --paa-root-cert-dir is deprecated and no longer supported. This option will be ignored. on every startup
  • JS beta path: Only passes --ota-provider-dir when enable_test_net_dcl is also enabled, since the JS server requires both flags for custom OTA files to be used
  • Python path: Continues passing --ota-provider-dir unconditionally, as the Python server uses it independently to load local OTA update files

Note on configuration UI

Ideally the log_level_sdk configuration option would be hidden or disabled in the UI when beta: true is set, since it has no effect on the JS server. However, the Home Assistant add-on schema system does not currently support conditional field visibility based on other option values, so this is not possible without upstream changes to the add-on config framework. The option is harmless when present — it is simply not read or passed through.

Test plan

  • Start Matter Server add-on with beta: true — verify no --log-level-sdk deprecation warning in logs
  • Start Matter Server add-on with beta: false and a non-default log_level_sdk value — verify --log-level-sdk is still passed correctly to the Python server
  • Start Matter Server add-on with beta: true — verify no --paa-root-cert-dir deprecation warning in logs
  • Start Matter Server add-on with beta: false — verify --paa-root-cert-dir is still passed correctly to the Python server
  • Start with beta: true, enable_test_net_dcl: false — verify no OTA warning in logs, --ota-provider-dir is not passed
  • Start with beta: true, enable_test_net_dcl: true — verify --ota-provider-dir is passed alongside --enable-test-net-dcl
  • Start with beta: false — verify --ota-provider-dir is still passed unconditionally to the Python server

Fixes #4516, #4518, #4520
Replaces #4517, #4519, #4521

Summary by CodeRabbit

  • Chores
    • Updated Matter Server to version 8.4.0 with refined argument forwarding logic for improved server-specific configuration handling

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 3, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 301f87ca-263f-4ce1-9bb5-fe481727a9d3

📥 Commits

Reviewing files that changed from the base of the PR and between fc6ef28 and e4f3db2.

📒 Files selected for processing (3)
  • matter_server/CHANGELOG.md
  • matter_server/config.yaml
  • matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run

📝 Walkthrough

Walkthrough

The PR updates Matter Server from version 8.3.0 to 8.4.0 and modifies the startup script to conditionally forward arguments based on server type. Arguments like --log-level-sdk and --paa-root-cert-dir are now passed only to the Python server, while --ota-provider-dir forwarding to the JavaScript server is conditional on the enable_test_net_dcl setting.

Changes

Cohort / File(s) Summary
Version and Documentation
matter_server/CHANGELOG.md, matter_server/config.yaml
Added changelog entry documenting control-flow changes for version 8.4.0; bumped add-on version from 8.3.0 to 8.4.0.
Startup Script Logic
matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run
Refactored argument handling to conditionally pass server-specific arguments. Removed log_level_sdk from common args; added logic to pass --log-level-sdk, --paa-root-cert-dir, and --ota-provider-dir only to Python server. For JavaScript server, --ota-provider-dir is now conditional on enable_test_net_dcl being enabled.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Title clearly summarizes the main change: consolidating JavaScript server flag fixes by moving flags into server-specific code paths.
Linked Issues check ✅ Passed The PR implements all required changes: stops passing --log-level-sdk and --paa-root-cert-dir to JS server, makes --ota-provider-dir conditional on enable_test_net_dcl for JS server, and removes unused declarations [#4516, #4518, #4520].
Out of Scope Changes check ✅ Passed All changes are directly scoped to the linked issue requirements: version bump, changelog update, and control-flow restructuring in the run script for proper flag routing.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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
Copy Markdown
Member

@agners agners left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Matter Server: --log-level-sdk warning when using JS beta server

3 participants