• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In
You are now the owner of this repo.

zwave-js / zwave-js-ui
20%

Build:
DEFAULT BRANCH: master
Repo Added 20 Sep 2022 02:07PM UTC
Token mus2r2yYRz7XGYVesP5DKNJXitjqkrcyd regen
Build 2362 Last
Files 69
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH master
branch: SELECT
CHANGE BRANCH
x
Sync Branches
  • No branch selected
  • @release-it/conventional-changelog@10.0.4
  • @zwave-js/server@1.23.1
  • @zwave-js/server@1.24.1
  • @zwave-js/server@1.37.0
  • @zwave-js/server@1.38.0
  • @zwave-js/server@1.39.0
  • @zwave-js/server@3.2.1
  • AlCalzone-patch-1
  • SYNC-NODE-NAME-LOC
  • actions-updates
  • add-node-dsk
  • ai-repo-chooser
  • alpine-3.21
  • application-test
  • armv7-pkg
  • association-error-ui
  • associations-error
  • auto-redirect
  • battery-fix
  • better-logs-intercept
  • bug/to-subscribe-set-to-map
  • bump
  • bump-actions
  • bump-deps
  • bump-docker
  • bump-jsonl
  • bump-node
  • bump-server
  • bump-server-1.23.0
  • bump-zwave-js
  • bump-zwavejs-and-server
  • bump_2
  • central-scene-default-mqtt-ad
  • changelog-links
  • chore-docker
  • chore-package-ations-bump
  • chore-pem
  • chore/bump-node-to-18-14-2
  • chore/bump-node-version
  • chore/include-node-19-in-tests
  • cleanup-logs
  • compact-sort
  • compact-table
  • compress
  • config-db
  • controller-events
  • controller-values
  • copilot-instructions
  • copilot/add-checkbox-bypass-restriction
  • copilot/add-compact-view-default-setting
  • copilot/add-custom-browser-title-option
  • copilot/add-debugging-package-wizard
  • copilot/add-disable-background-checking
  • copilot/add-save-settings-without-restart
  • copilot/bump-nodejs-to-24
  • copilot/fix-4271-2
  • copilot/fix-4355
  • copilot/fix-4357
  • copilot/fix-4366
  • copilot/fix-4377
  • copilot/fix-4379
  • copilot/fix-4381
  • copilot/fix-direct-controller-connection
  • copilot/fix-discord-webhook-400-error
  • copilot/fix-discord-workflow-issue
  • copilot/fix-firmware-update-button-issue
  • copilot/fix-pwa-cache-issue
  • copilot/fix-race-condition-firmware-check
  • copilot/fix-refresh-node-neighbors
  • copilot/fix-settings-update-restart-issue
  • copilot/fix-ui-update-on-route-rebuild
  • copilot/fix-unknown-notification-issue
  • copilot/improve-agents-md-file
  • copilot/migrate-to-vite-7
  • copilot/update-deprecated-packages
  • copilot/update-status-on-task-completion
  • crc-error-zniffer
  • ct-101
  • custom-zwavejs-build
  • dark-mode
  • dark-toggle
  • date-zniffer
  • dbm-limits
  • debug-autoscroll
  • default-host
  • default-powerlevel-message
  • dependabot/github_actions/actions/checkout-3
  • dependabot/github_actions/actions/setup-node-3.4.1
  • dependabot/github_actions/actions/stale-6
  • dependabot/github_actions/actions/upload-artifact-3
  • dependabot/github_actions/docker/build-push-action-3
  • dependabot/github_actions/docker/login-action-2
  • dependabot/github_actions/docker/metadata-action-4
  • dependabot/github_actions/docker/setup-qemu-action-2.0.0
  • dependabot/github_actions/github/codeql-action-2
  • dependabot/github_actions/peter-evans/create-pull-request-4
  • dependabot/npm_and_yarn/axios-1.7.4
  • dependabot/npm_and_yarn/multi-9423f4c335
  • dependabot/npm_and_yarn/npm_and_yarn-0d7ef37a24
  • dependabot/npm_and_yarn/npm_and_yarn-2c2cf9d17b
  • dependabot/npm_and_yarn/npm_and_yarn-6ea9762674
  • dependabot/npm_and_yarn/npm_and_yarn-87115a91ec
  • dependabot/npm_and_yarn/npm_and_yarn-e04d5d616f
  • dependabot/npm_and_yarn/uplot-1.6.31
  • deps-bump
  • discord-bot
  • discovery-lights
  • discovery-scene-units
  • docker-alpine
  • docker-fix
  • docker22
  • dockerfixing
  • docs#3054
  • download-zniffer-trace
  • drop-18
  • drop-yarn
  • enable_renovate
  • esbuild
  • esbuild-pkg
  • eslint-bump
  • esmoduleinterop
  • external-auth-fix
  • feat#1942
  • feat#2517
  • feat#2695
  • feat#2730
  • feat#2767
  • feat#2768
  • feat#2835
  • feat#2847
  • feat#2857
  • feat#2859
  • feat#2871
  • feat#2896
  • feat#2921
  • feat#2998
  • feat#3008
  • feat#3097
  • feat#3129
  • feat#3162
  • feat#3225
  • feat#uid_prefix
  • feat-add-state-classes
  • feat-auto-powerleve
  • feat-cc-config-enabled
  • feat-changelog
  • feat-dsk
  • feat-dump
  • feat-inclusion-state
  • feat-load-zlf
  • feat-long-range
  • feat-max-files
  • feat-mqtt-options
  • feat-note-ui
  • feat-otw-update
  • feat-restart
  • feat-time
  • feat-tz-locale
  • feat-vid
  • feat-zjs10.6
  • feat-zniffer
  • feat/docker-more-semver
  • feat/ingress
  • feature/learnMode
  • fix#2691
  • fix#2761
  • fix#2789
  • fix#2819
  • fix#2845
  • fix#2945
  • fix#2975
  • fix#2983
  • fix#2993
  • fix#3034
  • fix#3045
  • fix#3141
  • fix#3190
  • fix#782
  • fix(ui)--improve-network-graph-popup-positioning
  • fix-3461
  • fix-QR-code-scanning
  • fix-arm-build
  • fix-association-error
  • fix-auth
  • fix-auto-powerlevel
  • fix-basic-auth
  • fix-build
  • fix-circular
  • fix-colors
  • fix-config-changed
  • fix-controller-events
  • fix-cover-up-down
  • fix-default-eu-region
  • fix-default-host
  • fix-dev-reload
  • fix-discovery-coves
  • fix-docker
  • fix-driver-function
  • fix-formatting-in-debug-window
  • fix-groups-LR
  • fix-hardreset
  • fix-indicator-not-defined
  • fix-k8s-deployment
  • fix-key-check
  • fix-log-rotate
  • fix-logger
  • fix-manager
  • fix-mcc-discovery
  • fix-mode-thermostat
  • fix-mqtt-callbacks
  • fix-name-loc-on-added
  • fix-nodes-manager
  • fix-optional-deps
  • fix-otw
  • fix-otw-firmware-update
  • fix-otw-progress
  • fix-pack
  • fix-pkg-config-sync
  • fix-powerlevel-auto
  • fix-rebuild-node-routes
  • fix-refresh-after-lr-powerlevel-set
  • fix-region-check-for-europe
  • fix-release
  • fix-reproducible-builds
  • fix-restart
  • fix-schedule-lock-cc-query
  • fix-scheduled-jobs
  • fix-set-return-routes
  • fix-stringify
  • fix-topics
  • fix-unconnected-battery
  • fix-update-firmware
  • fix-valueid
  • fix-valueid-2
  • fix-win-build
  • fix-windows
  • fix-windows-v2
  • fix-zniffer-init
  • fix-zniffer-routes
  • fix/is-authenticated
  • fixFWUpdate
  • fixed-footer-header
  • fw-infor
  • gh-queue
  • handle-battery-cc-notification
  • hard-reset
  • hass-mqtt-availability
  • healthcheck-improvements
  • inclusion-state-changed
  • inverted-checkbox
  • joneshf/ouknwmotlvts
  • kc/feat/configurable-defaultPsw
  • last-active
  • launch-task
  • link-iterations
  • link-statistics
  • logs-dir
  • logs-spacing
  • marcin-witkowski-language-improvements
  • master
  • max-lr-powerlevel
  • mergify/configuration-deprecated-update
  • mergify/robertsLando/config-update
  • migrate-vite-v7
  • move-to-esm
  • mqtt-ad-revert-central-scene-state-class
  • mqtt-discovery-configuration
  • mqtt-discovery-scene
  • multiple-releases
  • next-to-last
  • nif-event
  • nlwr
  • no-safe
  • no-watch-local-zwave-js
  • nodes-store-update
  • npm-pack
  • nvm-restore-raw
  • opensource-alt-patch-1
  • optimize-space
  • ota-rfregion
  • ota-updates-nits
  • otw-update-service
  • parse-ota-changelog
  • patch-1
  • patch-2
  • patch-4
  • patch-5
  • pinia
  • plugins-fix
  • privacy-mode
  • refactor-heal
  • refs/pull/3176/merge
  • refs/pull/3210/merge
  • refs/pull/3212/merge
  • refs/pull/3224/merge
  • refs/pull/3240/merge
  • refs/pull/3247/merge
  • refs/pull/3260/merge
  • refs/pull/3263/merge
  • refs/pull/3268/merge
  • refs/pull/3278/merge
  • refs/pull/3292/merge
  • refs/pull/3293/merge
  • refs/pull/3294/merge
  • refs/pull/3299/merge
  • refs/pull/3305/merge
  • refs/pull/3306/merge
  • refs/pull/3308/merge
  • refs/pull/3318/merge
  • refs/pull/3319/merge
  • refs/pull/3324/merge
  • refs/pull/3325/merge
  • refs/pull/3331/merge
  • refs/pull/3332/merge
  • refs/pull/3335/merge
  • refs/pull/3337/merge
  • refs/pull/3345/merge
  • refs/pull/3346/merge
  • refs/pull/3348/merge
  • refs/pull/3349/merge
  • refs/pull/3351/merge
  • refs/pull/3359/merge
  • refs/pull/3360/merge
  • refs/pull/3367/merge
  • refs/pull/3375/merge
  • refs/pull/3377/merge
  • refs/pull/3706/merge
  • release-ot
  • remove_node_14
  • reorder-settings
  • replace-failed
  • restart
  • reuse-code-api
  • revert-3539-mqtt-discovery-scene
  • revert-changes
  • rework-ota-region
  • rf-region-mandatory
  • rollup-issue
  • routedACK
  • save-options-on-node
  • scene-activation-mqtt-ad
  • scheduler-fix
  • search-in-table
  • settings-improvements
  • settings-ui-not-peristed
  • sh-syntax-error
  • sk-fix-typo
  • smart-start-improvements
  • snyk-fix-39d19f89e2774cc34c8c79fbe864ac9f
  • table-header
  • throttle_otw
  • toggle-hass-discovery
  • trackpad-scroll-speed
  • typo
  • ui-settings-changed
  • ui-theme-fix
  • unresponsive-setting
  • unsued-reds
  • update_k8s_ingress_to_not_beta
  • update_node_and_alpine
  • update_to_node_18
  • upload-file-to-folder
  • usercc-test
  • validate-number-inputs
  • views-settings
  • vitejs
  • vue3-refactor
  • websocket
  • zip-firmware
  • zj-server
  • zjs
  • zjs-15
  • zjs-v11
  • zjs10.12.0
  • zniffer-update
  • zwave-js-13
  • zwave-js-13.0.2
  • zwave-js-14
  • zwave-js-15.3.0
  • zwave-js@10.10.0
  • zwave-js@10.14.0
  • zwave-js@10.14.1
  • zwave-js@10.17.0
  • zwave-js@10.18.0
  • zwave-js@10.2.0
  • zwave-js@10.21.0
  • zwave-js@10.22.1
  • zwave-js@10.22.2
  • zwave-js@10.22.3
  • zwave-js@10.23.1
  • zwave-js@10.23.5
  • zwave-js@10.3.1
  • zwave-js@10.5.0
  • zwave-js@10.5.4
  • zwave-js@10.5.5
  • zwave-js@10.5.6
  • zwave-js@11.10.0
  • zwave-js@11.13.1
  • zwave-js@11.14.0
  • zwave-js@11.4.1
  • zwave-js@11.4.2
  • zwave-js@11.5.1
  • zwave-js@11.6.0
  • zwave-js@11.8.1
  • zwave-js@11.9.0
  • zwave-js@11.9.2
  • zwave-js@12
  • zwave-js@12.0.2
  • zwave-js@12.1.1
  • zwave-js@12.10.0
  • zwave-js@12.10.1
  • zwave-js@12.11.0
  • zwave-js@12.11.1
  • zwave-js@12.11.2
  • zwave-js@12.12.0
  • zwave-js@12.12.1
  • zwave-js@12.12.2
  • zwave-js@12.12.3
  • zwave-js@12.12.4
  • zwave-js@12.12.5
  • zwave-js@12.13.0
  • zwave-js@12.3.0
  • zwave-js@12.3.1
  • zwave-js@12.3.2
  • zwave-js@12.4.0
  • zwave-js@12.4.1
  • zwave-js@12.4.2
  • zwave-js@12.4.3
  • zwave-js@12.4.4
  • zwave-js@12.5.1
  • zwave-js@12.5.2
  • zwave-js@12.5.3
  • zwave-js@12.5.4
  • zwave-js@12.5.5
  • zwave-js@12.5.6
  • zwave-js@12.6.0
  • zwave-js@12.7.0
  • zwave-js@12.8.1
  • zwave-js@12.9.1
  • zwave-js@13.0.1
  • zwave-js@13.0.3
  • zwave-js@13.1.0
  • zwave-js@13.10.0
  • zwave-js@13.10.1
  • zwave-js@13.10.2
  • zwave-js@13.10.3
  • zwave-js@13.2.0
  • zwave-js@13.3.0
  • zwave-js@13.3.1
  • zwave-js@13.4.0
  • zwave-js@13.5.0
  • zwave-js@13.7.0
  • zwave-js@13.8.0
  • zwave-js@13.9.0
  • zwave-js@13.9.1
  • zwave-js@14.3.1
  • zwave-js@14.3.10
  • zwave-js@14.3.11
  • zwave-js@14.3.12
  • zwave-js@14.3.5
  • zwave-js@14.3.6
  • zwave-js@14.3.7
  • zwave-js@14.3.8
  • zwave-js@14.3.9
  • zwave-js@15.0.0
  • zwave-js@15.0.3
  • zwave-js@15.0.4
  • zwave-js@15.0.5
  • zwave-js@15.0.6
  • zwave-js@15.1.0
  • zwave-js@15.1.2
  • zwave-js@15.1.3
  • zwave-js@15.10.0
  • zwave-js@15.11.0
  • zwave-js@15.12.0
  • zwave-js@15.13.0
  • zwave-js@15.14.0
  • zwave-js@15.15.0
  • zwave-js@15.15.2
  • zwave-js@15.15.3
  • zwave-js@15.16.0
  • zwave-js@15.17.0
  • zwave-js@15.17.1
  • zwave-js@15.18.0
  • zwave-js@15.19.0
  • zwave-js@15.3.1
  • zwave-js@15.4.1
  • zwave-js@15.4.2
  • zwave-js@15.5.0
  • zwave-js@15.6.0
  • zwave-js@15.7.0
  • zwave-js@15.8.0
  • zwave-js@15.9.0

09 Jan 2026 10:07AM UTC coverage: 19.521% (-0.01%) from 19.532%
20848380898

push

github

web-flow
feat: add bypass option for association restrictions (#4512)

Z-Wave associations are currently blocked when certain compatibility
checks fail, including security class mismatches and unsupported command
classes. This prevents legitimate use cases where devices can work
around these restrictions (e.g., Fibaro FGKF-601 supports
per-association security mode configuration via parameter 29).

## Changes

### Backend (`api/lib/ZwaveClient.ts`)
- `addAssociations` now accepts `{ force: boolean }` option to bypass
association checks
- Logs warnings when associations are force-created
- Leverages upstream zwave-js controller support for forced associations

### Frontend (`src/components/dialogs/DialogAssociation.vue`)
- Adds "I know what I'm doing - bypass this check" checkbox for
bypassable errors
- Checkbox appears for these association check failures:
- `Forbidden_SecurityClassMismatch` - Devices have different security
classes
- `Forbidden_DestinationSecurityClassNotGranted` - Source node lacks
target's security class
- `Forbidden_NoSupportedCCs` - Target doesn't support source's command
classes
- Uses enum-based error detection (`canForceAssociation` computed
property)
- Enables ADD button when bypass is explicitly checked

### Frontend (`src/components/nodes-table/AssociationGroups.vue`)
- Passes `force` parameter through to backend API call

## UI Behavior

When attempting to create an association that fails compatibility
checks:

**Before:**
<img
src="https://github.com/user-attachments/assets/b85245c3-0884-4cbd-a692-e870e4a3dee2">

**After:**
A checkbox appears below the error message allowing expert users to
bypass the restriction with an explicit acknowledgment.

## Example

```javascript
// Backend API call with force option
await this.app.apiRequest('addAssociations', [
  sourceAddress,
  groupId,
  [targetAddress],
  { force: true }  // Bypass association checks
])
```

The upstream `Driver.controller.addAssociations()` method already
supports ... (continued)

334 of 443 branches covered (75.4%)

Branch coverage included in aggregate %.

0 of 19 new or added lines in 1 file covered. (0.0%)

4052 of 22025 relevant lines covered (18.4%)

1.14 hits per line

Relevant lines Covered
Build:
Build:
22025 RELEVANT LINES 4052 COVERED LINES
1.14 HITS PER LINE
Source Files on master
  • Tree
  • List 69
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
20848380898 master feat: add bypass option for association restrictions (#4512) Z-Wave associations are currently blocked when certain compatibility checks fail, including security class mismatches and unsupported command classes. This prevents legitimate use cases... push 09 Jan 2026 10:08AM UTC web-flow github
19.52
20817978974 copilot/add-checkbox-bypass-restriction Merge 6f842bc62 into b0c6de290 Pull #4512 09 Jan 2026 08:35AM UTC web-flow github
19.52
20819389577 copilot/fix-unknown-notification-issue Merge 7eba333c2 into b0c6de290 Pull #4514 08 Jan 2026 02:45PM UTC web-flow github
19.46
20784534255 copilot/add-checkbox-bypass-restriction Merge 0a78bdb4a into b0c6de290 Pull #4512 07 Jan 2026 02:53PM UTC web-flow github
19.52
20779326840 master fix(markdownlint): ensure MD059 rule is explicitly set to false push 07 Jan 2026 11:04AM UTC robertsLando github
19.53
20774197536 zwave-js@15.19.0 Merge 37d3920ff into b264c4b0c Pull #4507 07 Jan 2026 07:40AM UTC web-flow github
19.53
20577551083 copilot/update-deprecated-packages Merge e24135a36 into b264c4b0c Pull #4505 29 Dec 2025 04:33PM UTC web-flow github
19.51
20454402626 fixed-footer-header Merge d4b87b533 into b264c4b0c Pull #4488 23 Dec 2025 07:27AM UTC web-flow github
19.53
20427107452 compress Merge 810b8b037 into b264c4b0c Pull #4501 22 Dec 2025 09:06AM UTC web-flow github
19.51
20394770530 master docs: update changelog formatting and correct links for version 11.9.0 push 20 Dec 2025 01:03PM UTC robertsLando github
19.53
See All Builds (2002)

Badge your Repo: zwave-js-ui

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc