Repository navigation
ci: run perf and website deploy when packages/core changes - #210
Conversation
perf.yml builds @gitwand/core before the desktop parity probe and the website depends on @gitwand/core (workspace:*), but neither workflow triggered on packages/core/**.
Warns on PRs when a workflow's on.paths list no longer covers the workspace packages it builds. Warning only; never fails the build.
This reverts commit 9d0b74e.
devlint
left a comment
There was a problem hiding this comment.
Thanks — the path additions are right: perf.yml already builds @gitwand/core before the parity probe, and the website imports it.
I pushed two commits to this branch: a revert of the path-filter-audit workflow (we keep third-party actions out of CI, and @v1 is a mutable ref), and a one-line update of the comment at the top of perf.yml so it mentions packages/core/. Both workflow files parse; the remaining diff is the original three-line fix.
|
Thanks @MarkAlex1234 — good catch on the path filters: core changes now run the perf check and redeploy the site. We kept the three-line fix and left the audit workflow out (we avoid third-party actions in CI), as noted in the review. Shipped with v3.12.0, released today. 🙏 |
Commit 1 (the fix). Two workflows depend on
@gitwand/corebut don't watchpackages/core/**:perf.ymlexplicitly runspnpm --filter @gitwand/core run buildbefore the desktop parity probe, andapps/desktopdepends on@gitwand/core(workspace:*). But it only triggers onapps/desktop/**, so a resolver change in core, the thing most likely to move performance, never runs the perf check.deploy-website.yml: the website depends on@gitwand/core(workspace:*) and imports it in.vitepress/config.tsandtheme/tools/index.ts. A core change merged tomaindoesn't redeploy the site until something underwebsite/changes.This adds
packages/core/**toperf.yml(push and pull_request) and todeploy-website.yml(push). Three lines.Commit 2 (optional). This adds
.github/workflows/path-filter-audit.yml, a smallpull_requestjob that warns when a workflow'spaths:stops covering the workspace packages its app depends on. It keeps these lists from drifting again. It only annotates and never fails the build; drop the commit if you'd rather not add a workflow.On
maintoday it reports exactly these three gaps, for example: "packages/core/**is missing from on.pull_request.paths: @gitwand/desktop depends on@gitwand/core, so a change there skips this workflow." With commit 1 applied, it reports none.Disclosure: the audit is a GitHub Action I maintain, dynamic-monorepo.
Verification: all workflow YAML parses, and I ran the audit locally (
npx github:Continuous-Actions/dynamic-monorepo audit) before and after: 3 findings, then 0.