You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Test hardening: runs boot execution in PlatformValidation - #40563
Test Method: seven catalog/discovery/lifecycle scenarios plus fourteen safeguards Test Class:PlatformValidation, PlatformValidation lifecycle safeguards Test Project:@azure/arm-platformvalidation Test File Path:sdk/platformvalidation/arm-platformvalidation/test/public/
Hardening Categories Applied
Assertion strength
Edge-case coverage
Stability-by-design
Parameterization
Naming and intent
Mock saturation
Audit Findings Applied
Assert strict subscription-scoped catalog, manifest and result identities with one passed boot test and no failed/skipped results.
Require credential-free fixture inputs and generate UUID-derived cloud names within the service's 24-character limit.
Preserve only the exact owned resource in sanitizers; redact unrelated subscription-list identities/tags/descriptions and principal telemetry headers.
Retain uncertain mutations, suppress only cleanup 404s and wait for terminal child provisioning before cascade deletion. A completed workload can briefly expose an Accepted child; successful-result assertions are unchanged.
Publish seven genuine Node and seven genuine Chromium recordings, refreshed in Sweden Central using the approved plain VHD. Node/browser fixtures are recorded separately, never copied.
Audit Findings Skipped
No fixture fixes deferred. Repeated stress testing was not performed.
Production Code Changed
None. Tests, recorder configuration and asset pointer only; no generated SDK, API, dependency, shared framework or pipeline changes.
Validation Results
Build outcome: LOCAL_BUILD_OK -- 20/20 build tasks successful; TypeScript, formatting and whitespace checks pass. Package lint remains its configured echo skipped. Tests pass/fail: seven Node integration recordings passed. Six Chromium integration recordings passed in the full live run; the boot passed in an isolated fresh run after fixing the child-provisioning cleanup race. New race regressions pass in both runtimes.
Full playback after final official publication and restore: Node 21/21 and Chromium 21/21, zero failures/errors/skips. Stress validation: not run.
All fourteen recordings passed raw/nested-JSON auditing: 2,439 entries, 460 scoped catalog/reference IDs, zero privacy/scope violations.
Official assets: js/platformvalidation/arm-platformvalidation_c4bdccbdfa.
Fresh CI 7045610 is running for head a419dd103c. Earlier-head CI results do not validate this update.
Additional Notes
The successful fresh boot's children, CV and managed group are absent; its exact owned empty parent was independently verified and removed. An earlier browser-disconnected run remains conservatively retained because its mutation outcome is uncertain; it is not counted as passing coverage. Pre-existing stalled Poland resources remain untouched.
The approved private image uses existing backend identity access; no storage/RBAC changes. Sweden verification does not imply global rollout. Human review is still required; no review comments posted, threads auto-resolved or merge performed. Separate testing PR after merged #39663.
Cover catalog discovery, independent cloud validation and plan lifecycles, and approved-image boot execution with ownership-safe cleanup. Publish sanitized Node recording assets and retain the three known catalog scope failures for service/API-owner resolution.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: e8e56fca-b29e-4a6c-bb11-f108d5b99032
Azure Pipelines:
Successfully started running 1 pipeline(s).
10 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.
shivangirana20
changed the title
(AI Generated) Test hardening: runs boot execution in PlatformValidation
Test hardening: runs boot execution in PlatformValidation
Oct 29, 2026
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
The tests can expose unrelated validation metadata in recordings and SAS credentials in live resources, while polling errors can trigger cleanup during an unresolved operation.
Replaces the PlatformValidation SDK’s placeholder test with recorded discovery, lifecycle, and boot-execution coverage. Changes are limited to tests and recording configuration; production SDK code is unchanged.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
SAS credentials and unrelated resource metadata can be exposed, cleanup can delete resources during unresolved mutations, and a lifecycle assertion expects the wrong resource ID.
The cloud-validation-only lifecycle does not create a plan or use a VHD, but it still fails here when PLATFORMVALIDATION_SOURCE_VHD_URI is unset. This prevents running that independent CRUD scenario in environments without an approved image. Read and validate the source, and construct the plan configuration, only after the cloud-validation-only branch has returned.
Give each phase its own deadline and reserve cleanup time
[P2] This signal starts its 30-minute countdown before any resource is created and is reused for every later operation. For example, 20 minutes spent creating the CV and plan leaves only 10 minutes for the run, despite its 20-minute poller timeout and subsequent 30-minute status loop; a valid slow run is aborted and retained. Give each phase its own deadline and reserve sufficient time for cleanup in the overall test timeout.
Use credential-free fixtures and valid UUID-derived names, preserve ownership-scoped sanitization, and wait for terminal child provisioning before cleanup. Refresh genuine Node/browser recordings in Sweden Central.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: e8e56fca-b29e-4a6c-bb11-f108d5b99032
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
MgmtThis issue is related to a management-plane library.
3 participants
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.
Test Hardening
Test Information
Test Method: seven catalog/discovery/lifecycle scenarios plus fourteen safeguards
Test Class:
PlatformValidation,PlatformValidation lifecycle safeguardsTest Project:
@azure/arm-platformvalidationTest File Path:
sdk/platformvalidation/arm-platformvalidation/test/public/Hardening Categories Applied
Audit Findings Applied
Audit Findings Skipped
No fixture fixes deferred. Repeated stress testing was not performed.
Production Code Changed
None. Tests, recorder configuration and asset pointer only; no generated SDK, API, dependency, shared framework or pipeline changes.
Validation Results
Build outcome: LOCAL_BUILD_OK -- 20/20 build tasks successful; TypeScript, formatting and whitespace checks pass. Package lint remains its configured
echo skipped.Tests pass/fail: seven Node integration recordings passed. Six Chromium integration recordings passed in the full live run; the boot passed in an isolated fresh run after fixing the child-provisioning cleanup race. New race regressions pass in both runtimes.
Full playback after final official publication and restore: Node 21/21 and Chromium 21/21, zero failures/errors/skips.
Stress validation: not run.
All fourteen recordings passed raw/nested-JSON auditing: 2,439 entries, 460 scoped catalog/reference IDs, zero privacy/scope violations.
Official assets:
js/platformvalidation/arm-platformvalidation_c4bdccbdfa.Fresh CI 7045610 is running for head
a419dd103c. Earlier-head CI results do not validate this update.Additional Notes
The successful fresh boot's children, CV and managed group are absent; its exact owned empty parent was independently verified and removed. An earlier browser-disconnected run remains conservatively retained because its mutation outcome is uncertain; it is not counted as passing coverage. Pre-existing stalled Poland resources remain untouched.
The approved private image uses existing backend identity access; no storage/RBAC changes. Sweden verification does not imply global rollout. Human review is still required; no review comments posted, threads auto-resolved or merge performed. Separate testing PR after merged #39663.
Metadata: