Skip to content
Merged
Show file tree
Hide file tree
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
3 changes: 2 additions & 1 deletion .agents/skills/concise-writing/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@ Never amend an existing commit unless explicitly asked — a fresh commit is the

## PR titles and descriptions

- Title under ~70 characters, same "why, not what" rule as commit summaries.
- Title under ~70 characters, same "why, not what" rule as commit summaries — and same `type: summary` convention ([Conventional Commits](https://www.conventionalcommits.org/)) as the individual commits, e.g. `fix: ...`, `feat: ...`, `chore: ...`.
- PRs are squash-merged — the PR title is the only commit message that survives on `main`, and it drives the changelog. A `chore:` title on a PR that actually fixes something means that fix never appears anywhere.
- Body: a short `## Summary` (1-3 bullets, what changed and why it was needed — not a file-by-file listing the diff already shows) plus a `## Test plan` checklist of what was actually run. Skip sections that would just restate the diff.
- Don't repeat the same information across every commit in the PR *and* the PR description *and* a summary comment — pick the level (usually the PR description) and let the rest stay terse.
- When reviewing someone else's PR description for terseness, flag sentences that only restate a line from the diff without adding reasoning, and padding like "This PR also includes minor cleanup" with nothing concrete after it.
Expand Down
25 changes: 25 additions & 0 deletions .release-it.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"plugins": {
"@release-it/conventional-changelog": {
"preset": {
"name": "conventionalcommits",
"types": [
{ "type": "feat", "section": "Features", "effect": "bump" },
{ "type": "feature", "section": "Features", "effect": "bump" },
{ "type": "fix", "section": "Bug Fixes", "effect": "bump" },
{ "type": "perf", "section": "Performance Improvements", "effect": "bump" },
{ "type": "revert", "section": "Reverts", "effect": "bump" },
{ "type": "docs", "section": "Documentation", "effect": "changelog" },
{ "type": "chore", "section": "Miscellaneous Chores", "effect": "changelog" },
{ "type": "style", "section": "Styles", "effect": "hidden" },
{ "type": "refactor", "section": "Code Refactoring", "effect": "hidden" },
{ "type": "test", "section": "Tests", "effect": "hidden" },
{ "type": "build", "section": "Build System", "effect": "hidden" },
{ "type": "ci", "section": "Continuous Integration", "effect": "hidden" }
]
},
"gitRawCommitsOpts": { "to": "HEAD", "path": "." },
"commitsOpts": { "to": "HEAD", "path": "." }
}
}
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
"checks:all": "pnpm run test:lint && pnpm run test:unit && pnpm run test:e2e"
},
"devDependencies": {
"@release-it/conventional-changelog": "^12.0.2",
"@stylistic/eslint-plugin": "^5.10.0",
"@types/node": "^25.0.3",
"@types/which": "^3.0.4",
Expand Down
1 change: 1 addition & 0 deletions packages/node-edgedriver/.release-it.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"extends": "../../.release-it.json",
"git": {
"tagName": "edgedriver@${version}"
}
Expand Down
1 change: 1 addition & 0 deletions packages/node-geckodriver/.release-it.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"extends": "../../.release-it.json",
"git": {
"tagName": "geckodriver@${version}"
}
Expand Down
1 change: 1 addition & 0 deletions packages/node-safaridriver/.release-it.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"extends": "../../.release-it.json",
"git": {
"tagName": "safaridriver@${version}"
}
Expand Down
Loading
Loading