You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Highlights
Expanded the enrichment toolchain for the Köln demo: signed arithmetic, array-based basis/angle encodings, richer measurement handling, and Qiskit-backed state preparation with GHZ/W/Bell presets (app/enricher/encode_value.py, app/enricher/operator.py, app/enricher/qiskit_prepare.py).
Introduced first-class request metadata and payload persistence, plus automated database migrations so existing installs pick up the new schema on startup (app/db_migrations.py, app/services.py).
Added
Qiskit prepare-state strategy with optional dependency detection and sample scripts for GHZ, W, Bell, and uniform states (scripts/qiskit-enrichment/*).
Signed basis addition requests, angle-array encoders, and associated fixtures/tests covering negative inputs and mixed encodings (tests/enricher/test_encode_value.py, scripts/basis_signed_addition_request.json).
Schema migrations that add the compilation target, request metadata, and raw payload storage to the persistence layer (app/db_migrations.py).
QISKIT_COMPAT_MODE environment toggle for Qiskit-friendly post-processing (.env.template).
Changed
Refactored encode/measure/operator components to share normalization utilities, clamp bounds consistently, and expose richer metadata (app/enricher/utils.py, app/enricher/measure.py).
Reworked CompileRequest models to cover new node types, data coercion, and validation rules used by the workflow pipeline (app/model/CompileRequest.py).
Updated pre-processing (IO parsing, size casting) to cope with signed integers and the expanded node vocabulary (app/transformation_manager/pre/*).
main.py now stores original request payloads, propagates optimization metadata, and resolves the active compilation target per processor.
Stabilized addition workflows with signed inputs and enforced measurement index validation, ensuring enrichment succeeds for demo scenarios (app/enricher/operator.py, app/transformation_manager/pre/io_parser.py).
Normalized basis and angle encodings so array inputs retain ordering and normalization across the enrichment stack (app/enricher/encode_value.py).
Docs & Examples
README updates plus a scripts README that documents the new demo requests and helpers (scripts/README.md).
Upgrade Notes
Pull the release and run uv sync to pick up pinned dependencies (install qiskit ≥ 2.0 if you need the new prepare-state enrichment).
Ensure the application can apply the bundled migrations on startup; otherwise run app/db_migrations.apply_migrations manually against your database.
Set QISKIT_COMPAT_MODE in your environment when Qiskit-aligned output is required.