Skip to content

feat!: add the Linux adapter #303

feat!: add the Linux adapter

feat!: add the Linux adapter #303

name: Windows capability probe
on:
pull_request:
paths:
- 'probes/windows/14-ci-capability/**'
- 'probes/windows/15-vocabulary/**'
- 'probes/windows/16-observation/**'
- 'probes/windows/17-resolution/**'
- 'probes/windows/18-actionability/**'
- 'probes/windows/19-semantic-actions/**'
- 'probes/windows/20-input-synthesis/**'
- 'probes/windows/21-system-lifecycle/**'
- 'probes/windows/22-capture-clipboard/**'
- 'probes/windows/23-signals-menus/**'
- 'probes/windows/24-fixture-e2e/**'
- 'probes/windows/25-packaging/**'
- 'probes/windows/26-shell-surfaces/**'
- 'probes/windows/27-contract-decisions.ps1'
- 'probes/windows/27-elevation-required.ps1'
- 'probes/windows/27-elevation-required.cs'
- 'probes/windows/28-chromium-exposure.ps1'
- 'probes/windows/28-tray-read-diagnosis.ps1'
- 'probes/windows/FINDINGS.md'
- 'probes/windows/13-ledger-check.ps1'
- 'probes/windows/13-ledger-content.ps1'
- '.github/workflows/windows-capability-probe.yml'
workflow_dispatch:
concurrency:
group: windows-capability-probe-${{ github.ref }}
cancel-in-progress: true
permissions: {}
jobs:
capability-probe:
name: Measure the hosted Windows runner
runs-on: windows-latest
timeout-minutes: 30
permissions:
contents: read
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Install pinned Rust toolchain
run: rustup show
- name: Run the capability probe
shell: powershell
run: |
.\probes\windows\14-ci-capability\probe.ps1 -Label ci
- name: Run the vocabulary probe
shell: powershell
run: |
.\probes\windows\15-vocabulary\probe.ps1 -Label ci
- name: Run the observation probe
shell: powershell
run: |
.\probes\windows\16-observation\probe.ps1 -Label ci -SkipChromium
- name: Run the resolution probe
shell: powershell
run: |
.\probes\windows\17-resolution\probe.ps1 -Label ci -SkipChromium
- name: Run the actionability probe
shell: powershell
run: |
.\probes\windows\18-actionability\probe.ps1 -Label ci -SkipChromium
- name: Run the semantic-actions probe
shell: powershell
run: |
.\probes\windows\19-semantic-actions\probe.ps1 -Label ci
- name: Run the input-synthesis probe
shell: powershell
run: |
.\probes\windows\20-input-synthesis\probe.ps1 -Label ci
- name: Run the system-lifecycle probe
shell: powershell
run: |
.\probes\windows\21-system-lifecycle\probe.ps1 -Label ci
- name: Run the capture-clipboard probe
shell: powershell
run: |
.\probes\windows\22-capture-clipboard\probe.ps1 -Label ci
- name: Run the signals-menus probe
shell: powershell
run: |
.\probes\windows\23-signals-menus\probe.ps1 -Label ci
- name: Run the fixture-toolchain probe
shell: powershell
run: |
.\probes\windows\24-fixture-e2e\01-fixture-toolchain.ps1 -Label ci
- name: Run the cell-role stock-DataGridView probe
shell: powershell
run: |
.\probes\windows\24-fixture-e2e\09-cell-role-stock-dgv.ps1 -Label ci
- name: Run the hosted modern-capture probe
shell: powershell
run: |
.\probes\windows\24-fixture-e2e\10-hosted-modern-capture.ps1 -Label ci
- name: Run the archive-and-download-tools probe
shell: powershell
run: |
.\probes\windows\25-packaging\01-archive-and-download-tools.ps1 -Label ci
- name: Run the npm-global-install probe
shell: powershell
run: |
.\probes\windows\25-packaging\02-npm-global-install.ps1 -Label ci
- name: Run the motw-and-execution probe
shell: powershell
run: |
.\probes\windows\25-packaging\03-motw-and-execution.ps1 -Label ci
- name: Run the cdylib-artifacts probe
shell: powershell
run: |
.\probes\windows\25-packaging\04-cdylib-artifacts.ps1 -Label ci
- name: Run the shell-surface reach probe
shell: powershell
run: |
.\probes\windows\26-shell-surfaces\probe.ps1 -Label ci
- name: Run the notifications shape and listener probe
shell: powershell
run: |
.\probes\windows\26-shell-surfaces\02-notifications.ps1 -Label ci
- name: Run the tray probe
shell: powershell
run: |
.\probes\windows\26-shell-surfaces\03-tray.ps1 -Label ci
- name: Run the frame-identity probe
shell: powershell
run: |
.\probes\windows\26-shell-surfaces\04-frame-identity.ps1 -Label ci
- name: Run the shell platform-cost probe
shell: powershell
run: |
.\probes\windows\26-shell-surfaces\06-cost.ps1 -Label ci
- name: Run the contract-decisions probe
shell: powershell
run: |
.\probes\windows\27-contract-decisions.ps1 -Label ci
- name: Run the elevation-required probe
shell: powershell
run: |
.\probes\windows\27-elevation-required.ps1 -Label ci
- name: Run the chromium-exposure probe
shell: powershell
run: |
.\probes\windows\28-chromium-exposure.ps1 -Label ci
- name: Run the tray-read-diagnosis probe
shell: powershell
run: |
.\probes\windows\28-tray-read-diagnosis.ps1 -Label ci
- name: Fetch the base ref for the hunk-index metric
shell: powershell
continue-on-error: true
run: |
git fetch --no-tags --depth=1 origin main:refs/remotes/origin/main
- name: Run the ledger completeness gate
shell: powershell
run: |
.\probes\windows\13-ledger-check.ps1
- name: Redact and gate the measured captures
id: redaction-gate
if: ${{ !cancelled() }}
shell: powershell
run: powershell -NoProfile -ExecutionPolicy Bypass -File .\scripts\check-capture-redaction.ps1
- name: Upload the measured captures
if: ${{ !cancelled() && steps.redaction-gate.outcome == 'success' }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: windows-capability-probe-captures
path: |
probes/windows/14-ci-capability/captures/*-ci.json
probes/windows/15-vocabulary/captures/*-ci.json
probes/windows/16-observation/captures/*-ci.json
probes/windows/17-resolution/captures/*-ci.json
probes/windows/18-actionability/captures/*-ci.json
probes/windows/19-semantic-actions/captures/*-ci.json
probes/windows/20-input-synthesis/captures/*-ci.json
probes/windows/21-system-lifecycle/captures/*-ci.json
probes/windows/22-capture-clipboard/captures/*-ci.json
probes/windows/23-signals-menus/captures/*-ci.json
probes/windows/24-fixture-e2e/captures/*-ci.json
probes/windows/25-packaging/captures/*-ci.json
probes/windows/26-shell-surfaces/captures/*-ci.json
probes/windows/captures/13-ledger-check/*.json
probes/windows/captures/27-*/*.json
probes/windows/captures/28-*/*.json
if-no-files-found: warn