mirror of
https://github.com/browseros-ai/BrowserOS.git
synced 2026-05-13 15:46:22 +00:00
* feat: create GitHub release with changelog on agent-sdk publish After publishing to npm, the workflow now: - Tags the commit as agent-sdk-v<version> - Generates release notes from commits that modified the agent-sdk directory since the last agent-sdk release tag - Creates a GitHub release with those notes First release will show "Initial release" since no previous tag exists. * feat: update CHANGELOG.md on agent-sdk release Add a CHANGELOG.md for @browseros-ai/agent-sdk and update the release workflow to prepend a versioned entry with the release notes before creating the GitHub release. The changelog is committed to main automatically. * fix: address review issues in agent-sdk release workflow - Add explicit permissions: contents: write - Replace sed with head/tail for safe CHANGELOG insertion (fixes double-quote and backslash corruption in commit messages) - Handle empty release notes with "No notable changes." fallback - Make git tag idempotent for workflow reruns (2>/dev/null || true) * fix: use PR with auto-merge for changelog updates Direct push to main fails due to branch protection requiring PRs. Instead, create a branch, open a PR, and auto-merge via squash. * feat: add contributors and PR links to agent-sdk release notes Release notes now include PR numbers (linked automatically by GitHub), GitHub usernames for each commit author, and a contributors section at the bottom. All scoped to commits that modified the agent-sdk path. * fix: reorder release steps and fix tag/idempotency issues - Capture release SHA before any branching so the tag always points to the main commit that was built and published to npm - Reorder: generate notes → publish → tag/release → changelog PR (changelog is lowest-stakes, runs last) - Make tag push and release create idempotent for safe re-runs (fall back to gh release edit if release already exists) - Add || true to gh pr merge --auto in case auto-merge is not enabled - Explicit git checkout main before creating changelog branch * fix: explicit error handling for tag/release and contributor dedup - Replace silent || true guards with explicit checks that log what's happening (tag exists, remote tag exists, release exists) so errors are visible instead of swallowed - Fix contributor dedup: use grep -qw (word match) instead of grep -qF (substring match) so "dan" isn't excluded when "dansmith" exists * fix: exclude current version tag when finding previous release On re-runs, the current version's tag already exists on the remote, so PREV_TAG resolves to it and git log produces empty output. Filter it out so release notes are generated against the actual previous version. * ci: prevent concurrent agent-sdk release runs Add concurrency group so multiple dispatches queue instead of racing on the same tag/release/PR.