v0.0.24
Tested against DBOS 2.19.0 — see
tested_dbos_versioninGET /versionanddbos-argus --version. Other DBOS versions may still work; the in-app connection indicator surfaces any schema mismatches.
Changed
- Pickle decoder now renders unknown classes (Pydantic
BaseModel,
dataclasses, plain Python objects) as{"__class__": "module.Name", ...fields}instead of falling back to the raw base64 blob. The
unpickler swaps unknown classes for an inert_OpaqueObjectproxy that
captures BUILD state via__setstate__— the user's module is never
imported and no user code runs, so the existing safety guarantee
holds (covered by a regression test that constructs a pickle stream
resolvingos.systemand verifies it doesn't execute). Pydantic v2's
envelope state (__pydantic_fields_set__/__pydantic_extra__/
__pydantic_private__) is stripped so the UI sees just the model's
real fields. - README:
uvx dbos-argusexamples now usedbos-argus@latestso each
invocation re-resolves the version instead of reusing the wheeluvx
cached the first time.