Conversation
* Adopt the Hub-Hosted Validate and Release Chain Tasks Replace validate-task.yml, build-release-task.yml, build-executable-task.yml, build-docker-task.yml, and get-version-task.yml with caller stubs reaching ptr727/ProjectTemplate's hub-hosted reusable workflows, pinned to the 2.0.352 release, per docs/reusable-workflows.md "Adopting the Gates" and "Adopting the Release Chain". test-pull-request.yml moves from a push-all-branches trigger to the hub's release-with-smoke shape (pull_request plus a paths filter). publish-release.yml gains a plan job from publish-plan-task.yml, keeping the existing dispatch-plus-schedule trigger and publish behavior. No repo-specific hook is needed: the vanilla executable and Docker layout matches the hub defaults through inputs alone. Updates the OPERATIONS.md sentence describing the deleted validate-task.yml as hub-owned. * Fetch Full History in the Changed-Targets Filter Job A workflow_dispatch run of test-pull-request.yml has no pull request to read the changed-files list from, so dorny/paths-filter falls back to a local diff against the default branch, which a shallow checkout could starve of a common ancestor. Raised by the Copilot review on PR #55.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@## main #56 +/- ##
=======================================
Coverage 43.37% 43.37% =======================================
Files 28 28 Lines 3896 3896 Branches 306 306 =======================================
Hits 1690 1690 Misses 2154 2154 Partials 52 52 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Promotes develop to main while migrating this repo’s CI and release workflows to thin caller stubs that invoke the hub-hosted reusable workflows in ptr727/ProjectTemplate (pinned to 2.0.352), deleting the previously carried task workflows.
Changes:
- Replace local reusable workflow implementations with calls to hub-hosted
validate-task.yml,publish-plan-task.yml, andbuild-release-task.yml. - Add a
changespaths-filter gate so workflow-only changes can skip the smoke build while still running validation. - Update operations documentation to reflect the hub-hosted workflow adoption and delete the five carried task workflow files.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| OPERATIONS.md | Updates repo operations docs to reflect hub-hosted CI/release workflows. |
| .github/workflows/test-pull-request.yml | Switches PR CI to hub-hosted validate + smoke build chain, with paths-filter gating. |
| .github/workflows/publish-release.yml | Switches release publishing to hub-hosted plan + validate + build-release chain. |
| .github/workflows/validate-task.yml | Deleted (hub-hosted reusable workflow used instead). |
| .github/workflows/get-version-task.yml | Deleted (hub-hosted release chain used instead). |
| .github/workflows/build-release-task.yml | Deleted (hub-hosted release chain used instead). |
| .github/workflows/build-executable-task.yml | Deleted (hub-hosted build hooks used instead). |
| .github/workflows/build-docker-task.yml | Deleted (hub-hosted release chain used instead). |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.
Suppressed comments (1)
.github/workflows/publish-release.yml:49
- This workflow doesn’t set workflow-level least-privilege permissions, so GITHUB_TOKEN permissions fall back to repository defaults. Other workflows in this repo explicitly set
permissions: {}and then grant only the required job permissions; doing the same here makes the token scope explicit and avoids accidental over-privilege if repo defaults change.
plan:
name: Plan release job
uses: ptr727/ProjectTemplate/.github/workflows/publish-plan-task.yml@0b07a59d7c65d07d8df275a96deaf2e06cbefd51 # 2.0.352
with:
event_name: ${{ github.event_name }}
ptr727
commented
Aug 16, 2026
Answering the suppressed finding, "Suppressed comments (1)", from the round on |
Uh oh!
There was an error while loading. Please reload this page.
… Pilot (#778) ## What - `.github/actions/build-executable-default/action.yml`: the release archive is named for the project file's stem (`./PhotoCleaner/PhotoCleaner.csproj` gives `PhotoCleaner.7z`) unless the new `asset-name` input names it, and `build-release-task.yml` exposes that as `executable_asset_name`. PhotoCleaner's first publish through the task (run 31977092102, release 1.1.11) attached `Console.7z` where its own leaf had attached `PhotoCleaner.7z`, the one regression the pilot found. PlexCleaner names its archive the same way, so the derived default is right for both known callers. - `catalog/snippets/workflows/publish-release.yml` and the doc's byte-identical stub: `permissions: {}` at workflow level, `contents: read` on the `validate` job, the publish job's grants unchanged. These are the four suppressed findings raised on #775 after its clean round. - `docs/reusable-workflows.md` Rollout: PhotoCleaner ticked as the stage 2 pilot (ptr727/PhotoCleaner#55, #56, the validate default-hook path observed) and the stage 4 pilot (smoke run 31974932749 and publish run 31977092102, release 1.1.11), a proof item for the asset-name fix on the next PhotoCleaner release. - `reports/workflow-reuse.md` regenerated: PhotoCleaner 8 workflow files to 3, all three callers, fleet callers 1 to 3. ## Verification actionlint, prose gate, repo gate, audit self-test, unit tests, markdownlint. The asset-name change is proven by the next PhotoCleaner release, recorded as a proof item. Refs ptr727/PhotoCleaner#55, ptr727/PhotoCleaner#56.
Promote
developtomain, carrying one change:test-pull-request.ymlandpublish-release.ymlbecome caller stubs of the hub'svalidate-task.yml,publish-plan-task.ymlandbuild-release-task.ymlat hub release2.0.352, and the five carried task files are deleted. No repo-specific hook was needed, every value maps to a task input. Its own CI run (31974932749) is the live proof of the smoke path and the validate default-hook path.After this merges, a dispatch of
publish-release.ymlonmainis the first real publish through the hub task for this repo: the executable assets attach to the GitHub release and the Docker image pushes, both through the hub defaults. That run ticks this repo's stage-2 and stage-4 adoption in the hub tracker. No issue closes on this promotion.