diff --git a/.github/DISCUSSION_TEMPLATE/request-support-investigate-issue.yml b/.github/DISCUSSION_TEMPLATE/request-support-investigate-issue.yml new file mode 100644 index 000000000000..466d75f24bd2 --- /dev/null +++ b/.github/DISCUSSION_TEMPLATE/request-support-investigate-issue.yml @@ -0,0 +1,176 @@ +name: Request Support / Investigate Issue +description: | + To ask for support with a problem or to figure out if something is a bug or not +body: + - type: markdown + attributes: + value: | + ## Hi there! + + --- + + Since Z-Wave JS is used in multiple applications with a lot of moving + parts, your issue might actually be caused by something outside our + control. + + Let's start by finding out if we are able to help you... + + 1. If this is about a **device** that is interviewed completely but + does not **get identified**, please + [use this template](https://github.com/zwave-js/node-zwave-js/issues/new?assignees=&labels=config+%E2%9A%99&projects=&template=device_config.yml&title=Missing+device+configuration%3A+%3Center+manufacturer+and+device+name%3E) instead. + + 1. Were you using **Z-Wave JS UI** (standalone or as an addon) when you + encountered the problem?\ + If **yes**: please open your issue at + https://github.com/zwave-js/zwave-js-ui/issues instead, **unless** you + were told to report it here. + + 1. Were you using **Home Assistant** (but not Z-Wave JS UI) when you + encountered the problem?\ + If **yes**, please open your issue at + https://github.com/home-assistant/core/issues instead, **unless** you + were told to report it here. + + - type: checkboxes + id: checklist + attributes: + label: Checklist + options: + - label: I have read and followed the above instructions + required: true + - label: | + I have checked the [troubleshooting + section](https://zwave-js.github.io/node-zwave-js/#/troubleshooting/index) + and my problem is **not** described there. + required: true + - label: | + I have read the + [changelog](https://github.com/zwave-js/node-zwave-js/blob/master/CHANGELOG.md) + and my problem was **not** mentioned there or the fix **did not + work**. + required: true + + - type: markdown + attributes: + value: '---' + + - type: textarea + attributes: + label: Describe the issue + description: | + Please answer all questions that apply and remove the ones that don't. + Optionally share screenshots of what you're seeing. + value: | + What is happening? + + + What did you expect to happen instead? + + + Steps to reproduce the behavior: + 1. Go to '...' + 2. Click on '...' + 3. Scroll down to '...' + 4. See error + + + Anything else we should know? + + - type: textarea + id: software_versions + attributes: + label: Software versions + description: Please fill in the versions of each software you're using. + value: | + Driver (node-zwave-js): ... + + Z-Wave JS UI: ... + + Home Assistant Z-Wave Integration: ... + + Home Assistant Z-Wave JS Addon: ... + + ioBroker.zwave2 Adapter: ... + + If you are using something non-standard, tell us here: ... + + - type: textarea + id: devices + attributes: + label: Device information + description: | + If this is an issue with a specific device, please specify which one(s). + Please tell us which node ID the device has in your network (this is a number between 1 and 232). + + value: | + Manufacturer: ... + Model name: ... + Node ID: ... + + - type: markdown + attributes: + value: | + --- + + ## Driver Logfile + + We **need** a **driver** logfile on loglevel **DEBUG**. Many issues + simply cannot be investigated without the correct logfile. If you don't + provide one, the first thing we'll do is ask for one. + + Here's how to create one: + + - [Z-Wave JS UI](https://zwave-js.github.io/zwave-js-ui/#/troubleshooting/generating-logs?id=driver-logs) + - [Home Assistant Z-Wave Integration](https://www.home-assistant.io/integrations/zwave_js#how-do-i-access-the-z-wave-logs) + - [ioBroker.zwave2 Adapter](https://github.com/AlCalzone/ioBroker.zwave2/blob/master/docs/en/troubleshooting.md#providing-the-necessary-information-for-an-issue) + + Please... + + - do not link to logs elsewhere, unless you absolutely cannot upload + them here. If the logfile is too large, please try to **zip** it. + - do not truncate or filter logs + - do not set the loglevel to anything but **DEBUG**, unless you're told to + - **upload** the log as a **file** here + - avoid copy-pasting if you can avoid it + + **Note:**\ + If the log is for a device included using **Security S0**, we need your + S0 key to decode the traffic. + + You can send that via email to info@zwave-js.io - please include a link + to this request. + + - type: checkboxes + id: logfile_checklist + attributes: + label: Checklist + options: + - label: | + I [made + sure](https://zwave-js.github.io/node-zwave-js/#/troubleshooting/index?id=rule-1-use-the-driver-log-luke) + to provide a **driver log** on level **debug**. + required: true + - label: | + The log includes a re-interview of the problematic device _(if applicable)_. + required: false + - label: | + The log includes the problematic interaction with the device _(if applicable). + required: false + - label: | + I provided the node ID of the problematic device _(if applicable)_. + required: false + + - type: textarea + id: logfile + attributes: + label: Upload Logfile + placeholder: | + Drag and drop the logfile here. Please do not copy/paste logs if possible. + + - type: markdown + attributes: + value: | + --- + + Thanks for your patience. Filling this out completely saves us a lot of + time. diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml deleted file mode 100644 index 1c413cbd3bb3..000000000000 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ /dev/null @@ -1,202 +0,0 @@ -name: Bug report -description: Use this template if something is not working correctly or to report errors in existing device config files. -#title: "" -#labels: [] -#assignees: -# - AlCalzone - -body: - - type: markdown - attributes: - value: | - ## Hi there! - - We appreciate you taking your time and reporting an issue. - - Z-Wave JS is used in multiple applications with a lot of moving parts, so your issue might actually be caused by something outside our control. - Let's find out if you're in the correct repository! - - - type: dropdown - attributes: - label: Is your problem within Home Assistant (Core or Z-Wave JS Integration)? - description: If yes, please open your issue at https://github.com/home-assistant/core/issues - options: - - NO, my problem is NOT within Home Assistant or the ZWave JS integration - - YES, BUT a Home Assistant developer has told me to come here - validations: - required: true - - - type: dropdown - attributes: - label: Is your problem within Z-Wave JS UI (formerly ZwaveJS2MQTT)? - description: If yes, please open your issue at https://github.com/zwave-js/zwave-js-ui/issues - options: - - NO, my problem is NOT within Z-Wave JS UI - - YES, BUT a Z-Wave JS UI developer has told me to come here - validations: - required: true - - - type: checkboxes - id: checklist - attributes: - label: Checklist - options: - - label: | - I have checked the [troubleshooting section](https://zwave-js.github.io/node-zwave-js/#/troubleshooting/index) and my problem is **not** described there. - required: true - - - label: | - I have read the [changelog](https://github.com/zwave-js/node-zwave-js/blob/master/CHANGELOG.md) and my problem was **not** mentioned there. - required: true - - - type: markdown - attributes: - value: | - ## 🙏🏻🙏🏻🙏🏻 Thanks, now onto your issue 🙏🏻🙏🏻🙏🏻 - - - type: textarea - id: bug_description - attributes: - label: Describe the bug - description: 'A clear and concise description of what the bug is and how it can be reproduced.' - value: | - What causes the bug? - - What do you observe? - - What did you expect to happen? - - Steps to reproduce the behavior: - 1. Go to '...' - 2. Click on '...' - 3. Scroll down to '...' - 4. See error - validations: - required: true - - - type: textarea - id: devices - attributes: - label: Device information - description: 'If this is an issue with a device, please specify which one(s). Repeat the pre-defined text if necessary.' - value: | - Manufacturer: - Model name: - Node ID in your network: - - - type: markdown - attributes: - value: | - --- - - - type: checkboxes - id: software - attributes: - label: How are you using `node-zwave-js`? - options: - - label: '`zwave-js-ui` (formerly `zwavejs2mqtt`) Docker image (latest)' - - label: '`zwave-js-ui` (formerly `zwavejs2mqtt`) Docker image (dev)' - - label: '`zwave-js-ui` (formerly `zwavejs2mqtt`) Docker manually built _(please specify branches)_' - - label: '`ioBroker.zwave2` adapter _(please specify version)_' - - label: '`HomeAssistant zwave_js` integration _(please specify version)_' - - label: '`pkg`' - - label: '`node-red-contrib-zwave-js` _(please specify version, double click node to find out)_' - - label: 'Manually built from GitHub _(please specify branch)_' - - label: 'Other _(please describe)_' - validations: - required: true - - - type: textarea - id: software_versions - attributes: - label: Which branches or versions? - description: Please fill out the (applicable) branches/versions requested in the previous dropdown, delete the rest - value: | - version: - `node-zwave-js` branch: - `zwave-js-ui` branch: - - - type: markdown - attributes: - value: | - --- - - - type: dropdown - id: changes - attributes: - label: Did you change anything? - options: - - 'yes (please describe)' - - 'no' - validations: - required: true - - - type: textarea - id: changes_description - attributes: - label: If yes, what did you change? - - - type: dropdown - id: changes_worked_before - attributes: - label: Did this work before? - options: - - "Don't know, this is a new device" - - 'No, it never worked anywhere' - - 'Yes (please describe)' - validations: - required: true - - - type: textarea - id: changes_worked_where - attributes: - label: If yes, where did it work? - description: Please specify which application (and which version) - - - type: markdown - attributes: - value: | - --- - - - type: textarea - id: logfile - validations: - required: true - attributes: - label: Attach Driver Logfile - description: | - Many issues simply cannot be investigated without the correct logfile. We **need** a **driver** logfile on loglevel **DEBUG**. - Please no links or gists or embedded logs. - - Avoid copy-pasting as text because that messes up the formatting. - Avoid truncating the logs because you might be missing relevant info. - - Please make sure to upload the correct log! If you're unsure, the correct one is called `zwave_.log` and contains - ``` - ███████╗ ██╗ ██╗ █████╗ ██╗ ██╗ ███████╗ ██╗ ███████╗ - ╚══███╔╝ ██║ ██║ ██╔══██╗ ██║ ██║ ██╔════╝ ██║ ██╔════╝ - ███╔╝ ██║ █╗ ██║ ███████║ ██║ ██║ █████╗ █████╗ ██║ ███████╗ - ███╔╝ ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝ ╚════╝ ██ ██║ ╚════██║ - ███████╗ ╚███╔███╔╝ ██║ ██║ ╚████╔╝ ███████╗ ╚█████╔╝ ███████║ - ╚══════╝ ╚══╝╚══╝ ╚═╝ ╚═╝ ╚═══╝ ╚══════╝ ╚════╝ ╚══════╝ - ``` - - If you are using `zwavejs2mqtt`, this is how you create the logfiles: - * Go to Settings, Z-Wave section - * select log level DEBUG - * enable "log to file" - - **Note:** - For S0-encrypted communication we need your network key to decode. You can send that via email to info@zwave-js.io - We cannot easily decrypt S2-encrypted communication currently, unless you have Zniffer logs. - - placeholder: | - Drag and drop logfile (`zwave_.log`) file here. - Copying the contents is okay for short logs (< 20 lines), but please put them in code blocks: - ``` - log here - ``` - - - type: markdown - attributes: - value: Thanks for your patience. Filling this out completely saves us a lot of time. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 68d286150913..23086d9b1f3c 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,5 +1,11 @@ # blank_issues_enabled: false contact_links: + - name: 🪲 Report a potential bug + url: https://github.com/zwave-js/node-zwave-js/discussions/new?category=request-support-investigate-issue + about: Start an investigation here. We'll create an issue if this is a confirmed bug. + - name: ⛑️ Troubleshoot + url: https://github.com/zwave-js/node-zwave-js/discussions/new?category=request-support-investigate-issue + about: Ask for help with troubleshooting - name: ❓ Ask a Question url: https://github.com/zwave-js/node-zwave-js/discussions/new about: If you have any questions about how to do something in zwave-js, ask it here. diff --git a/.github/ISSUE_TEMPLATE/device_config.yml b/.github/ISSUE_TEMPLATE/device_config.yml index 175e25dd0373..ae2257342538 100644 --- a/.github/ISSUE_TEMPLATE/device_config.yml +++ b/.github/ISSUE_TEMPLATE/device_config.yml @@ -10,7 +10,10 @@ body: attributes: value: | We appreciate you taking your time and reporting an issue. - Please note that this template is **NOT** for bug reports! To report a problem with an existing config file or if a device is not working correctly, please use the **bug report** template. + + Please note that this template is **NOT** for bug reports! + To report a problem with an existing config file or if a device is not working correctly, + please [use this template](https://github.com/zwave-js/node-zwave-js/discussions/new?category=request-support-investigate-issue) instead! To speed things up, consider [contributing](https://zwave-js.github.io/node-zwave-js/#/config-files/contributing-files) a config file yourself. @@ -26,6 +29,9 @@ body: - label: | It was not [merged recently](https://github.com/zwave-js/node-zwave-js/pulls?q=is%3Apr+is%3Aclosed) or has a [pending PR](https://github.com/zwave-js/node-zwave-js/pulls?q=is%3Aopen+is%3Apr) required: true + - label: | + The device was interviewed completely and has no missing or `undefined` IDs + required: true - type: input id: device