Weekly Docs Refresh: CrossDeviceExperiences (v1.0) - #836
Closed
microsoft-graph-devx-bot[bot] wants to merge 17 commits into
Closed
Weekly Docs Refresh: CrossDeviceExperiences (v1.0)#836microsoft-graph-devx-bot[bot] wants to merge 17 commits into
microsoft-graph-devx-bot[bot] wants to merge 17 commits into
Conversation
Guard GenerateMarkDown.ps1 so a module's docs are only deleted when the module is available to regenerate them. Skip-and-preserve per workload module, and abort if Authentication is unavailable, avoiding refresh PRs that delete thousands of docs after a failed module install. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
EscapeDisallowedHtmlTags.ps1 and RemoveInvalidFullStops.ps1 hardcoded a personal git identity, so their stage commits in the weekly refresh PRs were attributed to an individual instead of the tooling bot. Align both with the other generation scripts. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
- UpdateLinks.ps1: only insert the beta/v1 '[!NOTE]' link when it is not already present, so weekly runs stop stacking duplicate note blocks. - GeneratePermissionsTable.ps1: skip files that already contain a '**Permissions**' table instead of prepending another copy each run. - GenerateMarkDown.ps1: write PlatyPS output as UTF-8 without BOM so every regenerated file no longer diffs on a leading BOM. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
Add '*.md text eol=lf' to .gitattributes so PlatyPS/transform scripts, which run on Windows and emit CRLF, no longer produce line-ending churn in the weekly refresh PRs. Index blobs are already LF, so this only pins the working-tree checkout and future writes to LF. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
…rphans Bulk-deleting a module's docs before regenerating meant any transient import failure (installed but unimportable module, e.g. Authentication version conflict) wiped docs that were never regenerated, producing refresh PRs with thousands of missing files. Now: verify the module truly imports and exposes commands before processing (skip-and-preserve otherwise), overwrite each doc in place, and remove only genuine orphans whose command is no longer in the metadata. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
Each Graph workload module now generates in its own Azure DevOps stage per SDK profile (~86 independent stages), giving every module a fresh agent and a clean assembly-load context. This structurally eliminates the "assembly with same name is already loaded" collisions that produced mass-deletion / no-op refresh PRs. - GenerateMarkDown.ps1: add -GraphProfileFilter and -ModuleFilter scoping; in scoped runs do a complete delete + full regen of the single module, throw before any deletion on import failure (fail-safe), and emit a ModuleGenerated signal only on success. - 9 post-processing scripts: add matching profile/module scoping and empty-commit guards so each touches only the target module folder. - update-template.yml: parameterized install (InstallProfile/Module) that installs only Authentication + the single workload submodule for isolated runs; install failures warn instead of failing. - New common-templates/generate-module-docs-steps.yml: full single-module sequence (install -> generate -> post-process -> push -> PR). Generate step is continueOnError and every later step is gated on ModuleGenerated, so a failing module deletes nothing, opens no PR, and never fails the overall pipeline. - New common-templates/module-stages.yml: emits one dependsOn:[] stage per module. - powershell-docs.yml: invoke module-stages.yml for v1.0 (incl. Authentication) and beta; each stage opens its own pull request. ms.date changes every run (StabilizeMsDate is intentionally not run) for reviewable PRs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
Azure DevOps resolves template references relative to the directory of the referencing file. powershell-docs.yml lives in azure-pipelines/, so the "azure-pipelines/common-templates/module-stages.yml@self" path resolved to azure-pipelines/azure-pipelines/common-templates/module-stages.yml and failed with "Not Found". Use a path relative to the file's own directory instead. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4d27d82f-3809-40d2-b4e7-6623436ff2ef
microsoft-graph-devx-bot
Bot
requested review from
gavinbarron,
peombwa and
ramsessanchez
as code owners
July 31, 2026 19:10
Contributor
PoliCheck Scan ReportThe following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans. ✅ No issues foundMore information about PoliCheckInformation: PoliCheck | Severity Guidance | Term |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request was automatically created by Azure Pipelines for the
CrossDeviceExperiencesmodule (v1.0profile). Important Check for unexpected deletions or changes in this PR.