|
1 | 1 | # CHANGELOG |
2 | 2 |
|
3 | 3 |
|
| 4 | +## v0.16.1 (2026-06-12) |
| 5 | + |
| 6 | +### Bug Fixes |
| 7 | + |
| 8 | +- Repair 8 latent import/kwarg bugs; add import-integrity and packaging guards |
| 9 | + ([#64](https://github.com/OpenAdaptAI/openadapt-ml/pull/64), |
| 10 | + [`04e9e67`](https://github.com/OpenAdaptAI/openadapt-ml/commit/04e9e678f754c51e8670bd439d1c396ff9ee22cd)) |
| 11 | + |
| 12 | +Follow-up to OpenAdaptAI/OpenAdapt#999: green CI shipped a fully broken CLI because no test |
| 13 | + exercised lazy imports, internal call seams, or the built wheel. This adds three guards and fixes |
| 14 | + everything they caught on current main: |
| 15 | + |
| 16 | +New tests (dependency-free, <3s total): - tests/test_import_integrity.py::test_no_phantom_imports — |
| 17 | + AST-walks every `from openadapt_ml.x import y` (including inside function bodies) and verifies y |
| 18 | + exists in x - tests/test_import_integrity.py::test_no_phantom_kwargs — verifies keyword args |
| 19 | + passed to internal functions exist in their signatures - tests/test_packaging.py — builds the |
| 20 | + wheel and asserts bundled configs, core modules, and version match |
| 21 | + |
| 22 | +Latent bugs the new tests caught on main, fixed here: - cloud/local.py: cmd_serve called |
| 23 | + regenerate_local_dashboard with a keep_polling kwarg that no longer exists (dashboard regeneration |
| 24 | + failed on every serve, downgraded to a warning) - scripts/compare.py + |
| 25 | + experiments/demo_prompt/run_experiment.py: capture_to_episode(goal=) — same kwarg bug as #999 bug |
| 26 | + 3, two more call sites - ingest/__init__.py: re-exported capture_to_session and |
| 27 | + load_captures_as_sessions, which don't exist; the except ImportError guard meant |
| 28 | + capture_to_episode was silently never exported either - evals/grounding.py: TYPE_CHECKING import |
| 29 | + from missing module openadapt_ml.data.types (Episode lives in openadapt_ml.schema) - |
| 30 | + cloud/azure_inference.py: imported QwenVLAdapter from missing module openadapt_ml.adapters.qwen |
| 31 | + (lives in models.qwen_vl) and constructed it with a non-existent model_name kwarg (needs |
| 32 | + from_pretrained); imported generate_comparison which was refactored away — restored as a thin |
| 33 | + wrapper over generate_comparison_data/_html in compare.py |
| 34 | + |
| 35 | +Also: - release.yml: file/append a GitHub issue when the release workflow fails. Releases failed |
| 36 | + silently Mar-Jun 2026 while PyPI went stale, which is what forced #999's reporter onto git |
| 37 | + installs - pyproject: add build to the dev extra for the packaging tests |
| 38 | + |
| 39 | +Co-authored-by: Claude Fable 5 <noreply@anthropic.com> |
| 40 | + |
| 41 | + |
4 | 42 | ## v0.16.0 (2026-06-12) |
5 | 43 |
|
6 | 44 | ### Bug Fixes |
|
0 commit comments