Skip to content

📝 Fix API documentation markup and notebook builds - #1088

Merged
simon1hofmann merged 8 commits into
mainfrom
codex/bench-documentation-fixes
Oct 21, 2026
Merged

simon1hofmann merged 8 commits into
mainfrom
codex/bench-documentation-fixes

Conversation

@simon1hofmann

@simon1hofmann simon1hofmann commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

🤖 AI text below 🤖

Description

Fix Shor-code ket markup, benchmark error indentation, and configuration attribute documentation. Add heading anchors, expose generated version documentation, ignore private callable aliases as cross-reference targets, and serialize notebook-backed documentation generation.

Extracted from #1027 so this change can land independently of MQT Core 4.2. Original code authorship is retained.

Validation: Fresh HTML/Markdown builds passed with sphinx-llm 1.0 and 1.1; all 74 per-page Markdown files were byte-for-byte identical. Version 1.1 reports existing unsupported-node warnings (upstream #153). The final documentation build and all lint hooks passed. Type checking used Python 3.14.

GPT-6 via Codex assisted with extraction, tests, and this description.

Checklist

  • The pull request only contains commits that are focused and relevant to this change.
  • I have added appropriate tests that cover the new/changed functionality.
  • I have updated the documentation to reflect these changes.
  • I have added entries to the changelog for any noteworthy additions, changes, fixes, or removals.
  • I have added migration instructions to the upgrade guide (if needed).
  • The changes follow the project's style guidelines and introduce no new warnings.
  • The changes are fully tested and pass the CI checks.
  • I have reviewed my own code changes.

If PR contains AI-assisted content:

  • Any agent that created, edited, or submitted GitHub content was explicitly authorized for that scope, as required by our AI Usage Guidelines.
  • Every agent-authored or agent-edited public text body begins with the visible disclosure 🤖 *AI text below* 🤖 (titles are exempt).
  • I have disclosed AI assistance in the PR description.
  • I confirm that I have personally reviewed and understood all AI-generated content, and accept full responsibility for it.

burgholzer and others added 2 commits October 21, 2026 15:41
Extracted from #1027; retain original authorship.

Co-authored-by: Simon Hofmann <simon.t.hofmann@tum.de>
Assisted-by: GPT-6 via Codex
@github-project-automation github-project-automation Bot moved this to In Progress in MQT Applications Oct 21, 2026
@simon1hofmann simon1hofmann added documentation Improvements or additions to documentation fix Fixes something that isn't working mqt.bench Issues that affect mqt.bench python Pull requests that update Python code labels Oct 21, 2026
@simon1hofmann simon1hofmann mentioned this pull request Oct 21, 2026
11 of 12 tasks
@codecov

codecov Bot commented Oct 21, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@simon1hofmann
simon1hofmann force-pushed the codex/bench-documentation-fixes branch from 4b80544 to 1765826 Compare October 21, 2026 13:58
simon1hofmann added a commit that referenced this pull request Oct 21, 2026
Use the same notebook build ordering as #1088 to prevent concurrent HTML and Markdown builds from deleting each other’s example output.
@simon1hofmann
simon1hofmann marked this pull request as ready for review October 21, 2026 14:09

@burgholzer burgholzer left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM except for one small detail that is likely worth another look.

Comment thread pyproject.toml Outdated
simon1hofmann and others added 3 commits October 21, 2026 18:01
sphinx-llm 1.0 and 1.1 produce identical per-page Markdown. Version 1.1
exposes existing unsupported-node warnings; the cap does not restore
missing content.

Refs: NVIDIA/sphinx-llm#153
Signed-off-by: simon1hofmann <119581649+simon1hofmann@users.noreply.github.com>
@simon1hofmann
simon1hofmann merged commit 00c3085 into main Oct 21, 2026
14 checks passed
@simon1hofmann
simon1hofmann deleted the codex/bench-documentation-fixes branch October 21, 2026 16:41
@github-project-automation github-project-automation Bot moved this from In Progress to Done in MQT Applications Oct 21, 2026
simon1hofmann added a commit that referenced this pull request Oct 21, 2026
* 🐛 Preserve IonQ and Rigetti native gate semantics

Extracted from #1027; retain original authorship.

Co-authored-by: Simon Hofmann <simon.t.hofmann@tum.de>
Assisted-by: GPT-6 via Codex

* 📝 Reference #1086 in changelog

* ✨ Add fractional Heron compilation targets

Extracted from #1027; retain original authorship.

Co-authored-by: Simon Hofmann <simon.t.hofmann@tum.de>
Assisted-by: GPT-6 via Codex

* 📝 Reference #1087 in changelog

* ✅ Keep native regression tests in the target test module

Cover bounded target aliases and legacy Qiskit serialization. Extract registry isolation from #1027. Remove the extra test file.

Co-authored-by: Simon Hofmann <simon.t.hofmann@tum.de>

* ✅ Keep fractional target tests in the existing test module

Cover old Qiskit rejection and narrower caller-defined RZZ bounds.

Co-authored-by: Simon Hofmann <simon.t.hofmann@tum.de>

* 🐛 Preserve physical placements shared by native aliases

Keep equivalent RX aliases on every supported physical site, including targets that also expose a standard X gate. Retain phase-correct local lowering and add mapped regressions.


Assisted-by: GPT-6 via Codex

* ✅ Check mixed aliases at native and mapped levels

* 🐛 Serialize documentation builds that share notebook output

Use the same notebook build ordering as #1088 to prevent concurrent HTML and Markdown builds from deleting each other’s example output.

* Test minimum Qiskit support and complete mirror layouts

* Test the fractional target compatibility error on current Qiskit

* ♻️ Simplify fractional Heron registration and angle wrapping

Use a shared packaging.version check while keeping Qiskit 2.1.2 support. Use theta parameters, simplify the local wrapping traversal and phase correction, and cover all optimization levels and large angles.

Assisted-by: GPT-6 via Codex

* ✅ Verify native gate constraints and restore minimums session

Cover arbitrary U/RX compilation at all optimization levels for native and mapped targets, and check session equivalences remain unchanged. Keep local lowering because preset passes do not consistently enforce fixed R/RX angles. Restore noxfile.py to main.

Assisted-by: GPT-6 via Codex

* ⬆️ Require Qiskit 2.2.3 and simplify fractional targets

Register fractional Heron targets unconditionally, remove obsolete compatibility guards and tests, and document the new Qiskit minimum and upgrade command.

Assisted-by: GPT-6 via Codex

---------

Co-authored-by: Lukas Burgholzer <burgholzer@me.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation fix Fixes something that isn't working mqt.bench Issues that affect mqt.bench python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants