Skip to content

Remove xplat-generated topics from the Angular source#410

Open
Zneeky wants to merge 2 commits into
vnextfrom
aahmedov/remove-overriden-angular-topics
Open

Remove xplat-generated topics from the Angular source#410
Zneeky wants to merge 2 commits into
vnextfrom
aahmedov/remove-overriden-angular-topics

Conversation

@Zneeky

@Zneeky Zneeky commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Closes #401

What & why

A number of Data-Visualization / cross-platform topics under docs/angular/src/content/{en,jp}/components/ were committed to the Angular source but are overwritten on every build. The Angular build runs docs/angular/scripts/sync-generated.mjs (via sync:generated-from-xplat) before astro build, which compiles the shared xplat docs and copies them over the Angular content tree - everything except grids/, changelog/, and toc.json.

So those committed files were stale snapshots: editing them under docs/angular/ had no effect, since the build regenerates them from docs/xplat/src/content/. This PR removes them so it's clear they're xplat-owned, and prevents them from silently coming back.

Changes

  • Deleted 208 overridden topic files (104 en + 104 jp) from docs/angular/src/content/{en,jp}/components/: charts/** (except the Angular-owned charts/features/chart-legends.mdx), geo-map*, gauges (bullet-graph, linear-gauge, radial-gauge), zoomslider-overview, dashboard-tile, spreadsheet-*, excel-library* / excel-utility, general-changelog-dv, inputs/color-editor, interactivity/accessibility-compliance, maps/map-api, menus/toolbar.
  • Added an xplat-generated topics glob block to docs/angular/src/content/en/.gitignore and .../jp/.gitignore (appended below the existing generate-grids.mjs rules, which are preserved), so the build-regenerated copies are ignored instead of showing as untracked noise / being re-committed.
  • Documented the behavior in the root .github/CONTRIBUTING.md (section "Updating of Data Visualization related topics") and root README.md ("Content Locations").

Left untouched (Angular-owned): grids/**, changelog/**, toc.json, ai/**, pure-Angular component topics, and the entire kr locale (no xplat source).

No regression - how it was verified

  • Byte-identical output: built dist/angular (en) before and after the change and diffed. All differing HTML reduced to non-deterministic build artifacts only - auto-generated igd-table-N IDs (which shift even on Angular-owned pages that weren't touched, e.g. calendar, grid/master-detail), the sitemap <lastmod> timestamp, and pagefind/astro manifests.
  • Clean tree after build: en and jp builds succeed and leave git status clean - every removed file is regenerated and ignored, nothing leaks.
  • Coverage check: confirmed every one of the 210 generated paths is matched by the new .gitignore patterns (0 uncovered), Angular-owned topics stay visible, and generate-grids.mjs output stays ignored.
  • npm run check:llms-metadata passes (the same content is still validated via docs/xplat/src/content/).

Reviewer notes

  • The build pipeline (sync-generated.mjs) is unchanged - this PR only removes source files and adds ignore rules + docs.
  • components/charts/ is ignored wholesale; the one Angular-owned file in it (charts/features/chart-legends.mdx) stays tracked (a .gitignore rule never untracks an already-tracked file).
  • When a new cross-platform topic group is added under docs/xplat/src/content/, add a matching pattern to the two .gitignore blocks (documented in CONTRIBUTING).

… source

The Angular build compiles the shared xplat docs and copies them over
docs/angular/src/content/{en,jp}/ on every build (sync-generated.mjs),
overwriting everything except grids/, changelog/, and toc.json. The
committed copies of those topics were stale snapshots — editing them had
no effect because the build regenerates them from docs/xplat/src/content/.

Remove the 208 overridden topic files (104 en + 104 jp) from the Angular
source and ignore the regenerated output via an "xplat-generated topics"
block in each locale's .gitignore, so they can't reappear as untracked
files or be re-committed. Document the behavior in the root CONTRIBUTING
and README.

Verified: Angular en/jp builds are byte-identical before and after (only
non-deterministic build artifacts differ), the content tree stays clean
after a build, and check:llms-metadata passes.
@Zneeky Zneeky requested review from ChronosSF and Copilot July 7, 2026 10:38
@Zneeky Zneeky added the ❌ status: awaiting-test PRs awaiting manual verification label Jul 7, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 removes xplat-generated Data Visualization (and related cross-platform) topic files that were previously committed under docs/angular/src/content/{en,jp}/components/, since they are overwritten during Angular builds by docs/angular/scripts/sync-generated.mjs. It also adds locale-level ignore rules and documentation so the generated copies don’t get recommitted and contributors edit the xplat sources instead.

Changes:

  • Deleted large sets of xplat-overwritten Angular topic files under docs/angular/src/content/{en,jp}/components/.
  • Added .gitignore rules in the Angular en and jp content roots to ignore the build-regenerated topic groups.
  • Documented the Angular/xplat generation + ownership model in README.md and .github/CONTRIBUTING.md.

Reviewed changes

Copilot reviewed 113 out of 212 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
README.md Clarifies that some Angular content is generated from xplat at build time and should not be edited/committed in docs/angular/.
.github/CONTRIBUTING.md Documents the Angular build sync behavior and points contributors to edit xplat sources + keep ignore rules updated.
docs/angular/src/content/en/.gitignore Ignores xplat-generated topic groups copied into the Angular EN tree during builds.
docs/angular/src/content/jp/.gitignore Ignores xplat-generated topic groups copied into the Angular JP tree during builds.
docs/angular/src/content/{en,jp}/components/** (many files) Removes committed snapshots of topics that are regenerated from xplat and overwritten on every build.

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

Comment thread docs/angular/src/content/en/.gitignore
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

❌ status: awaiting-test PRs awaiting manual verification

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove old xplat angular exports that are now overriden on build time

2 participants