Problem Statement
MQT Bench currently maintains device data manually. MQT Core now provides a generic QDMI driver and Python API that can query device properties directly.
Bench users should receive reproducible, offline device models without requiring provider credentials or QDMI dependencies. This also provides a credential-free solution for #663.
Concrete calibration snapshots, such as the IQM data added in Core #1992, could be hosted in Bench rather than Core.
Proposed Solution
Add a versioned, Bench-owned JSON catalog for hardware-device snapshots.
A release-only Python tool should:
- Load the QDMI-on-IQM and Amazon Braket QDMI devices through Core's raw QDMI API.
- Query sites, topology, operations, fidelities, durations, units, and provenance directly.
- Avoid using a Qiskit
Target as an intermediate snapshot format, since that conversion can discard device metadata.
- Store missing properties explicitly instead of inventing values.
- Fail visibly when operations or properties cannot be represented.
- Generate a reviewable snapshot PR before each Bench release.
Bench should reconstruct its Qiskit Target objects from these snapshots at runtime while preserving the existing get_device(...) API. Normal users should not need Core, QDMI libraries, provider SDKs, or credentials.
The refresh workflow should use a protected IQM token and preferably GitHub OIDC with a read-only AWS role. Secrets must only be available to trusted pre-release workflows and must never be written to snapshots or logs.
Direct IQM should be the authoritative source for IQM snapshots. Braket can initially provide its gate-model AQT, IonQ, and Rigetti devices. It does not replace Bench's IBM or Quantinuum devices, and analog devices such as QuEra Aquila remain out of scope.
After migration, Core should retain the generic QDMI infrastructure while its concrete IQM snapshots can be removed or reduced to test fixtures. Provider redistribution terms must be checked before calibration data is committed.
Problem Statement
MQT Bench currently maintains device data manually. MQT Core now provides a generic QDMI driver and Python API that can query device properties directly.
Bench users should receive reproducible, offline device models without requiring provider credentials or QDMI dependencies. This also provides a credential-free solution for #663.
Concrete calibration snapshots, such as the IQM data added in Core #1992, could be hosted in Bench rather than Core.
Proposed Solution
Add a versioned, Bench-owned JSON catalog for hardware-device snapshots.
A release-only Python tool should:
Targetas an intermediate snapshot format, since that conversion can discard device metadata.Bench should reconstruct its Qiskit
Targetobjects from these snapshots at runtime while preserving the existingget_device(...)API. Normal users should not need Core, QDMI libraries, provider SDKs, or credentials.The refresh workflow should use a protected IQM token and preferably GitHub OIDC with a read-only AWS role. Secrets must only be available to trusted pre-release workflows and must never be written to snapshots or logs.
Direct IQM should be the authoritative source for IQM snapshots. Braket can initially provide its gate-model AQT, IonQ, and Rigetti devices. It does not replace Bench's IBM or Quantinuum devices, and analog devices such as QuEra Aquila remain out of scope.
After migration, Core should retain the generic QDMI infrastructure while its concrete IQM snapshots can be removed or reduced to test fixtures. Provider redistribution terms must be checked before calibration data is committed.