• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

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: master
CHANGE BRANCH
x
Reset
Sync Branches
  • master
  • @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
  • 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
20779326840 master fix(markdownlint): ensure MD059 rule is explicitly set to false push 07 Jan 2026 11:04AM UTC robertsLando github
19.53
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
20392278315 master Release 11.9.1 push 20 Dec 2025 09:15AM UTC zwave-js-bot github
19.53
20392260265 master feat: bump @release-it/conventional-changelog@10.0.4 (#4499) push 20 Dec 2025 09:13AM UTC web-flow github
19.53
20334720751 master fix: npm release persisted "update available" popup Fixes #4489 push 18 Dec 2025 11:01AM UTC robertsLando github
19.53
20330409806 master feat: bump zwave-js@15.18.0 push 18 Dec 2025 08:15AM UTC robertsLando github
19.53
20296410319 master Release 11.9.0 push 17 Dec 2025 08:27AM UTC zwave-js-bot github
19.53
20295471086 master fix(ui): ui settings not persisted on save Fixes #4333 push 17 Dec 2025 07:47AM UTC robertsLando github
19.53
20237632280 master fix: add null checks for metaThemeColor attributes in base store Fixes #4497 push 15 Dec 2025 03:26PM 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