✨ Export stable metadata from QDMI device targets - #475
Merged
Conversation
Contributor
|
This was referenced Jul 27, 2026
burgholzer
added a commit
that referenced
this pull request
Jul 28, 2026
🤖 *AI text below* 🤖 ## Description Make the reusable template CI build generated projects against the exact QDMI repository owner and revision being tested. The job previously generated a standalone project and then fetched mutable `develop`. This caused QDMI #475 to fail because its generated project used functionality introduced by that pull request but absent from `develop`. The workflow now passes the pull request head owner and SHA to the direct CMake builds and forwards the same `CMAKE_ARGS` into cibuildwheel's Linux containers. Push and merge-queue events fall back to the current repository owner and event SHA. The generated template and its normal dependency defaults remain unchanged. This is a CI-only correction that also makes future template changes test their exact source revision. Related to #475. ## Validation - `uvx prek run -a` - Generated the #475 device template and built it as a standalone CMake project against exact head `c5564bc7a031f6716a4e7bc105ad7aadb4cd79f9` - Built the generated Python wheel with the same exact-revision `CMAKE_ARGS` - Independent read-only review of the final diff ## Checklist - [x] The pull request only contains commits that are focused and relevant to this change. - [x] The reusable template CI job directly covers the changed behavior. - [x] Documentation changes are not required for this CI-only correction. - [x] A changelog entry is not warranted because there is no user-facing behavior change. - [x] Migration instructions are not needed. - [x] The changes follow the project's style guidelines and introduce no new warnings. - [x] The changes passed the relevant local validation listed above. - [x] The code changes have been independently reviewed. **If PR contains AI-assisted content:** - [x] AI assistance is disclosed at the beginning of this description. - [x] The AI-assisted commit includes the required `Assisted-by` footer. - [x] A human maintainer has personally reviewed and understood all AI-assisted content and accepts responsibility for it.
Add a QDMI-owned CMake helper for publishing stable device IDs and symbol prefixes on exported device targets. Use it in the C++ example and generated device projects so consumers can integrate them without project-specific loader metadata. Assisted-by: GPT-5.6-sol via Codex
Record the user-facing template and example integration with PR and author attribution. Assisted-by: GPT-5.6-sol via Codex
burgholzer
force-pushed
the
agent/qdmi-core-1912
branch
from
July 29, 2026 12:58
c5564bc to
f198f5a
Compare
burgholzer
marked this pull request as ready for review
July 29, 2026 13:43
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 AI text below 🤖
Description
Add the QDMI-owned
configure_qdmi_device_targetCMake helper for publishing adevice target's stable ID and symbol prefix through the neutral
QDMI_DEVICE_IDandQDMI_DEVICE_PREFIXtarget properties. The properties arepreserved when the target is exported and installed.
Update the C++ example and generated device template to use the helper. Newly
generated projects receive an overridable
<PREFIX>_QDMI_DEVICE_IDwith thedefault
<lowercase-prefix>.default, and document why that identifier shouldremain stable.
This is the QDMI side of
MQT Core #1912,
which is the first consumer of this metadata. Device implementations do not
gain a build-time or runtime dependency on MQT Core.
Checklist
If PR contains AI-assisted content:
Assisted-by: [Model Name] via [Tool Name]footer.