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
| 4.1 | Replace substring-match dispatch with `isinstance(SamplerNotReadyError)`|`refactor(server): use SamplerNotReadyError instead of substring-match`|
61
+
| 4.1 | Wrap training-call errors as `TrainingError` with context |`refactor(trainer): wrap training-call errors as TrainingError with context`|
62
+
| 4.2 |`py.typed` PEP 561 marker |`chore(packaging): add py.typed marker`|
63
+
| 4.3 | Populate top-level `__init__.py` (public API + aliases) |`feat(api): re-export public symbols + stable aliases in __init__.py`|
64
+
| 4 (D1) |`service_client_factory` DI seam |`feat(trainer): preflight reachability checks ...` (introduced) + `feat(trainer): service_client_factory DI seam for test/extension` (finalised) |
65
+
| 4 (D2) |`schema_version` field with upgrade-path validation |`feat(config): schema_version field with upgrade-path validation`|
0 commit comments