
# Changelog v2.0.1 (April 28, 2026): file replacement to include the v2.0 features described in the changelog (src/srp_hubo/ library, conformance harness, JSON schemas, parallel tempering, Dolan-Moré profiles, refreshed result CSVs). The original v2.0.0 upload contained the pre-refactor code. Also adds the manuscript PDF (main_tqe.pdf). All notable changes to the SRP-HUBO artifact are documented in this file.The format is based on Keep a Changelog; the artifact uses[semantic versioning](https://semver.org). ## [2.0.0] - 2026-04-22 (TQE major-revision response) ### Added- `src/srp_hubo/` library subpackage (Phase-4 refactor): - `Solver` ABC + `register_solver` decorator + 14 built-in adapters under paper-stable names (`bals`, `sa`, `tabu`, `ga`, `pt`, `exact`, `continuous`, `milp_round`, `bsb`, `qaoa_vanilla`, `qaoa_warm`, `qaoa_bals_warm`, plus two BALS ablations). - `check_solver()` conformance harness with 9 checks (instantiability, return type, shape/dtype/range, `f_lambda` consistency, runtime sanity, determinism, scale-invariance of the gap). - Draft-07 JSON schemas for serialised instances and result certificates. - `srp-hubo-lint` CLI (schema + semantic validation) and `srp-hubo-check` CLI (conformance driver). - 25-test pytest suite covering objective math, gap scale-invariance, BALS, the conformance harness, and schema round-tripping (< 2 s).- HiGHS / CBC open-source MILP backend in `src/miqp.py`; backend is auto-resolved at call time and reported through `SolverResult.meta["backend_used"]`. Gurobi remains opt-in.- `docs/developer.md`: architecture, solver-implementation guide, CLI reference, deferred-items list.- Dolan-Moré performance profile (`scripts/27_dolan_more.py`, `results/dolan_more_*.csv`, §VI-G of the paper). ### Changed- Penalty / Holm-Bonferroni family expanded from 10 pairs to 11 pairs (added BALS-warm QAOA vs. BALS).- Proposition 2 "Conditional scale invariance" replaces the earlier unconditional statement; ε-floor regime boundary is now explicit.- Paper-visible artifact tag bumped from `srp-hubo:v1.0` to `srp-hubo:v2.0`; new Zenodo DOI minted for v2.0 (see `CITATION.cff`). ### Fixed- `jsonschema` draft-version compatibility: schemas now declare Draft-07 so the bundled validator works under `jsonschema>=3.2`. ## [1.0.0] - 2026-04-19 (TQE submission) ### Added- Four synthetic benchmark regimes (gaussian / heavy / skewed / stress) generated by a single-factor model with configurable skew and excess kurtosis, in `src/instances.py::build_synthetic_panel`.- `scripts/19_bootstrap_variance.py`: 10k-resample bootstrap CIs on median gap + BALS-warm non-monotonic-p diagnosis.- `scripts/20_q_grid.py`: full $5\times5$ $(q_2, q_3)$ stress grid.- `scripts/21_mps_scaling_deep.py`: MPS scaling to $p \le 3$, $\chi \le 128$, $n \le 24$.- `scripts/22_budget_parity.py`: compute-budget Pareto sweep for BALS/SA/GA/bSB/QAOA.- `scripts/23_run_synthetic_benchmark.py`: runs the full solver ladder on the four synthetic regimes.- `scripts/24_tqe_statistics.py`: Wilcoxon signed-rank tests with Holm-Bonferroni adjustment; rank-biserial effect sizes; Wilson-score exact-hit CIs.- `scripts/25_tqe_artifacts.py`: TQE-specific figures and LaTeX macros.- Per-solver `n_evals` instrumentation in BALS/SA/GA/bSB so matched- evaluation-count comparisons are possible.- Dockerfile, pinned `requirements.txt`, CITATION.cff, LICENSE, this CHANGELOG. ### Changed- `paper/main_tqe.tex`: new journal-length paper targeting IEEE Transactions on Quantum Engineering. ## [0.9.0] - 2026-04-15 (QCE26 RESP revision) Initial revision for the IEEE Quantum Week conference track. See`paper/main_resp.tex` for the submitted version.
