|
| 1 | +--- |
| 2 | +name: expert-reviewing |
| 3 | +description: "Route code changes to relevant review dimensions based on affected files and folders. Use when reviewing PRs, analyzing code quality, or performing targeted reviews of specific vstest subsystems." |
| 4 | +--- |
| 5 | + |
| 6 | +# Expert Review Routing |
| 7 | + |
| 8 | +This skill maps changed folders to review dimensions, enabling focused expert reviews of vstest PRs. |
| 9 | + |
| 10 | +## Folder → Dimension Routing Table |
| 11 | + |
| 12 | +| Folder | Primary Dimensions | |
| 13 | +|--------|-------------------| |
| 14 | +| `eng/` | Build Script & Infrastructure Hygiene, Dependency & Package Integrity, Source Build & Cross-Platform Compliance | |
| 15 | +| `src/Microsoft.TestPlatform.CrossPlatEngine/` | Parallel Execution & Scheduling Safety, Error Reporting & Diagnostic Clarity, Process Architecture & Host Resolution | |
| 16 | +| `src/vstest.console/` | RunSettings Validation & Inference, Process Architecture & Host Resolution, Environment Variable & Feature Flag Contracts | |
| 17 | +| `test/Microsoft.TestPlatform.Acceptance.IntegrationTests/` | Acceptance Test Coverage Design, Cross-TFM & Framework Resolution, Parallel Execution & Scheduling Safety | |
| 18 | +| `src/Microsoft.TestPlatform.Extensions.BlameDataCollector/` | Crash & Hang Dump Reliability, Error Reporting & Diagnostic Clarity, Environment Variable & Feature Flag Contracts | |
| 19 | +| `src/testhost/` | Testhost Assembly Loading & Resolution, Cross-TFM & Framework Resolution, Process Architecture & Host Resolution | |
| 20 | +| `src/Microsoft.TestPlatform.CommunicationUtilities/` | IPC Transport & Protocol Stability, Error Reporting & Diagnostic Clarity, Dependency & Package Integrity | |
| 21 | +| `src/Microsoft.TestPlatform.ObjectModel/` | Public API Surface Protection, Backward Compatibility & Rollback Safety, Cross-TFM & Framework Resolution | |
| 22 | +| `src/package/` | Dependency & Package Integrity, Build Script & Infrastructure Hygiene, Cross-TFM & Framework Resolution | |
| 23 | +| `src/Microsoft.TestPlatform.Common/` | Backward Compatibility & Rollback Safety, Error Reporting & Diagnostic Clarity, Null Safety & Boundary Validation | |
| 24 | +| `src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/` | IPC Transport & Protocol Stability, Error Reporting & Diagnostic Clarity, Backward Compatibility & Rollback Safety | |
| 25 | +| `src/Microsoft.TestPlatform.Client/` | IPC Transport & Protocol Stability, Backward Compatibility & Rollback Safety, Public API Surface Protection | |
| 26 | +| `src/datacollector/` | Crash & Hang Dump Reliability, Dependency & Package Integrity, Error Reporting & Diagnostic Clarity | |
| 27 | +| `src/Microsoft.TestPlatform.CoreUtilities/` | Process Architecture & Host Resolution, Environment Variable & Feature Flag Contracts, Error Reporting & Diagnostic Clarity | |
| 28 | +| `src/Microsoft.TestPlatform.TestHostProvider/` | Process Architecture & Host Resolution, Environment Variable & Feature Flag Contracts, Testhost Assembly Loading & Resolution | |
| 29 | + |
| 30 | +## Quick Reference: Dimension Summaries |
| 31 | + |
| 32 | +| Dimension | Focus | |
| 33 | +|-----------|-------| |
| 34 | +| Dependency & Package Integrity | Version conflicts, transitive deps, package content correctness | |
| 35 | +| Cross-TFM & Framework Resolution | Multi-TFM builds, binding redirects, framework-specific behavior | |
| 36 | +| Process Architecture & Host Resolution | x86/x64/ARM64 selection, DOTNET_ROOT propagation, muxer resolution | |
| 37 | +| Parallel Execution & Scheduling Safety | Race conditions, lock scopes, worker slot assignment, cancellation | |
| 38 | +| IPC Transport & Protocol Stability | Wire compatibility, connection timeouts, protocol versioning | |
| 39 | +| Crash & Hang Dump Reliability | Dump capture under compound failures, detach timing, file validity | |
| 40 | +| Error Reporting & Diagnostic Clarity | Actionable messages, trace formatting, exception propagation | |
| 41 | +| Environment Variable & Feature Flag Contracts | Naming conventions, propagation, stable contract semantics | |
| 42 | +| RunSettings Validation & Inference | Defensive XML parsing, defaults, source precedence | |
| 43 | +| Backward Compatibility & Rollback Safety | Disable flags, version-guarded behavior, migration paths | |
| 44 | +| Public API Surface Protection | Unintentional exposure, PublicAPI.txt management, interface evolution | |
| 45 | +| Acceptance Test Coverage Design | Focused matrices, OS coverage, measurement-backed claims | |
| 46 | +| Testhost Assembly Loading & Resolution | deps.json alignment, RID assets, TypeLoadException handling | |
| 47 | +| Build Script & Infrastructure Hygiene | Exit codes, cross-platform scripts, source-build compatibility | |
| 48 | +| Null Safety & Boundary Validation | Boundary checks, nullable annotations, defensive parsing | |
| 49 | +| Source Build & Cross-Platform Compliance | Source-build mode, Linux/macOS paths, shell compatibility | |
| 50 | + |
| 51 | +## Common Review Scenarios |
| 52 | + |
| 53 | +**PR touches `src/Microsoft.TestPlatform.CrossPlatEngine/`** |
| 54 | +→ Activate: Parallel Execution & Scheduling Safety, Error Reporting & Diagnostic Clarity, Process Architecture & Host Resolution |
| 55 | + |
| 56 | +**PR modifies `eng/` scripts or build infrastructure** |
| 57 | +→ Activate: Build Script & Infrastructure Hygiene, Dependency & Package Integrity, Source Build & Cross-Platform Compliance |
| 58 | + |
| 59 | +**PR changes `ObjectModel` public API** |
| 60 | +→ Activate: Public API Surface Protection, Backward Compatibility & Rollback Safety, Cross-TFM & Framework Resolution |
| 61 | + |
| 62 | +**PR updates `CommunicationUtilities` or `TranslationLayer`** |
| 63 | +→ Activate: IPC Transport & Protocol Stability, Backward Compatibility & Rollback Safety, Error Reporting & Diagnostic Clarity |
| 64 | + |
| 65 | +**PR modifies blame/datacollector components** |
| 66 | +→ Activate: Crash & Hang Dump Reliability, Environment Variable & Feature Flag Contracts, Error Reporting & Diagnostic Clarity |
| 67 | + |
| 68 | +**PR adds or bumps package dependencies** |
| 69 | +→ Activate: Dependency & Package Integrity, Cross-TFM & Framework Resolution, Backward Compatibility & Rollback Safety |
| 70 | + |
| 71 | +**PR touches testhost or TestHostProvider** |
| 72 | +→ Activate: Testhost Assembly Loading & Resolution, Process Architecture & Host Resolution, Cross-TFM & Framework Resolution |
| 73 | + |
| 74 | +**PR modifies RunSettings handling in vstest.console** |
| 75 | +→ Activate: RunSettings Validation & Inference, Environment Variable & Feature Flag Contracts, Backward Compatibility & Rollback Safety |
| 76 | + |
| 77 | +## Integration with @expert-reviewer |
| 78 | + |
| 79 | +This skill provides the **routing configuration** that tells the expert-reviewer agent which dimensions to activate for a given PR. The agent owns the full CHECK methodology and review logic. |
| 80 | + |
| 81 | +**Invocation:** Reference `@expert-reviewer` in a PR comment or use the `pr-expert-reviewer` workflow. |
| 82 | + |
| 83 | +**How routing works:** |
| 84 | +1. Agent identifies changed files/folders in the PR |
| 85 | +2. This skill's routing table maps folders to applicable dimensions |
| 86 | +3. Agent activates the matched dimensions and applies their CHECK items |
| 87 | +4. Agent produces findings limited to activated dimensions only |
| 88 | + |
| 89 | +**Scope boundaries:** |
| 90 | +- This skill: folder-to-dimension mapping, dimension summaries, scenario examples |
| 91 | +- The agent: full CHECK items, severity classification, comment formatting, review decisions |
| 92 | +- `vstest-build-test` skill: build/test commands (not review logic) |
| 93 | +- `trx-analysis` skill: test result file parsing (not code review) |
0 commit comments