SIGN IN SIGN UP

Language interoperability (#574)

Support for enqueuing and interacting with workflows across languages.
Centers on use of simple JSON in the workflow_status and other tables,
adds a column to distinguish the serialization format.

Portable enqueue can be done via DBOSClient and direct INSERT into the
WF status table. start_workflow will also start a workflow with portable
serialization format if the registration indicates such. Portable WFs
will set their return value, events, and stream writes in portable
format, but this can be overridden when calling DBOS.set_event,
DBOS.write_stream, and DBOS.send, allowing full interaction across
languages.

Obviously, this tightens the rules about arguments and return values...
for portable workflows the rule is "must be serializable as plain JSON"
not "must be serializable with pickle".
C
chuck-dbos committed
12049d833dddbcaaea18d921149e2c33aad37ecf
Parent: 90e62f8
Committed by GitHub <noreply@github.com> on 2/21/2026, 12:48:19 AM