Problem
GPU CI currently falls back from an unavailable requested GPU topology to a different GPU architecture and GPU count.
For example, the A100 matrix job requests:
2 × NVIDIA A100 80GB PCIe
TARGET_SM=8.0
When capacity is unavailable, ci/run_gpu_ci.sh falls back to:
1 × NVIDIA A40
actual SM=8.6
The script then correctly rejects the mismatch:
FATAL: requested TARGET_SM=8.0 (sm_8.0) but provisioned GPU is sm_8.6. Refusing to build mismatched kernels.
This exits before the extension build or pytest suite runs.

Problem
GPU CI currently falls back from an unavailable requested GPU topology to a different GPU architecture and GPU count.
For example, the A100 matrix job requests:
2 × NVIDIA A100 80GB PCIe
TARGET_SM=8.0
When capacity is unavailable, ci/run_gpu_ci.sh falls back to:
1 × NVIDIA A40
actual SM=8.6
The script then correctly rejects the mismatch:
FATAL: requested TARGET_SM=8.0 (sm_8.0) but provisioned GPU is sm_8.6. Refusing to build mismatched kernels.
This exits before the extension build or pytest suite runs.