Skip to content

fix(client): re-pin @babel/core to 7.29.7 + add production-build CI check#1178

Merged
krusche merged 1 commit into
stagingfrom
fix/re-pin-babel-core-7297
Jul 3, 2026
Merged

fix(client): re-pin @babel/core to 7.29.7 + add production-build CI check#1178
krusche merged 1 commit into
stagingfrom
fix/re-pin-babel-core-7297

Conversation

@krusche

@krusche krusche commented Jul 3, 2026

Copy link
Copy Markdown
Member

Regression + CI gap. #1174 (Renovate) reverted the @babel/core 7.29.7 pin from #1173 back to 8.0.1, re-breaking the Angular 21 production build — and it passed CI green.

Why CI missed it: the PR pipeline runs Vitest unit tests + eslint + OpenAPI validation, but never ng build --configuration production (that lives only in the client Docker image, at deploy time). The Babel-8/Angular-21 failure only occurs in the prod AOT build, so a broken build passes all PR checks.

Fix (3 parts):

  1. Re-pin @babel/core7.29.7 (override + lockfile); verified ng build --configuration production succeeds.
  2. Add a build-client PR job running the production build — closes the gap that let chore(deps): update dependency @babel/core to v8 #1174 through.
  3. Renovate: cap @babel/core to <8 so it stops re-proposing the incompatible major.

This PR's own CI now includes the new production-build check.

…heck

#1174 (Renovate) bumped @babel/core back to 8.0.1, silently reverting the 7.29.7
pin from #1173 and re-breaking the Angular 21 production AOT build
("NumericLiterals must be non-negative" on PrimeNG ESM). It passed CI green
because the PR pipeline only runs Vitest unit tests + eslint + OpenAPI
validation — never the production `ng build`, which lives only in the client
Docker image (deploy time). So a broken prod build sails through PR checks.

Three changes:
- Re-pin @babel/core to the patched 7.29.7 (workspace override + lockfile).
- Add a `build-client` job to test.yml that runs `ng build --configuration
  production` on every PR — the same build the image runs — so this class of
  breakage fails the PR instead of only failing at deploy.
- Renovate: cap @babel/core to <8 so it stops re-proposing the incompatible major.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@krusche krusche requested a review from a team as a code owner July 3, 2026 11:54
Copilot AI review requested due to automatic review settings July 3, 2026 11:54
@codacy-production

codacy-production Bot commented Jul 3, 2026

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 0 complexity

Metric Results
Complexity 0 (≤ 20 complexity)

View in Codacy

🟢 Coverage ∅ diff coverage · -0.01% coverage variation

Metric Results
Coverage variation -0.01% coverage variation (-1.00%)
Diff coverage diff coverage

View coverage diff in Codacy

Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (c64c711) 15420 7585 49.19%
Head commit (059b8b9) 15420 (+0) 7584 (-1) 49.18% (-0.01%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#1178) 0 0 ∅ (not applicable)

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

Copilot AI left a comment

Copy link
Copy Markdown

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 addresses a client build regression by re-pinning @babel/core to a Babel 7 patch release compatible with Angular 21’s production (AOT) build, and by closing a CI gap that previously allowed production-build breakages to pass PR checks.

Changes:

  • Re-pin @babel/core to 7.29.7 via pnpm overrides (workspace + lockfile) to restore Angular 21 production build compatibility.
  • Add a new build-client GitHub Actions job intended to run the client production build in PR CI.
  • Update Renovate rules to prevent proposing @babel/core@8.x upgrades.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

File Description
client/pnpm-workspace.yaml Re-pins @babel/core override to 7.29.7.
client/pnpm-lock.yaml Updates lockfile and override to resolve Babel 7.29.7 consistently.
.github/workflows/test.yml Adds a build-client job to run the client production build in CI.
.github/renovate.json Caps Renovate updates for @babel/core to <8 to avoid incompatible majors.
Files not reviewed (1)
  • client/pnpm-lock.yaml: Generated file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Build client (production)
run: pnpm run build --configuration production
@krusche krusche merged commit 5acb592 into staging Jul 3, 2026
24 checks passed
@krusche krusche deleted the fix/re-pin-babel-core-7297 branch July 3, 2026 12:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants