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