mirror of
https://github.com/logancyang/obsidian-copilot.git
synced 2026-07-22 07:50:24 +00:00
* chore(release): add prerelease agent + workflow support, harden release agent pre-flight - release.yml: accept prerelease semver in PR titles (X.Y.Z-tag.N) and pass --prerelease to gh release create so prereleases are not offered as stable updates via Obsidian's plugin browser. - .claude/agents/release.md: add a Step 0 pre-flight (clean tree, full project check, bundle size guard, manifest integrity, non-empty diff since last tag) and explicit rules against silently changing minAppVersion/isDesktopOnly or shipping with broken checks. - .claude/agents/prerelease.md: new agent. Mirrors the stable release flow but bumps via npm version prepatch/prerelease with --preid, emits prerelease-shaped semver titles, and produces testing-focused release notes with explicit "What to Test" and "How to Install" sections. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(release): make prerelease regex match full SemVer 2.0.0 grammar Previous pattern '^[0-9]+\.[0-9]+\.[0-9]+-[a-zA-Z0-9.]+$' rejected hyphens inside prerelease identifiers, so valid SemVer titles like '3.2.9-beta-hotfix.1' would fall through to the reject branch and the merged PR would silently skip publishing a GitHub Release. New pattern '^[0-9]+\.[0-9]+\.[0-9]+-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*$' allows: - hyphens within identifiers (e.g. beta-hotfix) - dot-separated multiple identifiers - single identifier (e.g. 3.2.9-alpha) And still rejects malformed cases: '3.2.9-', '3.2.9-.1', '3.2.9-x.', '3.2.9-x..y'. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(release): tighten prerelease title to require numeric counter Previous pattern accepted any SemVer prerelease suffix, including bare labels like '3.2.9-beta' or '3.2.9-feature' with no counter. That broadened the workflow's release-trigger surface beyond the documented agent contract of 'X.Y.Z-<tag>.<N>'. New pattern '^[0-9]+\.[0-9]+\.[0-9]+-[0-9A-Za-z-]+\.[0-9]+$' requires exactly one alphanumeric (hyphen-allowed) identifier followed by a numeric counter, which is what 'npm version prepatch/prerelease --preid=...' actually emits. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| ISSUE_TEMPLATE | ||
| workflows | ||
| FUNDING.yml | ||