mirror of
https://github.com/multica-ai/multica.git
synced 2026-07-05 13:29:44 +02:00
* ci(frontend): path-filter the frontend job to skip irrelevant PRs (MUL-3667) The frontend job (~6min) is the CI bottleneck and runs in full on every PR, including pure backend-only / docs-only ones that change no frontend code. Gate it on a paths filter: a 'changes' job (dorny/paths-filter) decides whether anything the frontend job validates changed; the frontend job always runs but its steps are individually gated, so on an irrelevant PR all steps skip and the job reports a genuine green — the required 'frontend' check stays satisfied with no branch-protection change, and no top-level 'paths' that would also gate the shared backend/installer jobs. Push to main always runs the full job. Also fix a stale comment: mobile-verify filters packages/core/**, not packages/core/types/**. An earlier revision of this PR also cached apps/web/.next/cache. Two back-to-back CI runs (cold vs warm) showed it cut the web build compile 4.3min -> 2.0min but did NOT move the job wall (6m13s -> 6m14s): the floor is a cluster of typecheck/test tasks (web:typecheck ~2m13s, views:test, desktop:typecheck) co-critical with web:build and bound by the 4-vCPU runner, not the web build alone. Dropped the cache since it is a no-op on its own; the real wall-clock levers (turbo remote cache / larger runner) are tracked separately. Co-authored-by: multica-agent <github@multica.ai> * ci(frontend): include .npmrc in the frontend path filter (MUL-3667) Address review: root .npmrc (shamefully-hoist=true) affects the pnpm install layout, so a .npmrc-only PR must still run the frontend job. It was missing from the filter's install-graph group, which would have made such a PR a silent skip — exactly what the filter must avoid. Co-authored-by: multica-agent <github@multica.ai> --------- Co-authored-by: J <j@multica.ai> Co-authored-by: multica-agent <github@multica.ai>