Skip to content

Conversation

@Gvieve
Copy link
Collaborator

@Gvieve Gvieve commented Jan 29, 2026

Summary

Consolidates and optimizes multi-version SDK generation and publishing workflows. Removes redundant logic, improves testing capabilities, and clarifies automation flow.

Changes

🔄 Workflow Reorganization

  • Centralized publish/release logic in on-push-master.yml (single source of truth)
  • Removed redundant jobs from generate_publish_release.yml (now only generates + pushes)
  • Added gate job pattern for proper conditional dependency handling between versions
  • Serial publishing prevents npm registry race conditions when both versions change
  • Add version choices to publish.yml and release.yml to ensure manual workflow has selection

📝 Changelog Manager (NEW)

  • Testable, reusable Ruby class for changelog updates
  • Automatic version sorting (semantic versioning aware)
  • Smart version tracking - only updates for actually-generated versions
  • RSpec test suite with fixtures
  • Works with both manual and automated generation workflows

✅ Configuration Validator (NEW)

  • Unified validation before generation and version bumping
  • Enforces semantic versioning rules (major version locked to API version)
  • Clear error messages for troubleshooting
  • Reusable across all generation workflows

📚 Documentation & Validation

  • validate-template-sync.yml restricted to PRs only (no master push trigger)
  • All template updates completed before migration commit
  • Workflow documentation updated throughout docs/

🏷️ Workflow Rename

  • generate_publish_release.ymlopenapi-generate-and-push.yml
  • Clarifies automation source (OpenAPI repo dispatch, not manual)
  • Event type unchanged (generate_publish_release) - no impact on openapi repo integration

Benefits

✅ Single publish/release orchestration point
✅ No redundant publish calls
✅ Testable, maintainable changelog logic
✅ Works correctly for single or multi-version updates
✅ Clearer workflow intent and automation flow
✅ Improved error handling and validation

@Gvieve Gvieve self-assigned this Jan 29, 2026
@Gvieve Gvieve added enhancement New feature or request documentation Improvements or additions to documentation labels Jan 29, 2026
@Gvieve Gvieve merged commit ecc8580 into master Jan 29, 2026
6 checks passed
@Gvieve Gvieve deleted the gn/fix-all-the-things branch January 29, 2026 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants