Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3878 commits
Select commit Hold shift + click to select a range
8975b43
docs: add NG0991 error page and document rxResource's completion cont…
arturovt Aug 19, 2026
b5ce15c
refactor(core): use native `Promise.withResolvers()` in tests
MeAkib Jul 20, 2026
a92f605
refactor(docs-infra): remove two more unreferenced guide images
erkamyaman Aug 31, 2026
00ec655
refactor(devtools): fix signal details UI
hawkgs Sep 1, 2026
b70edd2
fix(docs-infra): parse docs-callout attributes correctly
erkamyaman Aug 31, 2026
faafd18
fix(compiler-cli): check uninvoked signal aliases in extended diagnostic
JeanMeche Aug 30, 2026
91a2bf8
feat(core): support annotations in WebMCP tool declarations
dgp1130 Sep 1, 2026
6e299da
feat(forms): hard-code `readOnlyHint` and `untrustedContentHint` for …
dgp1130 Sep 1, 2026
9f44090
refactor(core): remove old `deferredImports` structure
JeanMeche Aug 28, 2026
05c4d5a
feat(core): add utility for testing directives
crisbeto Aug 28, 2026
1d9e445
fix(vscode-extension): handle escaped delimiters in inline template a…
aparzi Aug 31, 2026
c03e872
docs: highlight the search tutorial @for block as Angular
erkamyaman Sep 1, 2026
f44bf0f
ci: move `packages/private` under `fw-general`
JeanMeche Sep 1, 2026
124bf44
release: cut the zone.js-0.16.3 release
mattrbeck Sep 2, 2026
b8a750f
build: update dependency bazel to v8.8.0
angular-robot Sep 2, 2026
6fdb7f0
build: update dependency mocha to v12
angular-robot Sep 2, 2026
431b170
build: narrow the preview exclusions for two example apps
erkamyaman Sep 2, 2026
90b9e08
fix(docs-infra): keep the collapsed code state when a code block is r…
erkamyaman Sep 1, 2026
45148da
docs: correct openFiles entries that point at missing files
erkamyaman Sep 2, 2026
d7af4b5
docs: decouple selection from aria toolbar examples and guide
ok7sai Sep 2, 2026
de91d10
docs: update cross-repo adev docs
angular-robot Sep 2, 2026
a66fd64
build: update cross-repo angular dependencies
angular-robot Sep 2, 2026
cd77117
build(zone.js): fix release PR URL and filter changelog to zone.js scope
atscott Sep 2, 2026
af26a8c
fix(router): avoid view transitions when the user agent provides one
SkyZeroZx Sep 2, 2026
7137a41
feat(router): stabilize auto cleanup injectors feature
atscott Aug 27, 2026
7168bed
fix(core): validate SVG animation attributes outside the SVG namespace
SkyZeroZx Aug 31, 2026
58d536b
fix(core): don't fail NgModule checks for a pipe that extends a base …
arturovt Sep 1, 2026
69c8730
fix(vscode-extension): prevent JSDoc link provider injection
SkyZeroZx Aug 18, 2026
502fa13
fix(docs-infra): ignore external links when mapping navigation items …
mattrbeck Sep 3, 2026
e4b8822
docs: release notes for the v22.1.5 release
mattrbeck Sep 3, 2026
81c3f3a
release: cut the v22.2.0-next.5 release
mattrbeck Sep 3, 2026
9896055
build: update mcp-b webmcp dependencies to v5
angular-robot Aug 26, 2026
caeab59
refactor(compiler): emit any as type argument for ɵɵInjectableDeclara…
atscott Aug 26, 2026
3064f3f
feat(router): expose router resources in public API
atscott Sep 4, 2026
74c1716
refactor(compiler-cli): index pipes in template expressions
atscott Sep 2, 2026
26afa31
fix(docs-infra): correct example viewer tab state and line numbering
erkamyaman Sep 2, 2026
bae170d
build: update bazel dependencies
angular-robot Sep 3, 2026
70756b5
fix(core): apply SkipSelf to only the starting node in embedded views
lazerg Sep 3, 2026
3481b15
docs: correct filename labels on code examples
erkamyaman Sep 4, 2026
3dfc855
test(devtools): run the orphaned supported-apis spec
erkamyaman Sep 4, 2026
318fefa
test(forms): Add utility functions and update test files to use them
SkyZeroZx Sep 1, 2026
063eda2
test(core): replace act with actAsync
SkyZeroZx Sep 1, 2026
9a58353
build: update cross-repo angular dependencies
angular-robot Sep 4, 2026
8227e5c
fix(router): keep detached route subtree contexts isolated and intact
arturovt Jun 28, 2026
f0a271c
fix(compiler-cli): do not flag callable objects with zero parameters …
JeanMeche Aug 14, 2026
f6afb80
feat(core): add ErrorBoundary programmatic APIs (#70463)
alxhub Mar 17, 2026
54ed62d
refactor(core): implement `@boundary` runtime primitives and AST node…
alxhub Mar 18, 2026
f7597cb
refactor(compiler): template type-checking support for `@boundary` (#…
alxhub Apr 20, 2026
f4a5650
feat(language-service): add support for @boundary blocks (#70463)
alxhub Apr 10, 2026
d470afa
refactor(platform-server): ensure error boundaries work with ssr/hydr…
JeanMeche Aug 28, 2026
bd9b45b
feat(core): allow reading `Injector` from a view or content query
arturovt Sep 3, 2026
5afdd98
fix(docs-infra): remove space after decorator symbol
SkyZeroZx Sep 4, 2026
0029c3b
docs: use a supported alert level for the cross-field validation note
erkamyaman Sep 3, 2026
635ef1b
refactor(devtools): contain hydration overlays functionality on the be
hawkgs Sep 4, 2026
d6d51a0
test(devtools): run the orphaned app component spec
erkamyaman Sep 4, 2026
77e2a2a
refactor(core): expose onDestroy in DirectiveFixture
crisbeto Sep 7, 2026
0bdbbcf
fix(docs-infra): only read a deprecation version from the start of th…
erkamyaman Sep 5, 2026
c235ece
test(forms): remove redundant change detection configuration
SkyZeroZx Sep 5, 2026
d3b0bb1
test(docs-infra): run the orphaned shared-docs pipes specs
erkamyaman Sep 5, 2026
b0cda27
refactor(docs-infra): validate api/cdk and api/aria links
erkamyaman Sep 5, 2026
b7d4327
fix(docs-infra): keep an explicit theme choice when the OS scheme cha…
erkamyaman Sep 5, 2026
49a797f
test(core): remove redundant change detection configuration
SkyZeroZx Sep 6, 2026
1bc7e3c
refactor(core): use native `Promise.withResolvers()` in remaining tests
MeAkib Sep 6, 2026
e80c91b
docs: render the unsupported version range as an alert
MeAkib Sep 7, 2026
93f17e0
docs: fix the docregion marker in the apache config example
erkamyaman Sep 7, 2026
a959ced
build: update pnpm to v12
angular-robot Sep 7, 2026
d3ccf5c
docs: fix the visibleLines range on the ngFor tutorial step
erkamyaman Sep 7, 2026
4043800
fix(docs-infra): recognise an alert that follows prose in the same pa…
erkamyaman Sep 7, 2026
f53b3b6
docs: add CommonModule guidance to AI best practices
MeAkib Sep 7, 2026
8037e4a
docs(docs-infra): correct stale paths and routes in the tutorials README
erkamyaman Sep 7, 2026
9021e27
docs: use code block headers for filenames
SkyZeroZx Sep 7, 2026
9b80d4c
fix(compiler): namespace `@property` declarations
crisbeto Sep 9, 2026
8afd85c
test(forms): migrate integration tests to zoneless scheduling
SkyZeroZx Sep 9, 2026
094bce9
fix(router): determine blocking state solely by resource loading status
atscott Sep 8, 2026
d0a748c
docs(animations): stop the query() usage notes truncating at a code s…
erkamyaman Sep 8, 2026
199da47
build: update dependency node to v24.21.0
angular-robot Sep 9, 2026
bc3a6cd
fix(platform-server): avoid sourcemap corruption during domino path s…
alan-agius4 Sep 9, 2026
8414f90
build: update cross-repo angular dependencies
angular-robot Sep 9, 2026
bc0fd20
build: update dependency vitest to v5
angular-robot Sep 7, 2026
25317c3
build: update dependency cypress to v16
angular-robot Sep 4, 2026
2c71e88
docs: update cross-repo adev docs
angular-robot Sep 9, 2026
25228d0
test: fix failing boundary test
crisbeto Sep 9, 2026
679c50d
refactor(router): Remove ActivatedRouteSnapshot from resourceContext
atscott Sep 9, 2026
b6517a6
build: resolve pnpm 12 breakages
crisbeto Sep 9, 2026
c62641f
docs: release notes for the v21.2.23 release
crisbeto Sep 9, 2026
018bec1
docs: release notes for the v20.3.31 release
crisbeto Sep 9, 2026
2f3afc9
docs: release notes for the v22.1.6 release
crisbeto Sep 9, 2026
0625c1d
release: cut the v22.2.0-next.6 release
crisbeto Sep 9, 2026
a410e13
release: cut the v22.2.0-next.7 release
crisbeto Sep 9, 2026
ef09d10
fix(devtools): safely handle foreign root elements in feature detection
eduhmc Sep 2, 2026
cea6896
fix(core): return null when getDirectiveMetadata is called with null …
eduhmc Sep 2, 2026
947f3ff
test(core): reduce fakeAsync usage in tests
SkyZeroZx Sep 9, 2026
8576f16
fix(docs-infra): highlight home page code for the resolved theme
erkamyaman Sep 6, 2026
593a5df
build: make webmcp-types sources genrule cross-platform
alan-agius4 Sep 10, 2026
f557ead
build: add @modelcontextprotocol/server devDependency and vendor license
alan-agius4 Sep 10, 2026
96dbae5
refactor(core): expose `consequentialHint` annotation
dgp1130 Sep 9, 2026
8ca879e
refactor(forms): expose `consequentialHint` annotation
dgp1130 Sep 9, 2026
4b3f8c2
docs: update cross-repo adev docs
angular-robot Sep 10, 2026
14dbbf9
fix(compiler): wrap `@for` collection expression before appending non…
atscott Sep 9, 2026
61b353e
fix(docs-infra): restore the xlf regions on the i18n guides
erkamyaman Sep 5, 2026
9073469
fix(docs-infra): escape the code example header
erkamyaman Sep 5, 2026
ceba448
build: update pnpm/action-setup action to v6.1.0
angular-robot Sep 10, 2026
a958d7f
test(router): remove redundant change detection configuration
SkyZeroZx Sep 10, 2026
4380e68
docs(router): update scroll restoration example
SkyZeroZx Sep 10, 2026
9e5ae4b
test(core): remove redundant change detection configuration
SkyZeroZx Sep 10, 2026
9090a75
refactor(compiler-cli): relax nullish coalescing non nullable diagnos…
JeanMeche Sep 9, 2026
b9fb456
docs(forms): close the unterminated code fences in the compatForm docs
erkamyaman Sep 9, 2026
29f9dd5
refactor(devtools): update angular optimization plugin for JavaScript…
alan-agius4 Sep 10, 2026
e205075
docs: add error boundaries entries
JeanMeche Aug 31, 2026
ae33a5f
test(core): fix view injector integration spec
JeanMeche Sep 10, 2026
37ca679
Revert "fix(compiler): wrap `@for` collection expression before appen…
atscott Sep 11, 2026
11a66f2
docs: update cross-repo adev docs
angular-robot Sep 11, 2026
9918c81
build: update @angular/ssr and add beasties dependency for adev and d…
alan-agius4 Sep 11, 2026
b9cbc5f
fix(docs-infra): match card grid row gap to column gap
erkamyaman Sep 11, 2026
01d091b
fix(docs-infra): raise SSR fetch limit so the menubar guide prerenders
erkamyaman Sep 11, 2026
d0ed76c
docs: fix the broken housing location template in the first-app tutorial
erkamyaman Sep 11, 2026
a823323
fix(core): update FakeNavigation to match WHATWG HTML spec
atscott Sep 11, 2026
2c6c67b
fix(router): maintain frozen state on rollback until resource loading…
atscott Sep 11, 2026
1b7dcc8
ci: stop passing preview gating inputs to adev preview build
josephperrott Sep 11, 2026
c097c01
docs: import bootstrapApplication from platform-browser in the CSP ex…
erkamyaman Sep 11, 2026
2dcdf9a
fix(router): mark router_resource module-level symbols as side-effect…
atscott Sep 11, 2026
467b37b
docs(forms): document what required() considers empty
MeAkib Sep 11, 2026
f2cf65a
fix(vscode-extension): handle template literals when detecting suppor…
aparzi Sep 11, 2026
fc2f6fd
docs: stop the disabled aria toolbar radio group from changing selection
erkamyaman Sep 11, 2026
c60c41e
test(core): reduce fakeAsync usage in animation tests
SkyZeroZx Sep 9, 2026
fe94aae
refactor(devtools): introduce a global backend config
hawkgs Sep 16, 2026
91c2d63
build: switch integration tests away from protractor
crisbeto Sep 9, 2026
ffa6091
build: update utility scripts to account for pnpm 12
crisbeto Sep 16, 2026
11838e4
fix(devtools): validate message sender and detach debugger in Breakpo…
eduhmc Sep 8, 2026
e02c4d8
fix(devtools): harden message sender validation and expand property s…
eduhmc Sep 14, 2026
49594c6
docs: fix malformed code block metadata
erkamyaman Sep 15, 2026
7bbe263
fix(docs-infra): reject malformed code block metadata
erkamyaman Sep 15, 2026
1750003
fix(devtools): make tab buttons visually accessible on small viewports
hawkgs Sep 16, 2026
152292b
docs: close the heading tag in the ng-template output example
erkamyaman Sep 15, 2026
06ffb35
release: bump Angular DevTools version to 1.21.1
alan-agius4 Sep 16, 2026
83d2ef3
docs: add the missing heading to the DevTools injectors guide
erkamyaman Sep 13, 2026
bf343ef
docs: clarify SSR response size limit with fetch integrity
SkyZeroZx Sep 14, 2026
e9957f7
docs: fix the broken Unicode locale ID link in the i18n guide
erkamyaman Sep 12, 2026
e2d69fa
fix(docs-infra): use member names as decorator member card ids
erkamyaman Sep 13, 2026
0de811d
docs: show the toggle members in the i18n conditional example
erkamyaman Sep 12, 2026
45e314f
refactor(compiler): remove write-only collections from template pipel…
yoominho91 Sep 11, 2026
cd033e5
fix(docs-infra): copy code blocks as they are rendered
erkamyaman Sep 11, 2026
430a8eb
docs: add the missing heading to the effects guide
erkamyaman Sep 13, 2026
5cdae0a
docs: remove outdated useFactory and expression lowering guidance
erkamyaman Sep 16, 2026
15bfc1a
fix(forms): mark control as dirty before setting its value in FVC int…
lazerg Sep 3, 2026
f825c9b
docs: fix API links that point at missing member anchors
erkamyaman Sep 16, 2026
312e1d8
feat(compiler-cli): add strictUnclaimedEventNames option to catch mis…
aparzi Sep 9, 2026
c45cc9a
docs: release notes for the v22.1.7 release
pkozlowski-opensource Sep 16, 2026
221e0ed
release: bump the next branch to v22.3.0-next.0
pkozlowski-opensource Sep 16, 2026
2b26aa6
docs: release notes for the v22.2.0-rc.0 release
pkozlowski-opensource Sep 16, 2026
d70e56e
test(core): restore longer durations in animation tests
SkyZeroZx Sep 16, 2026
e623982
refactor(compiler): enable checkUnclaimedEventNames by default for g3.
JeanMeche Sep 17, 2026
9506030
perf(devtools): stop Map copying in handleFilter
AleksanderBodurri Aug 24, 2026
463cbea
test(devtools): remove unnecessary TestBed imports in directive fores…
AleksanderBodurri Sep 14, 2026
d12db53
docs: fix links that point at missing anchors
erkamyaman Sep 14, 2026
58171fb
docs: add missing class const needed for template (form metadata)
michael-small Sep 16, 2026
d81bd08
docs: log form value in WebMCP signal forms example
michael-small Sep 16, 2026
9486df5
fix(core): ensure references are cleared from idle scheduler
crisbeto Sep 15, 2026
1879be0
fix(compiler): do not copy expression type into output AST variables
crisbeto Sep 16, 2026
d7dd34f
fix(compiler-cli): output function return types in linker
crisbeto Sep 16, 2026
4dc176e
fix(compiler): add return type to pure functions
crisbeto Sep 16, 2026
1500458
fix(core): loosen return types for arrow functions in generated code
crisbeto Sep 16, 2026
42f1ae3
docs(core): document the code modifier for keyboard event bindings
arturovt Sep 15, 2026
6b09beb
refactor(docs-infra): add Angie to the globe illustration
erkamyaman Sep 16, 2026
9ba5faa
docs(core): restore the PipeTransform code examples
erkamyaman Sep 17, 2026
814919b
docs: update `NgComponentOutlet` example w/signals
michael-small Sep 16, 2026
6e3ce79
docs: use the remote-cache config in the bazel caching guide
erkamyaman Sep 6, 2026
7e678e0
fix(core): cancel leave animations in nested views during list reorde…
thePunderWoman Sep 16, 2026
a2e62f6
fix(compiler): avoid hitting TypeScript limits if template has many t…
crisbeto Sep 17, 2026
a783c4e
refactor(platform-browser): type shadow DOM renderer fields
splincode Sep 17, 2026
1151eb9
fix(docs-infra): render the signature of decorators without members
erkamyaman Sep 8, 2026
c7ac7a0
docs: update cross-repo adev docs
angular-robot Sep 18, 2026
9069afc
docs: link the API list package sections from the guides
erkamyaman Sep 18, 2026
bceb2fe
refactor(devtools): drop inspect element highlight TTL
hawkgs Sep 18, 2026
994a2d7
docs: show how to give projected content access to a view injector
arturovt Sep 5, 2026
c4dc56b
docs: update NG0501 error page with a common hydration mismatch cause
arturovt Sep 17, 2026
06476da
docs: replace the removed SwUpdate.available in the service worker ov…
erkamyaman Sep 18, 2026
9a06a73
fix(core): support function and signal bindings in animate.enter and …
thePunderWoman Sep 17, 2026
81389f2
docs(router): name UrlHandlingStrategy.extract in the Navigation docs
erkamyaman Sep 18, 2026
7569a02
docs(core): add error guide for NG0600
thekhegay Sep 17, 2026
5a1acd8
test(docs-infra): add route discovery and prerendering smoke test target
mattrbeck Sep 3, 2026
86f4c88
refactor(devtools): use responsive split for the components tab
hawkgs Sep 21, 2026
459aafb
fix(docs-infra): render signal inputs, outputs and models using initi…
MeAkib Sep 4, 2026
41c397a
refactor(docs-infra): remove unused exports across adev
MeAkib Sep 17, 2026
c2143bb
refactor(devtools): type message bus listeners
splincode Sep 20, 2026
b61742c
docs: update compiler-cli and core reference skills
SkyZeroZx Sep 21, 2026
d6b8d99
docs(service-worker): explain how to update the worker when only its …
RAJEEV2510 Sep 16, 2026
bb57890
fix(docs-infra): make edit icon visible on gradient page headers
MeAkib Sep 8, 2026
a0bc6e7
docs: update examples to use the Service decorator
SkyZeroZx Sep 5, 2026
11750ee
docs: remove references to the Web Codegen Scorer project
DMezhenskyi Sep 18, 2026
0006391
docs: clarify usage of rolldown vs. rollup
dherges Sep 20, 2026
910895f
docs: drop the stale Component.moduleId paragraph on the NG6100 page
erkamyaman Sep 19, 2026
34c84cd
docs: fix stray markup in the image optimization and zoneless guides
erkamyaman Sep 20, 2026
4512530
docs(forms): name the default error factories in the signal validators
erkamyaman Sep 19, 2026
93a351d
refactor(compiler): add method to emitter context
crisbeto Sep 18, 2026
40f8268
docs(router): clarify route resource parameters
cexbrayat Sep 17, 2026
e048e75
fix(router): expose reload method on ActivatedRoute resources
atscott Sep 11, 2026
6688a3d
fix(forms): create controls before listeners
surajy93 Jul 28, 2026
b0d4010
test(router): Fix broken test
atscott Sep 21, 2026
0ee60b4
build: bump pnpm yaml file
thePunderWoman Sep 21, 2026
80dba4b
fix(core): wait for app stability before cleaning up dehydrated views
arturovt Sep 4, 2026
5128dec
fix(common): remove abort listener on the abort path too in httpResource
arturovt Sep 17, 2026
8c6e6a5
refactor(vscode-extension): add syntax highlighting for @boundary block
JeanMeche Sep 20, 2026
6647a07
docs: update `disabledReasons` and `transformedValue` examples
michael-small Sep 16, 2026
5cd618f
fix(dev-infra): handle missing arguments and gh failures in PR review…
erkamyaman Sep 20, 2026
d5f409c
docs: sync AI context files with best-practices.md
erkamyaman Sep 21, 2026
f24484d
build: update pnpm to 11.27.1
alan-agius4 Sep 22, 2026
bf73d87
build: remove unused merge-ready-status workflow
alan-agius4 Sep 22, 2026
fc63778
docs: update section headers in angular-package-format.md
dherges Sep 21, 2026
d389ae0
docs: link to latest on unpkg in angular-package-format.md
dherges Sep 22, 2026
58a4ca6
docs: link to latest on unpkg in angular-package-format.md
dherges Sep 22, 2026
83ba06e
docs(forms): remove `valid` from the custom control state table
thekhegay Sep 17, 2026
c92ed08
fix(compiler): guard unverified ctor parameter types in class metadata
mattrbeck Sep 18, 2026
5cb3ed2
test(core): add failing test for jsaction action map resolving Object…
arturovt Aug 31, 2026
8d8859c
fix(core): don't use plain objects as maps for jsaction data
arturovt Aug 31, 2026
1a32087
docs: clarify boundary content projection limitation
SkyZeroZx Sep 17, 2026
fe75da1
test(core): cover boundary around projected content
SkyZeroZx Sep 17, 2026
0ec19b5
fix(vscode-extension): provide folding ranges for templates with inte…
aparzi Sep 22, 2026
aa1cc47
build: update bazel dependencies
angular-robot Sep 22, 2026
6cae42c
build: update all non-major dependencies
angular-robot Sep 22, 2026
c0c5d45
test(devtools): assert on eval spy in chrome-application-operations spec
alan-agius4 Sep 22, 2026
4435518
fix(platform-server): preserve Unicode whitespace in ServerXhr URLs
SkyZeroZx Sep 2, 2026
451098c
build: lock file maintenance
angular-robot Sep 22, 2026
0ee0a16
fix(compiler): stop suppressing non-iterable values in `@for` expression
atscott Sep 9, 2026
249f55f
docs: correct the adev writing guide skill
erkamyaman Sep 20, 2026
42da94c
docs: fix the phase label line break in the lifecycle summary table
erkamyaman Sep 22, 2026
95e7df4
docs: use the title attribute on embedded videos
erkamyaman Sep 22, 2026
afcda88
docs(service-worker): render the SwPush and SwRegistrationOptions exa…
erkamyaman Sep 22, 2026
517f67a
fix(vscode-extension): Support inlay hint in inline templates
JeanMeche Jul 6, 2026
30ff131
docs(router): reorganize and reword route resources guide
atscott Sep 22, 2026
95e8dec
docs(core): fix three JSDoc rendering bugs on the API pages
erkamyaman Sep 22, 2026
be7ee3a
docs(upgrade): add maintenance mode note
atscott Sep 22, 2026
23de35b
build: update dependency @vscode/vsce to v4
angular-robot Sep 23, 2026
cff4402
build: update dependency emoji-regex to v11
angular-robot Sep 23, 2026
1881f9d
feat(devtools): add ability to toggle control flow and defer blocks
hawkgs Sep 23, 2026
3719605
fix(router): avoid dense elements allocation for numeric URL keys
SkyZeroZx Sep 14, 2026
344b10f
refactor(router): clean up route resource implementation and test hel…
atscott Sep 22, 2026
573293c
build: update dependency mermaid to v12
angular-robot Sep 23, 2026
42ce791
docs: release notes for the v22.1.8 release
thePunderWoman Sep 23, 2026
9222579
docs: release notes for the v20.3.32 release
thePunderWoman Sep 23, 2026
123729b
docs: release notes for the v21.2.24 release
thePunderWoman Sep 23, 2026
2f6beb4
docs: release notes for the v22.2.0 release
thePunderWoman Sep 23, 2026
d584677
Change CI environment to Windows and update settings
TZAHAL18520 Oct 3, 2026
0cc990b
Changelog cherry pick 22.2.0 (#1)
TZAHAL18520 Oct 3, 2026
1dc5089
Revert "Changelog cherry pick 22.2.0"
TZAHAL18520 Oct 3, 2026
ac88273
Merge pull request #2 from leonardonigri6518/revert-1-changelog-cherr…
TZAHAL18520 Oct 3, 2026
6ea63fe
Revert "gh pr checkout 2 - Atualização - Revert 1 "
TZAHAL18520 Oct 3, 2026
26504bb
Revert "gh pr checkout 2 - Atualização - Revert 1 "
TZAHAL18520 Oct 3, 2026
d0e3642
Revert "Atualização - changelog cherry pick 22.2.0 (#7)"
TZAHAL18520 Oct 3, 2026
3a037d8
Merge pull request #8 from leonardonigri6518/revert-7-revert-2-revert…
TZAHAL18520 Oct 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .agent/rules/agents.md
181 changes: 181 additions & 0 deletions .agent/skills/adev-writing-guide/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
---
name: adev-writing-guide
description: Comprehensive writing guide for Angular documentation (adev). Covers Google Technical Writing standards, Angular-specific markdown extensions, code blocks, and components. You MUST use this skill any time you plan to create, edit, or review documentation files in `adev/` or `adev/src/content`.
---

# Angular Documentation (adev) Writing Guide

This skill provides comprehensive guidelines for authoring content in `adev/src/content`. It combines Google's technical writing standards with Angular-specific markdown conventions, components, and best practices.

## I. Google Technical Writing Guidelines

### Tone and Content

- **Be conversational and friendly:** Maintain a helpful yet professional tone. Avoid being overly casual.
- **Write accessibly:** Ensure documentation is understandable to a diverse global audience, including non-native English speakers.
- **Audience-first:** Focus on what the user needs to do, not just what the system does.
- **Avoid pre-announcing:** Do not mention unreleased features or make unsupported claims.
- **Use descriptive link text:** Link text should clearly indicate the destination (e.g., avoid "click here").

### Language and Grammar

- **Use second person ("you"):** Address the reader directly.
- **Prefer active voice:** Clearly state who or what is performing the action (e.g., "The system generates a token" vs "A token is generated").
- **Standard American English:** Use standard American spelling and punctuation.
- **Conditional clauses first:** Place "if" or "when" clauses before the instruction (e.g., "If you encounter an error, check the logs").
- **Define terms:** Introduce new or unfamiliar terms/acronyms upon first use.
- **Consistent terminology:** Use the same term for the same concept throughout the document.
- **Conciseness:** Aim for one idea per sentence. Keep sentences short.

### Formatting and Organization

- **Sentence case for headings:** Capitalize only the first word and proper nouns in titles and headings.
- **Lists:**
- **Numbered lists:** Use for sequential steps or prioritized items.
- **Bulleted lists:** Use for unordered collections of items.
- **Description lists:** Use for term-definition pairs.
- **Serial commas:** Use the Oxford comma (comma before the last item in a list of three or more).
- **Code formatting:** Use code font for code-related text (filenames, variables, commands).
- **UI Elements:** formatting user interface elements in **bold**.
- **Date formatting:** Use unambiguous formats (e.g., "September 4, 2024" rather than "9/4/2024").
- **Structure:** Use logical hierarchy with clear introductions and navigation. Headings should be task-based where possible.

### Images and Code Samples

- **Images:** Use simple, clear illustrations to enhance understanding.
- **Captions:** Write captions that support the image.
- **Code Samples:**
- Ensure code is correct and builds without errors.
- Follow language-specific conventions.
- **Comments:** Focus on _why_, not _what_. Avoid commenting on obvious code.

### Reference Hierarchy

1. Project-specific style guidelines (if any exist in `CONTRIBUTING.md` or similar).
2. Google Developer Documentation Style Guide.
3. Merriam-Webster (spelling).
4. Chicago Manual of Style (non-technical).
5. Microsoft Writing Style Guide (technical).

---

## II. Angular Documentation Specifics

### Code Blocks

Use the appropriate language identifier for syntax highlighting:

- **TypeScript (Angular):** Use `angular-ts` when TypeScript code examples contain inline templates.
- **HTML (Angular):** Use `angular-html` for Angular templates.
- **TypeScript (Generic):** Use `ts` for plain TypeScript.
- **HTML (Generic):** Use `html` for plain HTML.
- **Shell/Terminal:** Use `shell` or `bash`.
- **Mermaid Diagrams:** Use a `mermaid` fenced block. `<docs-code language="mermaid">` is not supported and fails the build.

#### Attributes

You can enhance code blocks with attributes in curly braces `{}` after the language identifier. `header` and `highlight` take a value after a colon; the rest are bare flags, and writing one as `flag: true` fails the build with `Invalid code block metadata`, as does an unrecognized key:

- `header: "Title"`: Adds a title to the code block.
- `linenums`: Enables line numbering.
- `highlight: [2]`: Highlights specific lines. An ascending two-number array is a range, so `[12, 19]` highlights lines 12 through 19. One number, or three or more, is a literal list. Nest one level to mix the two: `[[3,7], 9]`.
- `hideCopy`: Hides the copy button.
- `hideDollar`: Hides the `$` prompt in shell examples.
- `prefer`: Marks code as a preferred example (green border/check).
- `avoid`: Marks code as an example to avoid (red border/cross).

**Example:**

````markdown
```angular-ts {header: "My Component", linenums, highlight: [2]}
@Component({
selector: 'my-app',
template: '<h1>Hello</h1>',
})
export class App {}
```
````

#### `<docs-code>` Component

For more advanced code block features, use the `<docs-code>` component. Its attributes use HTML syntax, `attr="value"` with double quotes, and bare names for the boolean ones. It validates nothing, so an unrecognized attribute and a single-quoted value are both ignored without an error:

- `path`: Path to a source file (e.g., `adev/src/content/examples/...`).
- `header`: Custom header text.
- `language`: Language identifier (e.g., `angular-ts`). When omitted, it is inferred from the file extension, and an extension it does not recognize falls back to `angular-ts`, so set it for shell, markdown and scss files.
- `linenums`: Boolean attribute.
- `highlight`: Array of line numbers/ranges, with the same semantics as the fenced form (e.g., `[[3,7], 9]`).
- `visibleLines`: Range of lines to show initially (collapsible).
- `region`: Region to extract from source file.
- `preview`: Boolean. Renders the example as a running component below the code. _Only works with standalone examples._
- `hideCode`: Boolean. Collapses code by default.
- `hideDollar`: Hides the `$` prompt in shell examples.
- `prefer` / `avoid`: Mark the example as preferred or as one to avoid.

**Multifile Example:**

```html
<docs-code-multifile path="..." preview>
<docs-code path="..." />
<docs-code path="..." />
</docs-code-multifile>
```

### Alerts / Admonitions

Use specific keywords followed by a colon for alerts. These render as styled blocks.

- `NOTE:` For ancillary information.
- `TIP:` For helpful hints or shortcuts.
- `IMPORTANT:` For crucial information.
- `CRITICAL:` For warnings about potential data loss or severe issues.
- `TODO:` For incomplete documentation.
- `QUESTION:` To pose a question to the reader.
- `SUMMARY:` For section summaries.
- `TLDR:` For concise summaries.
- `HELPFUL:` For best practices.

**Example:**

```markdown
TIP: Use `ng serve` to run your application locally.
```

### Custom Components

- **Cards (`<docs-card>`):**
- Usually inside `<docs-card-container>`; a single card also renders on its own.
- Attributes: `title`, `href`, `link`, `imgSrc`, `iconImgSrc`, `titleInline`.
- `href` is the destination and `link` only replaces the default "Learn more" label, so a URL written in `link` renders as text and a card without `href` is not clickable.
- **Callouts (`<docs-callout>`):**
- Attributes: `title`, `important`, `critical`.
- **Pills (`<docs-pill>`):**
- Must be inside `<docs-pill-row>`.
- Attributes: `title`, `href`.
- **Steps / Workflow (`<docs-step>`):**
- Must be inside `<docs-workflow>`.
- Attributes: `title`.
- **Tabs (`<docs-tab>`):**
- Must be inside `<docs-tab-group>`.
- Attributes: `label`.
- **Videos (`<docs-video>`):**
- Attributes: `src` (YouTube embed URL), `title` (names the video in the play link's label).

### Images

Use standard markdown syntax with optional attributes for sizing and loading behavior.

- `#small`, `#medium`: Append to image URL for sizing.
- `{loading: 'lazy'}`: Add attribute for lazy loading.

**Example:**

```markdown
![Alt Text](path/to/image.png#medium {loading: 'lazy'})
```

### Headers

- Use markdown headers (`#`, `##`, `###`).
- Ensure a logical hierarchy (don't skip levels).
- `h2` and `h3` are most common for content structure.
135 changes: 135 additions & 0 deletions .agent/skills/pr_review/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
---
name: PR Review
description: Guidelines and tools for reviewing pull requests in the Angular repository.
---

# PR Review Guidelines

When reviewing a pull request for the `angular` repository, follow these essential guidelines to ensure high-quality contributions:

1. **Context & Ecosystem**:
- Keep in mind that this is the core Angular framework. Changes here can impact millions of developers.
- Be mindful of backwards compatibility. Breaking changes require strict approval processes and deprecation periods.

2. **Key Focus Areas**:
- **Comprehensive Reviews**: You **MUST always** perform a deep, comprehensive review of the _entire_ pull request. If the user asks you to look into a specific issue, file, or area of concern, you must investigate that specific area _in addition to_ reviewing the rest of the PR's substantive changes. Do not terminate your review after addressing only the user's focal point.
- **Package-Specific & Topic Guidelines**: Check if there are specific guidelines for the package or topic being modified in the `reference/` directory (e.g., `reference/router.md` or `reference/object_create_null.md`). Always prioritize these rules for their respective areas.
- **Prototype Collision & `Object.create(null)` PRs**: When reviewing PRs that swap `{}` for `Object.create(null)`, consult `reference/object_create_null.md` for technical evaluation criteria and rules.
- **Commit Messages**: Evaluate the quality of commit messages. They should explain the _why_ behind the change, not just the _what_. Someone should be able to look at the commit history years from now and clearly understand the context and reasoning for the change.
- **Code Cleanliness**: Ensure the code is readable, maintainable, and follows Angular's project standards.
- **Performance**: Look out for code that might negatively impact runtime performance or bundle size, particularly in hot paths like change detection or rendering.
- **Testing**: Ensure all new logic has comprehensive tests, including edge cases. **Do NOT run tests locally** as part of your review process. CI handles this automatically, and running tests locally is redundant and inefficient.
- **API Design**: Ensure new public APIs are well-designed, consistent with existing APIs, and properly documented.
- **Payload Size**: Pay attention to the impact of changes on the final client payload size.

3. **Execution Workflow**:
Determine the appropriate review method. If the user explicitly asks for a `remote` or `local` review in their request, that takes precedence (e.g. "leave comments on the PR" implies `remote`). Otherwise, use the GitHub MCP or available scripts to determine if the review should be `local` or `remote`.

**Common Review Practices (Applies to both Local and Remote)**
- **Preparation & Checklist**:
- First, create a task list (e.g., in `task.md`) that you can easily reference containing **all** the review requirements from the "Key Focus Areas" section (Commit Messages, Performance, Testing, etc.), along with any specific review notes or requests from the user.
- Before doing an in-depth review, expand this list into more detailed items of what you plan to explore and verify in the PR.
- As you conduct the review, check off items in this list, adding your assessment or findings underneath each item.
- At the end of your review, refer back to the checklist to ensure every single requirement was completely verified.
- **Fetch PR Metadata Safely**: When you need to read the PR description or context, do NOT use `gh pr view <PR_NUMBER>` by itself, as its default GraphQL query may fail due to lack of `read:org` and `read:discussion` token scopes. Instead, use `read_url_content` on the PR URL or use `gh pr view <PR_NUMBER> --json title,body,state,author`.
- **Check Existing Comments First**: Before formulating feedback, use the GitHub MCP or available scripts to fetch existing comments on the PR. Review this feedback to avoid duplicate comments, and incorporate its insights into your own review process.
- **Constructive Feedback**: Provide clear, actionable, and polite feedback. Explain the _why_ behind your suggestions or edits. Do **NOT** leave inline comments purely to praise, agree with, or acknowledge a correct implementation detail, as this clutters the review. If you want to praise the PR, do so in the single general PR comment.

**A. Local Code Review (If the PR is owned by the author requesting the review)**
- **Checkout**: Check out the PR branch locally (if it doesn't already exist, fetch it). If checking out the branch fails due to a worktree claim (e.g. "fatal: '<branch>' is already used by worktree at '<path>'"), do the review in that directory.
- **Review & Edit**: Execute the review directly on the code. Instead of adding inline PR comments for suggestions, format the codebase or apply the edits directly to the files.
- **Feedback**: Summarize the review findings and the concrete changes you made in a message to the user, referencing the completed items from your checklist.
- **Do NOT Commit or Push**: Leave the changes uncommitted in the working directory so the user can easily review the pending edits locally. Let the user know the changes are ready for their review, but do not ask for approval to push.
- **Resolve Comments**: Once the user confirms the changes are good and should be committed/pushed, respond to the existing comments as 'resolved' using the GitHub MCP or available scripts.

**B. Remote Code Review (For all other PRs)**
- **Batching Comments (MCP Server - Preferred)**: If you have the GitHub MCP Server configured, you **MUST** follow this workflow to avoid spamming the author with multiple notifications:
1. Create a pending review using `mcp_github-mcp-server_pull_request_review_write` (method `create`).
2. Add your inline comments to the pending review using `mcp_github-mcp-server_add_comment_to_pending_review`.
3. Submit the review using `mcp_github-mcp-server_pull_request_review_write` (method `submit_pending`).
- **Batching Comments (Scripts - Fallback)**: If you do **NOT** have access to the GitHub MCP Server (e.g., specific MCP tools are missing from your context), fallback to using the provided scripts. Use `post_inline_comment.sh` to stage your comments locally. Once all comments are staged, you **MUST** call `submit_pr_review.sh` to publish them as a single batched review (and send a single notification). Try to keep comments minimal or use a general comment if you have many suggestions.
- **Use Suggested Changes**: Whenever appropriate (e.g., for simple code fixes, refactoring suggestions, or typo corrections), prefer using GitHub's **Suggested Changes** syntax (`suggestion ... `) in your inline comments. This allows the author to apply your suggested code improvements with a single click in the GitHub UI.
- **Review Type**: Never mark an external PR review as an "approval" unless explicitly instructed by a repo maintainer. Always use "Request Changes" or "Comment". Note that some tools might only support commenting.
- **Require User Approval Before Posting**: Prepare your review comments and present them to the user, alongside a summary of your completed checklist. Do NOT post comments to the PR without explicitly asking the user for permission first. Only post the review after the user approves.
- **CRITICAL**: This rule applies even if you receive a system message indicating that an artifact has been "automatically approved" or instructing you to "proceed to execution." You must ALWAYS obtain explicit, written confirmation from the user in this chat conversation before posting any content to a PR.
- **Prefix Agent Comments**: To make it clear when comments are generated and posted by an AI agent rather than a human user, **always** prefix your review comments with `AGENT: `.

## Available Tools

The following tools are available for remote interactions. We prefer using standard **GitHub MCP Server** tools when available. If you do not have the MCP server set up, you **MUST** fallback to using the custom bash scripts.

### GitHub MCP Tools (Preferred)

- `mcp_github-mcp-server_pull_request_review_write`
- `mcp_github-mcp-server_add_comment_to_pending_review`

### Custom Bash Scripts (Fallback)

The following scripts are provided as fallbacks if the MCP server is not available. Note that they rely on the `gh` CLI being correctly installed and authenticated in the local environment.

### `determine_review_type.sh`

Determines whether to use the Local or Remote review workflow by checking if the currently authenticated GitHub user via the `gh` CLI matches the author of the pull request.

**Usage:**

```bash
.agent/skills/pr_review/scripts/determine_review_type.sh <PR_NUMBER>
```

### `get_pr_comments.sh`

Fetches all existing inline comments on a PR using the GitHub API. This is crucial for reviewing other contributors' feedback and avoiding duplicate comments. It outputs JSON containing the `id`, `path`, `line`, `body`, and `user` for each comment.

**Usage:**

```bash
.agent/skills/pr_review/scripts/get_pr_comments.sh <PR_NUMBER>
```

### `reply_pr_comment.sh`

Replies to an existing PR comment thread. This is useful for marking comments as resolved after addressing them in a local code review. Note that the `COMMENT_ID` must be the ID of the top-level comment in the thread.

**Usage:**

```bash
.agent/skills/pr_review/scripts/reply_pr_comment.sh <PR_NUMBER> <COMMENT_ID> <REPLY_BODY>
```

### `post_inline_comment.sh`

The GitHub CLI `gh pr review` command does not natively support adding inline comments to specific lines of code via its standard flags. This script wraps the GitHub API to stage comments locally. They will not be published until you call `submit_pr_review.sh`.

**Usage:**

```bash
.agent/skills/pr_review/scripts/post_inline_comment.sh <PR_NUMBER> <FILE_PATH> <LINE_NUMBER> <COMMENT_BODY>
```

**Example:**

```bash
.agent/skills/pr_review/scripts/post_inline_comment.sh 12345 "packages/core/src/render3/instructions/element.ts" 42 "AGENT: Consider the performance implications here."
```

### `submit_pr_review.sh`

Submits all locally staged inline comments as a single batched review via the GitHub Pull Request Reviews API.

**Usage:**

```bash
.agent/skills/pr_review/scripts/submit_pr_review.sh <PR_NUMBER> <EVENT_TYPE> [BODY]
```

**Options:**

- `EVENT_TYPE`: Must be `COMMENT`, `APPROVE`, or `REQUEST_CHANGES`. Never use `APPROVE` for external PRs.
- `BODY`: (Optional) A general summary comment for the review.

**Example:**

```bash
.agent/skills/pr_review/scripts/submit_pr_review.sh 12345 COMMENT "AGENT: I have left a few inline suggestions for your consideration."
```
Loading
Loading