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
Add representative live ClrMD and runtime-layout-sensitive evidence across .NET 8/9/10, not an exhaustive collector/runtime/OS matrix.
Current evidence
Core CrossVersionTargetTests.cs covers .NET 8/9 counters, GC events and dump-based ClrMD, not live attach. samples/MultiVersionSample/Program.cs, DotnetDiagnostics.TestSupport/MultiVersionSampleProcess.cs and pinned-target LiveCoreClrProcessTests.cs provide reusable fixture/readiness patterns. ClrMdAsyncStateMachineWalker.cs represents layout-sensitive analysis.
docs/runtime-version-compat-matrix.md explicitly identifies live ClrMD, async and closed-generic gaps; reconcile its CI OS narrative with actual workflow/runtime installation.
Scope and acceptance
Provide bounded fixture modes for a recognizable retained object, pending async operation and known closed generic instantiation.
Exercise live heap/thread inspection plus representative async and closed-generic resolution against actual .NET 8/9/10 targets in one documented Linux x64 sidecar topology.
Assert actual target runtime major and expected fixture identities/results, not merely successful attach or nonempty JSON.
Reuse applicable Windows net10 controls; explicitly leave unexercised Windows cross-version cells unclaimed.
Use matching UID, shared diagnostic socket visibility and pod-like PID visibility; grant SYS_PTRACE only to the sidecar where required. No shared-host Yama relaxation, privileged container or host-PID topology.
Distinguish pass, unsupported/missing prerequisite, assertion failure and timeout/abort. Expected cases on the provisioned compatibility job must execute and pass; missing discovery/skips are not coverage.
Start new topology automation advisory. Required-check promotion needs a separate stability/readiness decision.
Update documentation by exact mechanism, target version, OS, architecture and topology, linking successful evidence and unresolved gaps.
Validation and closure evidence
Use the pinned SDK, targeted new selectors alongside CrossVersionTargetTests, fixed deadlines and no pass-seeking retries. Reuse scripts/test_evidence.py inventory patterns.
Preserve commit, SDK/target runtime/ClrMD/DAC versions, kernel/container identities, UID/capability/PID setup, expected/executed cases, actual drilldown results, TRX/logs/exits, timeout and cleanup outcomes. Publish a bounded result table and durable artifacts.
Requires supported target runtimes and safely scoped ptrace. Coordinate shared sample/workflow edits with C2b without inventing a hard dependency. No all-reader/all-drilldown matrix, NativeAOT parity, dependency upgrade or #879 fix.
Parent and outcome
Parent: #919, Phase 3 / C2a. Independently deliverable compatibility coverage.
Add representative live ClrMD and runtime-layout-sensitive evidence across .NET 8/9/10, not an exhaustive collector/runtime/OS matrix.
Current evidence
Core
CrossVersionTargetTests.cscovers .NET 8/9 counters, GC events and dump-based ClrMD, not live attach.samples/MultiVersionSample/Program.cs,DotnetDiagnostics.TestSupport/MultiVersionSampleProcess.csand pinned-targetLiveCoreClrProcessTests.csprovide reusable fixture/readiness patterns.ClrMdAsyncStateMachineWalker.csrepresents layout-sensitive analysis.docs/runtime-version-compat-matrix.mdexplicitly identifies live ClrMD, async and closed-generic gaps; reconcile its CI OS narrative with actual workflow/runtime installation.Scope and acceptance
SYS_PTRACEonly to the sidecar where required. No shared-host Yama relaxation, privileged container or host-PID topology.Validation and closure evidence
Use the pinned SDK, targeted new selectors alongside
CrossVersionTargetTests, fixed deadlines and no pass-seeking retries. Reusescripts/test_evidence.pyinventory patterns.Preserve commit, SDK/target runtime/ClrMD/DAC versions, kernel/container identities, UID/capability/PID setup, expected/executed cases, actual drilldown results, TRX/logs/exits, timeout and cleanup outcomes. Publish a bounded result table and durable artifacts.
Requires supported target runtimes and safely scoped ptrace. Coordinate shared sample/workflow edits with C2b without inventing a hard dependency. No all-reader/all-drilldown matrix, NativeAOT parity, dependency upgrade or #879 fix.