-
Notifications
You must be signed in to change notification settings - Fork 1
Refactor workflow scheduling: separate update and publish workflows #119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: hckhanh <[email protected]>
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR refactors the CI/CD workflow to separate update checking from publishing. The update workflow now directly commits changes to main instead of creating a release PR, while the publish workflow is scheduled to run 1 hour after updates complete.
Key changes:
- Removed the PR-based release flow from
update.ymlin favor of direct commits to main - Changed
publish.ymltrigger from push-to-main to a scheduled cron job
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| .github/workflows/update.yml | Removed the changesets PR creation and auto-merge steps; workflow now commits directly to main |
| .github/workflows/publish.yml | Changed trigger from push on main branch to weekly cron schedule (1 hour after update.yml) |
Comments suppressed due to low confidence (1)
.github/workflows/update.yml:59
- Direct commits to the main branch bypass PR-based code review and CI checks that would normally run on pull requests. This could introduce breaking changes or errors without proper validation. Consider keeping the PR workflow or ensuring comprehensive CI checks run before the commit, especially given that the 'Fix' step runs code transformations that could potentially fail.
| schedule: | ||
| # Run weekly on Monday at 01:00 UTC (1 hour after update.yml) | ||
| - cron: '0 1 * * 1' |
Copilot
AI
Nov 6, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment states this runs '1 hour after update.yml', but this assumes update.yml always completes within 1 hour. If the update workflow takes longer than 1 hour or fails, the publish workflow will run on stale code. Consider using workflow_run trigger with 'workflows: [Update]' and 'types: [completed]' to ensure publish only runs after update successfully completes, or add explicit dependency checking.



Decouples the package update workflow from the release publishing workflow to allow independent execution timing.
Changes
update-packages.yml→update.ymlWorkflow Behavior
Before: Single workflow that updated packages, created release PRs, and auto-merged them in one execution.
After:
update.ymlonly pushes package updates to mainpublish.ymlruns 1 hour later via cron to handle releases (also triggered on push to main)Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.