Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .claude/skills/firmware-update-pr-review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ description: Use this skill when reviewing any pull request against the zwave-js
PRs that add or modify `firmwares/<vendor>/*.json` often arrive with:
- Non-canonical titles (missing vendor, `.json` suffix, unusual phrasing)
- Changelogs with stray whitespace or malformed bullets
- Changelogs written as a single numbered list item (`"1. Fixed X"`) β€” the `1.` prefix is meaningless with only one item
- Typos in text fields
- Spaces instead of tabs for indentation

Expand Down Expand Up @@ -136,6 +137,17 @@ So: decide per-file by reading the other (unchanged) changelogs in the same JSON

Regardless of the style decision, genuine normalizations (trimmed stray whitespace, fixed malformed bullets, escape-fix for bad markdown) are always worth committing.

#### Single-item numbered lists

A changelog written as `"1. Some description"` β€” a single numbered-list item β€” should have the `1. ` prefix stripped. A list with one entry is just prose; the numbering adds noise without organizational value.

```
"1. Original Release Firmware" β†’ "Original Release Firmware"
"1. Fixes latching issue" β†’ "Fixes latching issue"
```

Only strip when the changelog contains **exactly one item** β€” i.e., no `\n` followed by `2.`. Multi-item numbered lists (`"1. ...\n2. ..."`) are valid and must be left unchanged.

#### Splitting prose into bullets

Submitters often paste a changelog as a single run-on sentence-stream like `"Fixed X. Optimized Y. Added Z."`. When the prose contains 2+ distinct changes, split it into a bullet list β€” it renders far better on the consumer side (z-wave-js, Home Assistant, etc.).
Expand Down
Loading