What's Changed
Bug Fixes ๐
- Retry
record_bulk_task_run_eventsonIntegrityErrorby @devin-ai-integration[bot] in #21813 - Set custom flow run names before Running events by @devin-ai-integration[bot] in #21803
- Warn when nested
ThreadPoolTaskRunnersubmission would deadlock by @devin-ai-integration[bot] in #21800
Development & Tidiness ๐งน
- fix(ci): add apt retry config to old-sqlite.Dockerfile by @devin-ai-integration[bot] in #21814
- fix(tests): use thread-based pytest-timeout for test_timeout_stops_execution_at_next_task_for_sync_flows by @devin-ai-integration[bot] in #21819
Documentation ๐
- Add new
flow.visualizeoutput format for Mermaid by @znicholasbrown in #21786
Uncategorized
- Fix V2 concurrency lease release errors by @devin-ai-integration[bot] in #21797
- docs: document IntegrityError retry-and-raise contract for record_bulk_task_run_events by @github-actions[bot] in #21815
- docs: clarify that custom flow_run_name is set before Running state by @github-actions[bot] in #21817
- docs: document state-transition metadata ordering invariant in flow engine by @github-actions[bot] in #21818
- Add flow engine module entrypoint by @desertaxle in #21799
- Run prepared pyproject workspaces with uv by @desertaxle in #21801
- docs: document flow_engine.py subprocess module entrypoint in SDK AGENTS.md by @github-actions[bot] in #21820
- docs: document auto-uv command selection in WorkspaceResolvingEngineCommandStarter by @github-actions[bot] in #21821
- docs: document ThreadPoolTaskRunner pickling and nested-submit deadlock pitfalls by @github-actions[bot] in #21822
- docs: document ThreadPoolTaskRunner nested-submit deadlock risk and mitigations by @github-actions[bot] in #21823
- docs: update visualization.py description to include Mermaid backend by @github-actions[bot] in #21824
- Route server default result storage through runtime resolution by @zzstoatzz in #21759
Full Changelog: 3.6.30.dev3...3.6.30.dev4