library builder: template type errors are not reported when .angular/cache is warm
@alan-agius4 is already working on this.
Since Sep 18, 2026.
Assessment
This issue has not been assessed yet.
Description
Command
build
Is this a regression?
- Yes, this behavior used to work in the previous version
The previous version in which this bug was not present was
No response
Description
Found while tesing #34106 cc @alan-agius4
With warm .angular/cache, editing only a components external template skips template type-checking: broken template builds with exit 0 and ends up in FESM.
Cold build fails correctly and so does ng-packagr in same setup.
Worst in CI where caches are restored
Minimal Reproduction
- Library with one component using
templateUrl,strictTemplateson ng build mylibpasses and fills.angular/cache- Edit only the template to
<p>{{ nope }}</p> ng build mylibagain. gettingexit 0broken template infesm2022/mylib.mjsrm -rf .angular/cachethen build again, getting TS2339 as expected
P.S. Same on ngwr: [hidden]="notAProperty" in alert.html builds with a warm cache.
Exception or Error
Your Environment
@angular/build built from #34106 (e1fa5796) with the repo's own bazel build
Angular CLI 22.1.8,
Angular 22.1.7,
Node 24.16.0,
pnpm 11,
macOS 25.6,
14 cores,
24 GB
Anything else relevant?
library-compilation.ts only type-checks files in affectedFiles from the restored builder program, and TS doesn't know about .html, so nothing is checked.
aot-compilation.ts handles this with usingBuildInfo / includeTTC in findAffectedFiles;
porting that locally fixed it (warm + broken fails, warm + valid still passes and re-emits).
- Dominant language
- TypeScript
- Stars
- 27k
- Forks
- 11.8k
- Avg merge
- 16h 35m
- Merged PRs (30d)
- 176
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from angular/angular-cli
-
area: @angular/build gemini-triaged
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
angular/angular-cli#33955 ·
-
area: @angular/cli gemini-triaged
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
angular/angular-cli#33055 · 1 comment · 3 reactions ·
-
area: @angular/build gemini-triaged
Difficulty 4/5 3-5 days Newbie friendliness 72/100
angular/angular-cli#34137 ·
-
angular/build:library area: @angular/build gemini-triaged
angular/angular-cli#34131 · 1 assignee ·
-
angular/build:library area: @angular/build gemini-triaged
angular/angular-cli#34130 · 1 assignee ·
All issues in angular/angular-cli
Similar issues
-
Browser Waiting for: Product Owner
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
getsentry/sentry-javascript#24577 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
agilepathway/label-checker#640 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
copse-dev/agent-pane#2953 ·
-
agentic-workflows
Difficulty 1/5 Under an hour Newbie friendliness 85/100
githubnext/rig#534 ·
-
automation missing-model model-sync provider:pioneer
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
anomalyco/models.dev#7701 ·