✨ Add exact payload execution capability metadata - #508
Draft
simon1hofmann wants to merge 6 commits into
Draft
Conversation
Codecov Report❌ Patch coverage is
@@ Coverage Diff @@
## v1.4 #508 +/- ##
=======================================
+ Coverage 90.6% 91.1% +0.4%
=======================================
Files 6 7 +1
Lines 749 800 +51
Branches 146 164 +18
=======================================
+ Hits 679 729 +50
- Misses 70 71 +1
🚀 New features to boost your workflow:
|
12 tasks
burgholzer
requested changes
Aug 23, 2026
burgholzer
left a comment
Contributor
There was a problem hiding this comment.
Thanks @simon1hofmann for kickstarting this.
I already pushed a couple of changes here to drive this further.
Furthermore, I collected some feedback in the comments as part of this review. I'll hand these to my Codex session now to iterate on them.
burgholzer
force-pushed
the
codex/program-format-capabilities
branch
3 times, most recently
from
August 23, 2026 18:58
8ffcf50 to
4356c0f
Compare
burgholzer
added a commit
that referenced
this pull request
Aug 24, 2026
Bring the complete QDMI #508 custom enum range into the multi-program job stack. Assisted-by: GPT-5.6 Sol via Codex
burgholzer
reviewed
Aug 24, 2026
burgholzer
left a comment
Contributor
There was a problem hiding this comment.
Alright. This is looking pretty good to me already and I see no bigger blockers. Let's see how the downstream integration goes.
burgholzer
approved these changes
Aug 24, 2026
burgholzer
left a comment
Contributor
There was a problem hiding this comment.
Formally approving this for now to unblock the stack.
Add a public per-format capability profile that distinguishes unknown, incomplete, and known-empty optional feature sets. Document the format baselines and cover the example-device property implementation. Assisted-by: GPT-5 via Codex
Add the pull request and contributor references required by the QDMI changelog conventions. Assisted-by: GPT-5 via Codex
Replace the legacy format enum with exact descriptors, descriptor-scoped optional features and typed constraints, and format-defined result ordering. Preserve the QIR 1 migration while separating newer QIR and output-schema versions. Assisted-by: GPT-5.6 Sol via Codex
Define canonical program-format value semantics, exact text and binary framing, logical output order, custom enum ranges, and translation and retrieval ownership. Assisted-by: GPT-5.6 Sol via Codex
Add a terminal enumerator to every extensible enum so the complete declared custom range is well-defined in C++. Assisted-by: GPT-5.6 Sol via Codex
Suppress Clang enum-membership warnings only at tests that exercise unnamed valid and invalid API enum values. Assisted-by: GPT-5.6 Sol via Codex
burgholzer
force-pushed
the
codex/program-format-capabilities
branch
from
September 5, 2026 14:30
75cfc34 to
91955f3
Compare
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 🤖
Design leads: @burgholzer and @simon1hofmann.
Description
Prototype payload-specific execution capabilities. This is a non-blocking QDMI 1.4 candidate, not a settled contract or a prerequisite for the other workstreams.
Design gate: #523 must record the format/encoding, supported/native operations, classical capabilities, execution guarantees and opaque-program decisions before this PR is merge-ready. Core requirements and compiler/SDK consumers are tracked in munich-quantum-toolkit/core#2365; provider counterexamples are linked as subissues of #523.
This PR remains independently based on
v1.4. Multi-program jobs moved to #509 using the existing enum. Replaceable drivers (#511) and metadata removal (#512 → #513) do not depend on this prototype.Specifically, this pull request:
QDMI_ERROR_NOTSUPPORTEDas unknown optional-feature metadata, while a successful query returns the complete optional set, which may be empty;The fixed descriptor and feature records have a direct migration path to QDMI v2. Devices list each exact accepted descriptor; clients do not infer version compatibility.
No additional dependencies are required.
Previous prototype validation
The checks below describe the existing implementation, not a new validation run or approval of its design.
DOT_MULTI_TARGETSwarning.uvx prek run --all-files: passed.git diff --check: passed.AI assistance: OpenAI Codex assisted with implementation, review, testing, and this description.
Contract review requirements
Review the prototype against #523's device-and-format-specific capabilities, bounded OpenQASM/QIR feature vocabulary, custom-format support, and variable compilation boundaries. Supported/native operation levels and provider-neutral execution guarantees remain design decisions. Opaque pulse transport does not imply that QDMI already supplies all compiler-construction metadata.
The capability model is a priority for 1.4, not a release blocker. Before the interface change merges, link a working Core consumer and a demonstration with at least one existing provider, preferably both where applicable. Compatibility evidence suffices when a provider needs no changes. Development revisions may support these tests; published artifacts must use released dependencies.
Checklist
If PR contains AI-assisted content:
Assisted-by: [Model Name] via [Tool Name]footer.