Loading...
Loading...
Automated jaan-to release preparation with validation, docs sync, version bump, and PR creation
npx skill4agent add parhumm/jaan-to jaan-releaseAutomate jaan-to release preparation from validation to PR creation.
vX.Y.Z"release summary".claude/skills/jaan-release/LEARN.mddev# Check 1-10: Advisory compliance (warnings OK)
bash .claude/scripts/validate-compliance.sh
# Check 11-16: Critical plugin standards (must pass)
bash .claude/scripts/validate-plugin-standards.sh
# Security standards (must pass — no blocking errors)
bash scripts/validate-security.sh
# Check git state, docs sync, version detection
bash .claude/scripts/validate-release-readiness.shSUGGESTED_VERSIONPre-Release Validation Report
═══════════════════════════════════════════════════════════
## Compliance Checks (10/10)
✓ Check 1: Skill Alignment (all skills have two-phase + HARD STOP)
✓ Check 2: Generic Applicability (no user-specific refs)
✓ Check 3: Multi-Stack Coverage (Node.js/PHP/Go)
...
✓ Check 10: Security Review (no dangerous patterns)
## Plugin Standards (6/6)
✓ Check 11: Plugin Manifests (JSON valid, versions match)
✓ Check 12: Hooks Validation (4 hooks defined)
✓ Check 13: Skills Structure (40 skills, all have frontmatter)
✓ Check 14: Context Files (all have headers)
✓ Check 15: Output Structure (0 errors)
✓ Check 16: Permission Safety (no dangerous patterns)
## Security Standards (4/4)
✓ Section A: Skill Permission Safety (no bare Write/Bash/Edit)
✓ Section B: Shell Script Safety (set -euo pipefail, no eval/curl|sh)
✓ Section C: Hook Safety (static paths, no user input)
✓ Section D: Dangerous Patterns (no exec(), no rm -rf /)
## Git State (3/3)
✓ Working tree clean (0 uncommitted changes)
✓ On dev branch (up to date with origin/dev)
✓ Remotes fetched
## Documentation (2/2)
✓ Sync check: 0 stale files
✓ README indexes: all up to date
## Release Content (3/3)
✓ [Unreleased] section: 5 entries (3 Added, 1 Changed, 1 Fixed)
✓ CHANGELOG format: Keep a Changelog ✓
✓ Suggested version: v6.3.0 (minor bump - new features added)
───────────────────────────────────────────────────────────────
✅ All 24 checks passed. Ready for Phase 2.
───────────────────────────────────────────────────────────────git statusgit stashValidation complete. All 24 checks passed.
Suggested version: v6.3.0 (minor bump)
Proceed to Phase 2 (Documentation & Version Prep)? [y/n/abort]ynabort/jaan-to:pm-roadmap-update sync✓ Roadmap synced: 3 tasks marked done/jaan-to:docs-update --fix✓ Documentation updated: 2 files fixed, 0 missingbash .claude/scripts/update-website.shWebsite Update Summary
────────────────────────────────────────────────────────────
✓ Version badge: v6.3.0
✓ Skill counts: 40 skills (3 locations)
✓ Role count: 11 roles (2 locations)
⚠ MANUAL REVIEW REQUIRED
Next steps:
1. Review catalog changes above
2. Edit website/index.html to add/remove skills
3. Preview: open website/index.html in browserynmanual/jaan-to:release-iterate-changelog auto-generate✓ CHANGELOG generated: 5 entries categorizedgit status --shortdocs/roadmap/roadmap.mddocs/**/*.mdwebsite/index.htmlCHANGELOG.mdDocumentation Sync Complete
───────────────────────────
Modified files:
M CHANGELOG.md
M docs/roadmap/roadmap.md
M website/index.html
M docs/guides/README.md
Preview changes? [y/n/proceed]ygit diffnproceedabortgit restore CHANGELOG.md docs/ website/index.htmlv6.3.0SUGGESTED_VERSIONvX.Y.Zgit tag -l v6.3.0/jaan-to:pm-roadmap-update release v6.3.0 "Add jaan-release skill"[Unreleased][6.3.0].claude-plugin/plugin.json"version": "6.3.0".claude-plugin/marketplace.jsonrelease: 6.3.0 — Add jaan-release skillv6.3.0✓ Version bumped: v6.2.0 → v6.3.0
✓ Files updated: CHANGELOG.md, roadmap.md, plugin.json (×3)
✓ Commit created: abc1234
✓ Tag created: v6.3.0 (local)# Check version consistency
V1=$(jq -r '.version' .claude-plugin/plugin.json)
V2=$(jq -r '.version' .claude-plugin/marketplace.json)
V3=$(jq -r '.plugins[0].version' .claude-plugin/marketplace.json)
if [[ "$V1" == "$V2" ]] && [[ "$V1" == "$V3" ]]; then
echo "✓ Version consistency: $V1"
else
echo "✗ Version mismatch (CI will fail)"
exit 1
fi
# Validate skill description budget
bash scripts/validate-skills.sh || exit 1
# Security standards validation
bash scripts/validate-security.sh || exit 1
echo "✓ Security standards passed"
# Build docs site (verify no build errors)
cd website/docs && npm ci && npm run build && cd ../..
echo "✓ Docs site builds successfully"Version Bump Complete
─────────────────────
Version: 6.3.0 ✓
Files Updated:
- CHANGELOG.md (new [6.3.0] section with date)
- docs/roadmap/roadmap.md (version section added)
- .claude-plugin/plugin.json (version: "6.3.0")
- .claude-plugin/marketplace.json (version: "6.3.0" × 2)
Git State:
- Commit: abc1234 (release: 6.3.0 — Add jaan-release skill)
- Tag: v6.3.0 (local, not pushed)
CI Simulation: ✓ PASS (all checks)
Push to origin and create PR? [y/n/abort]ynabortgit tag -d v6.3.0 # Delete local tag
git reset --soft HEAD~1 # Undo commit, keep changes staged
# OR
git reset --hard HEAD~1 # Undo commit and discard all changesgit push origin dev --tags✓ Pushed to origin/dev
✓ Pushed tag v6.3.0gh auth statusgh pr create --base main \
--title "release: 6.3.0 — Add jaan-release skill" \
--body "$(cat <<'EOF'
## Release Summary
Add jaan-release skill for automated release preparation.
## Changes This Release
### Added
- jaan-release skill for release automation
- Compliance validation (10-item checklist)
- Documentation sync automation
### Changed
- (list from CHANGELOG [6.3.0] section)
### Fixed
- (list from CHANGELOG [6.3.0] section)
## Pre-Merge Checklist
- [x] All 24 validation checks passed locally
- [x] Security standards validation passed
- [x] Documentation synced and up to date
- [x] CHANGELOG entry complete
- [x] Version bumped in all 3 locations
- [x] CI simulation passed locally
- [ ] CI checks pass on GitHub (wait for workflow)
- [ ] Human review approved
## Post-Merge Steps
After merging this PR:
1. **Tag on main**: \`git checkout main && git pull && git tag v6.3.0 && git push origin main --tags\`
2. **Create release**: \`gh release create v6.3.0 --title "v6.3.0" --notes-file CHANGELOG.md\`
3. **Sync dev**: \`git checkout dev && git merge main && git push\`
4. **Bump dev**: \`./scripts/bump-version.sh 6.4.0 && git commit -am "chore: bump to 6.4.0" && git push\`
5. **Acknowledge issues**: For each closed issue in this release, run \`/jaan-issue-solve #{issue_number}\`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"✓ PR created: https://github.com/parhumm/jaan-to/pull/123gh pr checks --watchCI Checks:
- release-check.yml: ✓ PASSED (2m 15s)
- deploy-docs.yml: ⏳ Running...gh run view <run-id> --logPR Created Successfully
───────────────────────
URL: https://github.com/parhumm/jaan-to/pull/123
Status: Waiting for CI checks
CI Checks:
- release-check.yml: ✓ PASSED
- deploy-docs.yml: ✓ PASSED
Next Steps (Manual):
1. Review PR at URL above
2. Approve and merge PR (via GitHub UI or gh pr merge)
3. Follow "Post-Merge Steps" in PR description
SKILL COMPLETE - Human merge required./jaan-issue-solve.claude/scripts/gh auth logingit restore <files>git tag -d v6.3.0 && git reset --hard HEAD~1gh pr close <PR> && git push origin :v6.3.0.claude/skills/jaan-release/skills/.claude/scripts/