release: v0.0.22 (#310)

This commit is contained in:
Ben Senescu 2026-06-28 20:12:29 -04:00 committed by GitHub
parent 1dabbc88a6
commit e9871bde8d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 19 additions and 2 deletions

View File

@ -16,7 +16,8 @@ Cut a release for this repo end to end. The deliverables are a version bump in `
- Find the latest tag: `git tag --sort=-creatordate | head -1`. Verify the branch is up to date with `origin/main` (`git fetch origin main && git log HEAD..origin/main --oneline` should be empty; flag it if not).
- List commits: `git log <last-tag>..HEAD --oneline`. You can also run `pnpm release:notes` for a generated skeleton.
- For each commit, fetch the PR body (`gh pr view <num> --json title,body`) — squash-commit subjects can be stale. Verify claims against the final code when a PR body and commit subject disagree (features get reverted before merge).
- For each commit, fetch the PR body and author (`gh pr view <num> --repo every-app/open-seo --json title,body,author`) — squash-commit subjects can be stale. The `(#NN)` in commit subjects references the **public** repo (`every-app/open-seo`), so look authors up there, not on `origin`. Verify claims against the final code when a PR body and commit subject disagree (features get reverted before merge).
- Record the PR author's GitHub handle alongside each change so the bullet can credit them.
## 3. Draft the notes
@ -25,6 +26,7 @@ Write `release-notes/v<version>.md` matching the style of the 23 most recent
- One-sentence summary line at the top (no heading). Lead with the biggest user-facing win, stated as the outcome.
- `## What's new`, `## Improved`, `## Fixed` — include a section only when it has content.
- Imperative bullets ("Add…", "Improve…", "Cut…"), concise, user-facing.
- **Credit the contributor.** End each bullet with `— thanks @handle`, using the PR author's GitHub handle, for the feature or fix they contributed. When a bullet has sub-bullets, put the credit at the end of the top-level bullet (the feature), not on the sub-bullet. Skip the credit for the repo maintainer's own PRs (`bensenescu`) — only credit outside contributors. If one bullet folds in work from multiple contributors, thank each (`— thanks @a, @b`).
- **Be punchy — lead with the impact, not the mechanism.** The top-level bullet is the outcome the user gets ("Reduce rank tracking costs by ~3x"); push the how into one brief sub-bullet beneath it. Don't open a bullet with the implementation ("Run scheduled checks through DataForSEO's task queue and…") — that buries the lead.
- End with: `Full Changelog: https://github.com/every-app/open-seo/compare/v<prev>...v<version>`

View File

@ -2,7 +2,7 @@
"name": "open-seo",
"private": true,
"sideEffects": false,
"version": "0.0.21",
"version": "0.0.22",
"type": "module",
"packageManager": "pnpm@10.30.1",
"scripts": {

15
release-notes/v0.0.22.md Normal file
View File

@ -0,0 +1,15 @@
This release adds a paginated backlinks-profile MCP tool and gives rank tracking monthly schedules, explicit language selection, and a searchable country picker.
## What's new
- Add a `get_backlinks_profile` MCP tool so AI agents can pull a domain's full backlink list, not just the summary. — thanks @mvanhorn
- Returns per-link rows (linking URL, anchor, dofollow/nofollow, authority/spam signals, new/lost/broken status) in a paginated envelope, with the same filters and sorts the web UI offers.
- Add a monthly rank tracking schedule that runs at the end of each month. — thanks @Jalendar10
- Add explicit language selection to rank tracking, so you can override a country's default language. The picker lists only the languages DataForSEO supports for the selected country. — thanks @Devamol10
## Improved
- Add search and device/country filters to the Tracked Domains list so you can find a specific tracker among many. — thanks @mvanhorn
- Replace the country dropdown with a searchable combobox you can filter by typing. — thanks @Fishlex0
Full Changelog: https://github.com/every-app/open-seo/compare/v0.0.21...v0.0.22