Milestones
List view
This document is a ready-to-use, dependency-ordered set of GitHub issues for implementing a real **Variational Quantum Eigensolver (VQE)** as the first consumer of reusable iterative hybrid infrastructure in Eigen OS. It is an implementation backlog, not a proposal to add an H2-specific execution path. ## Discovery map (completed before implementation) ### Existing reusable components | Area | Current component | Reuse decision / gap | |---|---|---| | Eigen-Lang surface | `src/services/eigen-compiler/src/eigen_lang/__init__.py` provides `Param`, `Observable`, `ExpectationValue`, and `minimize`. | Preserve source compatibility where practical, but replace the current immediate placeholder `OptimizationResult(fun=0.0, x=initial_params)` semantics with declarative workflow lowering. | | Compiler | `src/services/eigen-compiler/src/eigen_compiler/compiler.py` retains parameter names in AQO and collects expectation annotations. | Extend it with a deterministic, generic iterative-hybrid IR; the current `hybrid_plan_marker` only says `minimize` is “expanded_by kernel”. | | Hybrid execution | `src/rust/crates/eigen-kernel/src/rpc.rs` dispatches a compiled AQO artifact once through `execute_via_driver_manager`. | Reuse the Kernel/QFS/Driver Manager path, but introduce a generic iterative engine above the one-execution path. | | Backend boundary | `proto/eigen/internal/v1/driver_manager_service.proto` and Driver Manager `BaseDriver` expose normalized `ExecuteCircuit`. | Extend this common contract only for capabilities needed by parameter binding, expectation execution, and noise; do not import simulator APIs from VQE orchestration. | | Reference simulator | `src/services/driver-manager/src/driver_manager/simulator_driver.py` executes AQO and has limited annotation-based expectation metadata. | Generalize the observable model and make execution-affecting noise/capability reporting explicit. | | Plugin manifests | `src/rust/apps/cli/src/main.rs` already validates versioned `optimizer` manifests and lifecycle states. | Use this official manifest/compatibility path; it is not yet an executable optimizer SDK/runtime boundary. | | Durable replay and checkpoints | `src/rust/crates/eigen-kernel/src/durable_job_store.rs` and QFS checkpoint contracts provide replay/persistence primitives. | Reuse envelopes and QFS ownership while adding per-iteration optimizer state/checkpoints and resume cursor semantics. | | Existing coverage | compiler parameterized-VQE golden fixtures, Driver Manager simulator tests, Kernel durable replay tests, and HybridWorkflow JobSpec tests exist. | Keep workload-family compatibility and add end-to-end iterative-VQE regression coverage. | ### New generic components 1. **Iterative Hybrid Workflow IR** — deterministic declarative contract for parameter space, objective, optimizer, convergence, and execution. 2. **Parameter binding and quantum expectation evaluator** — binds stable parameter IDs to a compiled ansatz, executes through Driver Manager, and evaluates a reusable Pauli Hamiltonian. 3. **Iterative Hybrid Workflow Engine** — generic initialize/evaluate/step/ checkpoint/resume/converge/finalize loop; it must not know VQE or H2. 4. **Optimizer plugin execution contract** — lifecycle-integrated optimizer plugin API plus a deterministic COBYLA-compatible reference plugin. 5. **Convergence, iteration lineage, result, artifact, and telemetry contracts**. ### Extension points and contracts that must not change - The Driver Manager remains the sole provider/simulator boundary. Optimizer plugins receive no provider secrets and do not execute circuits themselves. - Plugin manifests retain `plugin_id`, `plugin_type`, `plugin_version`, `plugin_api_version`, and `eigen_os_compatibility`; compatibility follows the repository SemVer policy. - Eigen-Lang compilation remains static AST lowering: no `exec`, `eval`, or user-Python callback may implement the optimization loop. - Existing `QuantumJob`, `HybridWorkflow`, `DistributedJob`, `BenchmarkJob`, `PipelineJob`, and `ReplayJob` semantics remain compatible. Additive fields must be optional and must not turn a non-iterative job into a VQE job. - QFS remains the authority for durable artifacts/checkpoint envelopes; large histories stay out of protobuf result payloads. --- ## Shared completion block Every implementation issue below MUST retain and complete this block before closure. ~~~markdown ## Summary - ## Validation - [ ] Tests added/updated - [ ] Documentation updated (if contracts/behavior changed) ## Versioning & Compatibility (required) - **Version Impact**: <!-- MAJOR | MINOR | PATCH | NONE --> - **Affected Interfaces**: <!-- Eigen-Lang | AQO/Hybrid IR | Kernel | Driver Manager | Plugin envelopes | QFS | Results/CLI | Metrics --> - **Compatibility**: <!-- Backward-compatible | Breaking (requires MAJOR) --> - **Breaking Marker**: <!-- true | false --> - **Migration Notes**: <!-- Required when Breaking Marker=true (or Version Impact=MAJOR); otherwise "None" is allowed --> ## Release Notes Draft ```markdown ### Added - ### Changed - ### Fixed - ```
No due date•20/20 issues closed- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed
- No due date•3/3 issues closed