Repository navigation
Releases
Releases · superdurable/dex
web/v1.45.0
Breaking Changes
- Each Flow type has its own definition revision. A request about a Flow type sends that Flow type's revision in X-Dex-Flow-Definition-Revision, from GET /api/flow-definitions/by-type?flowType=FLOW_TYPE or a GET /api/v2/catalog entry; a search of several Flow types sends theirs separated by commas. The catalog's top-level definitionRevision no longer passes the check. Reference.
- GET /api/flow-definitions lists definitions without their graphs. Read a Flow type's graphs from GET /api/flow-definitions/by-type?flowType=FLOW_TYPE. Reference.
- Dex Web older than 1.45 rejects a Flow Definition Graph with the new top-level generatedAt field written by dexcli 1.45; upgrade Dex Web together with dexcli. From 1.45, Dex Web ignores unknown top-level fields.
See the change log for all changes.
What's Changed
- Agents cores: a local directory media store for images by @longquanzheng in #1557
- Formal: prove failure transparency in Lean, with the paper section and docs page by @longquanzheng in #1555
- Claude Agent SDK adapters: do not store Claude Code last-prompt entries by @longquanzheng in #1561
- Agents CLI (Python): cache file-enabled tools before the session Flow is built by @longquanzheng in #1566
- Docs: stamp the 1.44.0 release lines for the five SDKs, web, and cli by @longquanzheng in #1576
- Agents CLI: dex-agents-claude-sdk command (Python and TypeScript) by @longquanzheng in #1562
- server-zd: deduplicate StartFlow retries before the ID reuse policy by @longquanzheng in #1559
- Java examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1577
- TypeScript examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1579
- Go examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1582
- Rust examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1583
- Python examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1580
- Paper: add Zheng Zheng as an author by @longquanzheng in #1587
- Agents: rename the Stepwise API to the built-in agent loop by @longquanzheng in #1563
- Agents: add @superdurable/dex-agents-pi to run Pi agents on the Stepwise session Flow by @longquanzheng in #1573
- Docs: describe ID reuse policies and start request IDs as the server implements them by @longquanzheng in #1584
- Docs and skills: the Join helper and the updated Workflow Patterns ratings by @longquanzheng in #1594
- Agents CLI: shorter session Flow type suffix and recorded start environment by @longquanzheng in #1588
- Agents CLI: remaining TypeScript harness commands (OpenAI Agents, Vercel AI, Mastra, builtin) by @longquanzheng in #1569
- Docs: refresh the generated SDK API reference to 1.44.0 by @longquanzheng in #1605
- SDKs: stop recommending reporting for a cancelled Join branch by @longquanzheng in #1598
- server-zd: store uploaded Flow Definition Graphs per Flow type by @longquanzheng in #1595
- Agents CLI: remaining Python harness commands (OpenAI Agents, Pydantic AI, Google ADK, builtin, deepagents) by @longquanzheng in #1567
- Agents: ToolCallContext.effect and FunctionTool.prepareArguments for Stepwise in both cores by @longquanzheng in #1581
- server-zd and SDKs: acknowledge SubFlow starts on completion; reject SubFlows from dashed Step types by @longquanzheng in #1574
- Skills: assemble change-log fragments at release time instead of bumping per pull request by @longquanzheng in #1609
- Agents: move every package to Dex SDK 1.44.0 and prepare 0.5.0 by @longquanzheng in #1607
- Agents: images through every framework adapter and MCP image content by @longquanzheng in #1589
- Dex Web: read uploaded Flow definitions per Flow type, isolate bad ones, load lazily by @longquanzheng in #1604
- Python and TypeScript SDKs: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1602
- Add make regenerate-derived to resolve derived-file conflicts by regenerating them by @longquanzheng in #1614
- Agents: release the agent CLI packages with the agents packages by @longquanzheng in #1611
- Java and Rust SDKs: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1603
- Change logs: assemble component change-log fragments at release time and check readiness before tagging by @longquanzheng in #1612
- Agents CLI: media store setting and /image by @longquanzheng in #1601
- Let pull requests opened before #1612 keep the old component change-log flow by @longquanzheng in #1616
- Agents CLI: dex-agents-pi command for Pi agents by @longquanzheng in #1597
- dexcli visualize: write generatedAt into Flow Definition Graph 2.0 JSON by @longquanzheng in #1586
- Agents: decideTurnContinuation hook for the built-in agent loop in both cores by @longquanzheng in #1575
- Agents Pi: classify tool errors by the effective effect and convert arguments before validation by @longquanzheng in #1610
- Go SDK and dexcli: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1599
- Docs and skills: Workers publish Flow Definition Graphs to the Dex Server by @longquanzheng in #1606
- Release prep: SDKs, cli, and web 1.45.0; server-zd 0.1.26 by @longquanzheng in #1618
Full Changelog: web/v1.44.0...web/v1.45.0
web/v1.44.0
Breaking Changes
None.
What's Changed
- Open Flow design graphs left to right; move Agent Skills after Intro by @longquanzheng in #1543
- Docs: explain the built-in agent loop before naming Stepwise mode by @longquanzheng in #1548
- Agents CLI: shared Python runtime for the per-harness agent commands by @longquanzheng in #1532
- Formal semantics: add the failure model for the failure-transparency proof by @longquanzheng in #1523
- CI: shorten the docs deploy and rebuild docs on Dex Web canvas changes by @longquanzheng in #1546
- Java SDK: add the Join helper for parallel branches by @longquanzheng in #1549
- Go SDK: add the Join helper for parallel branches by @longquanzheng in #1553
- Python SDK: add the Join helper for parallel branches by @longquanzheng in #1554
- Rust SDK: add the Join helper for parallel branches by @longquanzheng in #1550
- Docs: snapshot component references 1.43.0 by @longquanzheng in #1560
- Docs: stamp the 1.43.0 release lines for the five SDKs, web, and cli by @longquanzheng in #1556
- TypeScript SDK: add the Join helper for parallel branches by @longquanzheng in #1552
- Agents CLI (Python): read the connectors MCP address from the ready block only by @longquanzheng in #1558
- SDKs: mark the Join helper as since 1.44.0 after the 1.43.0 release by @longquanzheng in #1564
- Docs: add 1.44 change log entries for web and cli by @longquanzheng in #1570
Full Changelog: web/v1.43.0...web/v1.44.0
web/v1.43.0
Breaking Changes
- The /api/flows/search request no longer forwards includeContinuedAsNew. Run lists no longer offer Continued as new as a status. Reference.
See the change log for migrations and all changes.
What's Changed
- Build Dex agents GitHub releases from agents/CHANGELOG.md by @longquanzheng in #1509
- Agents: keep the state-limit test valid on current servers and test against dexcli 1.42.0 by @longquanzheng in #1510
- Rules: choose patch or minor releases by what ships by @longquanzheng in #1486
- Agents Go core: allocate test ports outside the ephemeral range and report dexcli startup output by @longquanzheng in #1512
- Docs: rewrite unclear guarantee and design pattern sentences in plain words by @longquanzheng in #1513
- Paper: present failures as the second proposition by @longquanzheng in #1517
- Dex Web: send messages, edit settings, and start agent sessions by @longquanzheng in #1516
- Go SDK: create a Context outside a Worker with NewStandaloneContext by @longquanzheng in #1521
- Agents CLI: shared config and session settings schema with conformance cases by @longquanzheng in #1522
- dexcli dev: serve the connectors MCP server at /mcp on the Dex Web port by @longquanzheng in #1525
- Docs: readability pass, Dex Web Flow diagrams, redesigned concept diagrams, and SDK reference by topic by @longquanzheng in #1524
- Dex Web: take the connections file lock when writing connector credentials by @longquanzheng in #1526
- Agents: read Dex MCP conventions for effect, approval, and outcome in McpToolSource by @longquanzheng in #1518
- Docs: make Correctness and expressiveness top-level, fold External Attribute Sync into Attribute, move Connector to Concepts, and say Flow run by @longquanzheng in #1530
- Agents: name connector tools and classify their branches as the connectors library does by @longquanzheng in #1527
- Docs: sync code snippets with examples and between locales by @longquanzheng in #1536
- Docs: size Flow diagram canvases to their Flow by @longquanzheng in #1534
- Docs: readability pass on the CLI and Web reference by @longquanzheng in #1537
- Docs: readability pass on the five SDK references by @longquanzheng in #1540
- server-zd: serve a separate loopback application bucket in dev and local modes by @longquanzheng in #1531
- Docs: readability pass on the server reference by @longquanzheng in #1538
- Docs: split Durable Agents into the Agent Frameworks overview and a new Agents Developer reference by @longquanzheng in #1533
- Dex Web: mount under a base path, opt-in framing, and an embeddable Go handler by @longquanzheng in #1515
- Dex Web: record an authorizationId on connector connections by @longquanzheng in #1542
- Remove Continue-As-New and InternalHandlerTimeout; rename FlowExecutionID to FlowRunID by @longquanzheng in #1541
- Agents CLI: shared TypeScript runtime for the per-harness agent commands by @longquanzheng in #1528
- Agents cores: image references with an S3-compatible media store by @longquanzheng in #1529
- Move every unreleased SDK change log entry to 1.43 and fix version markers by @longquanzheng in #1544
Full Changelog: web/v1.42.0...web/v1.43.0
server-zd v0.1.26
Breaking Changes
- Removed FlowService.TriggerContinueAsNew and TriggerContinueAsNewRequest. The RPC previously returned UNIMPLEMENTED. Reference.
- Removed FlowConfig.continue_as_new_threshold (2), continue_as_new_page_size_in_bytes (3), SearchFlowsRequest.include_continued_as_new (4), FlowStatus.FLOW_STATUS_CONTINUED_AS_NEW (7), FlowStartedOrContinuedHistoryEvent.continued_start (11), FlowContinuedStart, and FlowClosedHistoryEvent.continued_to_run_id (5). Their field numbers and names, and the enum number and name, are reserved where applicable. Reference.
- A search query that compares ExecutionStatus with ContinuedAsNew, such as ExecutionStatus = 'ContinuedAsNew' or ExecutionStatus != 'ContinuedAsNew', fails with INVALID_ARGUMENT. Remove that predicate from stored queries. Reference.
- Removed WaitForStepCompletionRequest.internal_handler_timeout_seconds (5) and WaitForAttributeRequest.internal_handler_timeout_seconds (4). The server ignored positive values. Reference.
- Renamed FlowExecutionID to FlowRunID and both flow_execution_id fields to flow_run_id without changing field numbers. ProtoJSON field names change from flowExecutionId to flowRunId; update JSON clients and generated-code consumers. Reference.
- Apply results change. Stop the standby and the active process, upgrade both binaries, then start the active process before the standby. A mixed-version pair diverges. Reference.
Added
- FlowService.UploadFlowDefinitions, ListFlowDefinitions, and GetFlowDefinitions store and read Flow Definition Graph (FDG 2.0) JSON documents, one for each Flow type, so that Dex Web can render Flows without a definition directory. An upload keeps the stored document unless the new one differs and has a strictly later generated_at, or the request sets force. Errors use the new ERROR_SUB_STATUS_FLOW_DEFINITION_INVALID and ERROR_SUB_STATUS_FLOW_DEFINITION_RESPONSE_TOO_LARGE. Reference.
- flowDefinitions.maxDefinitionBytes (default 8 MiB) limits one uploaded Flow definition. Reference.
- The only new persisted data is one object per uploaded Flow type under PREFIX/registry/flow-definitions/. It is outside the log and snapshots, and older server binaries never read it, so they keep working on the same prefix. Reference.
- dev and local accept --application-s3-listen and --application-s3-bucket. They serve one more S3-compatible bucket for applications on a loopback address, with its own store in application-s3 in the data directory. Applications cannot reach the server's own bucket through it. Reference.
Fixed
- A Step that a decision or an RPC cancels after its wait consumed Channel messages, but before its Execute result was saved, no longer loses those messages. They return to the front of their Channel or ChannelMap instance in their original order, and another wait can consume them, so a message can reach Execute twice. The server still drops them when the Flow close cancels the Step: a stop, a Flow timeout, a failure that closes the Flow, or a decision that cancels it and closes with ForceComplete or ForceFail. A Step that a commit cancels also no longer consumes that commit's own publications. Reference.
- A StartFlow retry with the request_id that started the latest run of the Flow ID no longer goes through the ID reuse policy. It returns that run with ignore_already_started_error, or ALREADY_EXISTS / FLOW_ALREADY_STARTED without it. Before, ID_REUSE_POLICY_ALLOW_IF_NO_RUNNING and ID_REUSE_POLICY_ALLOW_IF_PREVIOUS_EXISTS_ABNORMALLY started a second run for the retry, and ID_REUSE_POLICY_ALLOW_TERMINATE_IF_RUNNING terminated the run that the retried request had started. Reference.
See the change log.
sdk-typescript/v1.45.0
Breaking Changes
None.
What's Changed
- Agents cores: a local directory media store for images by @longquanzheng in #1557
- Formal: prove failure transparency in Lean, with the paper section and docs page by @longquanzheng in #1555
- Claude Agent SDK adapters: do not store Claude Code last-prompt entries by @longquanzheng in #1561
- Agents CLI (Python): cache file-enabled tools before the session Flow is built by @longquanzheng in #1566
- Docs: stamp the 1.44.0 release lines for the five SDKs, web, and cli by @longquanzheng in #1576
- Agents CLI: dex-agents-claude-sdk command (Python and TypeScript) by @longquanzheng in #1562
- server-zd: deduplicate StartFlow retries before the ID reuse policy by @longquanzheng in #1559
- Java examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1577
- TypeScript examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1579
- Go examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1582
- Rust examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1583
- Python examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1580
- Paper: add Zheng Zheng as an author by @longquanzheng in #1587
- Agents: rename the Stepwise API to the built-in agent loop by @longquanzheng in #1563
- Agents: add @superdurable/dex-agents-pi to run Pi agents on the Stepwise session Flow by @longquanzheng in #1573
- Docs: describe ID reuse policies and start request IDs as the server implements them by @longquanzheng in #1584
- Docs and skills: the Join helper and the updated Workflow Patterns ratings by @longquanzheng in #1594
- Agents CLI: shorter session Flow type suffix and recorded start environment by @longquanzheng in #1588
- Agents CLI: remaining TypeScript harness commands (OpenAI Agents, Vercel AI, Mastra, builtin) by @longquanzheng in #1569
- Docs: refresh the generated SDK API reference to 1.44.0 by @longquanzheng in #1605
- SDKs: stop recommending reporting for a cancelled Join branch by @longquanzheng in #1598
- server-zd: store uploaded Flow Definition Graphs per Flow type by @longquanzheng in #1595
- Agents CLI: remaining Python harness commands (OpenAI Agents, Pydantic AI, Google ADK, builtin, deepagents) by @longquanzheng in #1567
- Agents: ToolCallContext.effect and FunctionTool.prepareArguments for Stepwise in both cores by @longquanzheng in #1581
- server-zd and SDKs: acknowledge SubFlow starts on completion; reject SubFlows from dashed Step types by @longquanzheng in #1574
- Skills: assemble change-log fragments at release time instead of bumping per pull request by @longquanzheng in #1609
- Agents: move every package to Dex SDK 1.44.0 and prepare 0.5.0 by @longquanzheng in #1607
- Agents: images through every framework adapter and MCP image content by @longquanzheng in #1589
- Dex Web: read uploaded Flow definitions per Flow type, isolate bad ones, load lazily by @longquanzheng in #1604
- Python and TypeScript SDKs: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1602
- Add make regenerate-derived to resolve derived-file conflicts by regenerating them by @longquanzheng in #1614
- Agents: release the agent CLI packages with the agents packages by @longquanzheng in #1611
- Java and Rust SDKs: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1603
- Change logs: assemble component change-log fragments at release time and check readiness before tagging by @longquanzheng in #1612
- Agents CLI: media store setting and /image by @longquanzheng in #1601
- Let pull requests opened before #1612 keep the old component change-log flow by @longquanzheng in #1616
- Agents CLI: dex-agents-pi command for Pi agents by @longquanzheng in #1597
- dexcli visualize: write generatedAt into Flow Definition Graph 2.0 JSON by @longquanzheng in #1586
- Agents: decideTurnContinuation hook for the built-in agent loop in both cores by @longquanzheng in #1575
- Agents Pi: classify tool errors by the effective effect and convert arguments before validation by @longquanzheng in #1610
- Go SDK and dexcli: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1599
- Docs and skills: Workers publish Flow Definition Graphs to the Dex Server by @longquanzheng in #1606
- Release prep: SDKs, cli, and web 1.45.0; server-zd 0.1.26 by @longquanzheng in #1618
Full Changelog: sdk-typescript/v1.44.0...sdk-typescript/v1.45.0
sdk-typescript/v1.44.0
Breaking Changes
None.
What's Changed
- Open Flow design graphs left to right; move Agent Skills after Intro by @longquanzheng in #1543
- Docs: explain the built-in agent loop before naming Stepwise mode by @longquanzheng in #1548
- Agents CLI: shared Python runtime for the per-harness agent commands by @longquanzheng in #1532
- Formal semantics: add the failure model for the failure-transparency proof by @longquanzheng in #1523
- CI: shorten the docs deploy and rebuild docs on Dex Web canvas changes by @longquanzheng in #1546
- Java SDK: add the Join helper for parallel branches by @longquanzheng in #1549
- Go SDK: add the Join helper for parallel branches by @longquanzheng in #1553
- Python SDK: add the Join helper for parallel branches by @longquanzheng in #1554
- Rust SDK: add the Join helper for parallel branches by @longquanzheng in #1550
- Docs: snapshot component references 1.43.0 by @longquanzheng in #1560
- Docs: stamp the 1.43.0 release lines for the five SDKs, web, and cli by @longquanzheng in #1556
- TypeScript SDK: add the Join helper for parallel branches by @longquanzheng in #1552
- Agents CLI (Python): read the connectors MCP address from the ready block only by @longquanzheng in #1558
- SDKs: mark the Join helper as since 1.44.0 after the 1.43.0 release by @longquanzheng in #1564
- Docs: add 1.44 change log entries for web and cli by @longquanzheng in #1570
Full Changelog: sdk-typescript/v1.43.0...sdk-typescript/v1.44.0
sdk-typescript/v1.43.0
Breaking Changes
- Removed Client.triggerContinueAsNew, the continuedAsNew Flow status, FlowConfig.continueAsNewThreshold, FlowConfig.continueAsNewPageSizeBytes, SearchFlowsOptions, and the fourth Client.searchFlows argument. Reference.
- Removed WaitForStepCompletionOptions.internalHandlerTimeoutMs and WaitForAttributeOptions.internalHandlerTimeoutMs. Request IDs remain accepted but the server does not read them for these waits. Reference.
- Generated bindings rename FlowExecutionID to FlowRunID and flowExecutionId to flowRunId. ProtoJSON uses flowRunId. Reference.
See the change log for migrations and all changes.
What's Changed
- Dex Web: keep long values inside their event panel column by @longquanzheng in #1437
- Docs: fix reference snapshot pruning, add 1.40 references, and document the redesigned Dex Web by @longquanzheng in #1434
- Add db9 transactional object storage provider by @c4pt0r in #1415
- Docs: correct the dev server storage and the Concepts link labels by @longquanzheng in #1441
- Dex Web: stack Attribute and Context rows in the narrow Execution graph panel by @longquanzheng in #1443
- Benchmark: long-lived runs on server-zd v0.1.23, latest results only by @longquanzheng in #1444
- Document the db9 object storage provider in the server reference by @longquanzheng in #1439
- server-zd: cut WorkerDispatch registry lock work per RPC dispatch by @longquanzheng in #1445
- Report the original error type for Go errors with stacks, and the error category in backend_error by @longquanzheng in #1442
- Docs: snapshot the server reference for 0.1.24 by @longquanzheng in #1446
- Bundle server-zd v0.1.25 with dexcli by @longquanzheng in #1449
- Docs: snapshot the server reference for 0.1.25 by @longquanzheng in #1448
- Docs: backfill change log entries for server-zd 0.1.21-0.1.25 and the 1.38-1.40 releases by @longquanzheng in #1451
- Stamp the Dex agents 0.3.0 changelog heading by @zzheng-aiplay in #1452
- Benchmark: S4 and S5 on server-zd v0.1.25, and restore the results layout by @longquanzheng in #1456
- server-zd: complete a gracefully completing Flow when an RPC cancels its last Step by @longquanzheng in #1455
- Evaluate Dex against the Workflow Patterns with runnable examples in all SDKs by @longquanzheng in #1453
- server-zd: drop results of non-completed Flows and reject publications during a pending close by @longquanzheng in #1462
- CLI CI: skip multi-Flow workflow pattern examples in the visualize scan by @longquanzheng in #1464
- Dex Web: merge v2 into v1 with a Design tab and experimental features by @longquanzheng in #1461
- Remove agent rule text that describes the removed Go Server by @longquanzheng in #1460
- Dex Web: Timeline overview histogram with retried-failure marks by @longquanzheng in #1469
- Dex Web: keep the WaitFor chevron outline whole and show full Channel names by @longquanzheng in #1468
- server-zd: return a canceled Step's consumed messages and wake waiters after cancellations by @longquanzheng in #1465
- Docs: state the precise semantics of Steps, Channels, Attributes, RPCs, and SubFlows by @longquanzheng in #1473
- Dex Web: Stream name picker and a redesigned Stream output by @longquanzheng in #1470
- Dex Web: fix the design graph legend layout and add a Docs link by @longquanzheng in #1477
- Docs: add Deferred Choice, Critical Section, and Cancel with Child Flows design patterns by @longquanzheng in #1471
- Docs: add the Java SDK 1.41 change log entry by @longquanzheng in #1479
- Dex Web: fix the design graph Fit button and move its controls to the top right by @longquanzheng in #1482
- Docs: snapshot the 1.41.0 references and refresh the 1.40.x change logs by @longquanzheng in #1483
- Dex Web: select events from the Timeline overview and open runs on the Timeline by @longquanzheng in #1484
- Docs: record the Timeline changes as web and cli 1.41.1 by @longquanzheng in #1485
- Add connector tools to the Python and TypeScript agent cores by @zzheng-aiplay in #1391
- Plan agents M3: connector tools, operator view, and session lifetime by @zzheng-aiplay in #1324
- Add a machine-checked expressiveness proof of the Dex programming model, the paper, and its docs page by @longquanzheng in #1487
- Serve tool sources from the Python Claude Agent SDK adapter by @longquanzheng in #1489
- Add a Python example for each agent harness by @longquanzheng in #1488
- Add a TypeScript example for each agent harness by @longquanzheng in #1490
- Docs: give each agent harness its own page with a runnable example by @longquanzheng in #1494
- Resume an approved Claude Code tool with its recorded input by @longquanzheng in #1492
- Serve tool sources from the TypeScript Claude Agent SDK adapter by @longquanzheng in #1491
- Serve tool sources from the TypeScript Vercel AI, OpenAI Agents, and Mastra adapters by @longquanzheng in #1493
- Serve tool sources from the Python OpenAI Agents, Pydantic AI, LangGraph, and Google ADK adapters by @longquanzheng in #1495
- Prepare the Dex agents 0.4.0 changelog and version notes by @longquanzheng in #1497
- Docs: record the agent session write states as web and cli 1.41.1 by @longquanzheng in #1498
- Offer Slack connector tools to the Python agent examples by @longquanzheng in #1499
- Offer Slack connector tools to the TypeScript agent examples by @longquanzheng in #1500
- Docs: connect Connectors to every agent harness by @longquanzheng in #1502
- Start the TypeScript agent examples without a connections file by @longquanzheng in #1505
- Agents follow-ups: Claude error text, resume credentials, and unpinned install docs by @longquanzheng in #1506
- Dex Web: add Connector connections that no loaded Flow uses by @longquanzheng in #1507
- Docs: stamp the web and cli 1.42.0 release lines by @longquanzheng in #1508
- Build Dex agents GitHub releases from agents/CHANGELOG.md by @longquanzheng in #1509
- Agents: keep the state-limit test valid on current servers and test against dexcli 1.42.0 by @longquanzheng in #1510
- Rules: choose patch or minor releases by what ships by @longquanzheng in #1486
- Agents Go core: allocate test ports outside the ephemeral range and report dexcli startup output by @longquanzheng in #1512
- Docs: rewrite unclear guarantee and design pattern sentences in plain words by @longquanzheng in #1513
- Paper: present failures as the second proposition by @longquanzheng in #1517
- Dex Web: send messages, edit settings, and start agent sessions by @longquanzheng in #1516
- Go SDK: create a Context outside a Worker with NewStandaloneContext by @longquanzheng in #1521
- Agents CLI: shared config and session settings schema with conformance cases by @longquanzheng in #1522
- dexcli dev: serve the connectors MCP server at /mcp on the Dex Web port by @longquanzheng in #1525
- Docs: readability pass, Dex Web Flow diagrams, redesigned concept diagrams, and SDK reference by topic by @longquanzheng in #1524
- Dex Web: take the connections file lock when writing connector credentials by @longquanzheng in #1526
- Agents: read Dex MCP conve...
sdk-rust/v1.45.0
Breaking Changes
None.
What's Changed
- Agents cores: a local directory media store for images by @longquanzheng in #1557
- Formal: prove failure transparency in Lean, with the paper section and docs page by @longquanzheng in #1555
- Claude Agent SDK adapters: do not store Claude Code last-prompt entries by @longquanzheng in #1561
- Agents CLI (Python): cache file-enabled tools before the session Flow is built by @longquanzheng in #1566
- Docs: stamp the 1.44.0 release lines for the five SDKs, web, and cli by @longquanzheng in #1576
- Agents CLI: dex-agents-claude-sdk command (Python and TypeScript) by @longquanzheng in #1562
- server-zd: deduplicate StartFlow retries before the ID reuse policy by @longquanzheng in #1559
- Java examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1577
- TypeScript examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1579
- Go examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1582
- Rust examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1583
- Python examples: move to SDK 1.44.0 and use the Join helper by @longquanzheng in #1580
- Paper: add Zheng Zheng as an author by @longquanzheng in #1587
- Agents: rename the Stepwise API to the built-in agent loop by @longquanzheng in #1563
- Agents: add @superdurable/dex-agents-pi to run Pi agents on the Stepwise session Flow by @longquanzheng in #1573
- Docs: describe ID reuse policies and start request IDs as the server implements them by @longquanzheng in #1584
- Docs and skills: the Join helper and the updated Workflow Patterns ratings by @longquanzheng in #1594
- Agents CLI: shorter session Flow type suffix and recorded start environment by @longquanzheng in #1588
- Agents CLI: remaining TypeScript harness commands (OpenAI Agents, Vercel AI, Mastra, builtin) by @longquanzheng in #1569
- Docs: refresh the generated SDK API reference to 1.44.0 by @longquanzheng in #1605
- SDKs: stop recommending reporting for a cancelled Join branch by @longquanzheng in #1598
- server-zd: store uploaded Flow Definition Graphs per Flow type by @longquanzheng in #1595
- Agents CLI: remaining Python harness commands (OpenAI Agents, Pydantic AI, Google ADK, builtin, deepagents) by @longquanzheng in #1567
- Agents: ToolCallContext.effect and FunctionTool.prepareArguments for Stepwise in both cores by @longquanzheng in #1581
- server-zd and SDKs: acknowledge SubFlow starts on completion; reject SubFlows from dashed Step types by @longquanzheng in #1574
- Skills: assemble change-log fragments at release time instead of bumping per pull request by @longquanzheng in #1609
- Agents: move every package to Dex SDK 1.44.0 and prepare 0.5.0 by @longquanzheng in #1607
- Agents: images through every framework adapter and MCP image content by @longquanzheng in #1589
- Dex Web: read uploaded Flow definitions per Flow type, isolate bad ones, load lazily by @longquanzheng in #1604
- Python and TypeScript SDKs: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1602
- Add make regenerate-derived to resolve derived-file conflicts by regenerating them by @longquanzheng in #1614
- Agents: release the agent CLI packages with the agents packages by @longquanzheng in #1611
- Java and Rust SDKs: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1603
- Change logs: assemble component change-log fragments at release time and check readiness before tagging by @longquanzheng in #1612
- Agents CLI: media store setting and /image by @longquanzheng in #1601
- Let pull requests opened before #1612 keep the old component change-log flow by @longquanzheng in #1616
- Agents CLI: dex-agents-pi command for Pi agents by @longquanzheng in #1597
- dexcli visualize: write generatedAt into Flow Definition Graph 2.0 JSON by @longquanzheng in #1586
- Agents: decideTurnContinuation hook for the built-in agent loop in both cores by @longquanzheng in #1575
- Agents Pi: classify tool errors by the effective effect and convert arguments before validation by @longquanzheng in #1610
- Go SDK and dexcli: upload Flow Definition Graphs to the Dex Server by @longquanzheng in #1599
- Docs and skills: Workers publish Flow Definition Graphs to the Dex Server by @longquanzheng in #1606
- Release prep: SDKs, cli, and web 1.45.0; server-zd 0.1.26 by @longquanzheng in #1618
Full Changelog: sdk-rust/v1.44.0...sdk-rust/v1.45.0
sdk-rust/v1.44.0
Breaking Changes
None.
What's Changed
- Open Flow design graphs left to right; move Agent Skills after Intro by @longquanzheng in #1543
- Docs: explain the built-in agent loop before naming Stepwise mode by @longquanzheng in #1548
- Agents CLI: shared Python runtime for the per-harness agent commands by @longquanzheng in #1532
- Formal semantics: add the failure model for the failure-transparency proof by @longquanzheng in #1523
- CI: shorten the docs deploy and rebuild docs on Dex Web canvas changes by @longquanzheng in #1546
- Java SDK: add the Join helper for parallel branches by @longquanzheng in #1549
- Go SDK: add the Join helper for parallel branches by @longquanzheng in #1553
- Python SDK: add the Join helper for parallel branches by @longquanzheng in #1554
- Rust SDK: add the Join helper for parallel branches by @longquanzheng in #1550
- Docs: snapshot component references 1.43.0 by @longquanzheng in #1560
- Docs: stamp the 1.43.0 release lines for the five SDKs, web, and cli by @longquanzheng in #1556
- TypeScript SDK: add the Join helper for parallel branches by @longquanzheng in #1552
- Agents CLI (Python): read the connectors MCP address from the ready block only by @longquanzheng in #1558
- SDKs: mark the Join helper as since 1.44.0 after the 1.43.0 release by @longquanzheng in #1564
- Docs: add 1.44 change log entries for web and cli by @longquanzheng in #1570
Full Changelog: sdk-rust/v1.43.0...sdk-rust/v1.44.0
sdk-rust/v1.43.0
Breaking Changes
- Removed Client::trigger_continue_as_new, FlowStatus::ContinuedAsNew, FlowConfig::continue_as_new_threshold, FlowConfig::continue_as_new_page_size_bytes, SearchFlowsOptions, and Client::search_flows_with_options. Use Client::search_flows_page for pagination. Reference.
- Removed WaitForStepCompletionOptions::internal_handler_timeout and WaitForAttributeOptions::internal_handler_timeout. Request IDs remain accepted but the server does not read them for these waits. Reference.
- Generated bindings rename FlowExecutionId to FlowRunId and flow_execution_id to flow_run_id. ProtoJSON uses flowRunId. Reference.
See the change log for migrations and all changes.
What's Changed
- Dex Web: keep long values inside their event panel column by @longquanzheng in #1437
- Docs: fix reference snapshot pruning, add 1.40 references, and document the redesigned Dex Web by @longquanzheng in #1434
- Add db9 transactional object storage provider by @c4pt0r in #1415
- Docs: correct the dev server storage and the Concepts link labels by @longquanzheng in #1441
- Dex Web: stack Attribute and Context rows in the narrow Execution graph panel by @longquanzheng in #1443
- Benchmark: long-lived runs on server-zd v0.1.23, latest results only by @longquanzheng in #1444
- Document the db9 object storage provider in the server reference by @longquanzheng in #1439
- server-zd: cut WorkerDispatch registry lock work per RPC dispatch by @longquanzheng in #1445
- Report the original error type for Go errors with stacks, and the error category in backend_error by @longquanzheng in #1442
- Docs: snapshot the server reference for 0.1.24 by @longquanzheng in #1446
- Bundle server-zd v0.1.25 with dexcli by @longquanzheng in #1449
- Docs: snapshot the server reference for 0.1.25 by @longquanzheng in #1448
- Docs: backfill change log entries for server-zd 0.1.21-0.1.25 and the 1.38-1.40 releases by @longquanzheng in #1451
- Stamp the Dex agents 0.3.0 changelog heading by @zzheng-aiplay in #1452
- Benchmark: S4 and S5 on server-zd v0.1.25, and restore the results layout by @longquanzheng in #1456
- server-zd: complete a gracefully completing Flow when an RPC cancels its last Step by @longquanzheng in #1455
- Evaluate Dex against the Workflow Patterns with runnable examples in all SDKs by @longquanzheng in #1453
- server-zd: drop results of non-completed Flows and reject publications during a pending close by @longquanzheng in #1462
- CLI CI: skip multi-Flow workflow pattern examples in the visualize scan by @longquanzheng in #1464
- Dex Web: merge v2 into v1 with a Design tab and experimental features by @longquanzheng in #1461
- Remove agent rule text that describes the removed Go Server by @longquanzheng in #1460
- Dex Web: Timeline overview histogram with retried-failure marks by @longquanzheng in #1469
- Dex Web: keep the WaitFor chevron outline whole and show full Channel names by @longquanzheng in #1468
- server-zd: return a canceled Step's consumed messages and wake waiters after cancellations by @longquanzheng in #1465
- Docs: state the precise semantics of Steps, Channels, Attributes, RPCs, and SubFlows by @longquanzheng in #1473
- Dex Web: Stream name picker and a redesigned Stream output by @longquanzheng in #1470
- Dex Web: fix the design graph legend layout and add a Docs link by @longquanzheng in #1477
- Docs: add Deferred Choice, Critical Section, and Cancel with Child Flows design patterns by @longquanzheng in #1471
- Docs: add the Java SDK 1.41 change log entry by @longquanzheng in #1479
- Dex Web: fix the design graph Fit button and move its controls to the top right by @longquanzheng in #1482
- Docs: snapshot the 1.41.0 references and refresh the 1.40.x change logs by @longquanzheng in #1483
- Dex Web: select events from the Timeline overview and open runs on the Timeline by @longquanzheng in #1484
- Docs: record the Timeline changes as web and cli 1.41.1 by @longquanzheng in #1485
- Add connector tools to the Python and TypeScript agent cores by @zzheng-aiplay in #1391
- Plan agents M3: connector tools, operator view, and session lifetime by @zzheng-aiplay in #1324
- Add a machine-checked expressiveness proof of the Dex programming model, the paper, and its docs page by @longquanzheng in #1487
- Serve tool sources from the Python Claude Agent SDK adapter by @longquanzheng in #1489
- Add a Python example for each agent harness by @longquanzheng in #1488
- Add a TypeScript example for each agent harness by @longquanzheng in #1490
- Docs: give each agent harness its own page with a runnable example by @longquanzheng in #1494
- Resume an approved Claude Code tool with its recorded input by @longquanzheng in #1492
- Serve tool sources from the TypeScript Claude Agent SDK adapter by @longquanzheng in #1491
- Serve tool sources from the TypeScript Vercel AI, OpenAI Agents, and Mastra adapters by @longquanzheng in #1493
- Serve tool sources from the Python OpenAI Agents, Pydantic AI, LangGraph, and Google ADK adapters by @longquanzheng in #1495
- Prepare the Dex agents 0.4.0 changelog and version notes by @longquanzheng in #1497
- Docs: record the agent session write states as web and cli 1.41.1 by @longquanzheng in #1498
- Offer Slack connector tools to the Python agent examples by @longquanzheng in #1499
- Offer Slack connector tools to the TypeScript agent examples by @longquanzheng in #1500
- Docs: connect Connectors to every agent harness by @longquanzheng in #1502
- Start the TypeScript agent examples without a connections file by @longquanzheng in #1505
- Agents follow-ups: Claude error text, resume credentials, and unpinned install docs by @longquanzheng in #1506
- Dex Web: add Connector connections that no loaded Flow uses by @longquanzheng in #1507
- Docs: stamp the web and cli 1.42.0 release lines by @longquanzheng in #1508
- Build Dex agents GitHub releases from agents/CHANGELOG.md by @longquanzheng in #1509
- Agents: keep the state-limit test valid on current servers and test against dexcli 1.42.0 by @longquanzheng in #1510
- Rules: choose patch or minor releases by what ships by @longquanzheng in #1486
- Agents Go core: allocate test ports outside the ephemeral range and report dexcli startup output by @longquanzheng in #1512
- Docs: rewrite unclear guarantee and design pattern sentences in plain words by @longquanzheng in #1513
- Paper: present failures as the second proposition by @longquanzheng in #1517
- Dex Web: send messages, edit settings, and start agent sessions by @longquanzheng in #1516
- Go SDK: create a Context outside a Worker with NewStandaloneContext by @longquanzheng in #1521
- Agents CLI: shared config and session settings schema with conformance cases by @longquanzheng in #1522
- dexcli dev: serve the connectors MCP server at /mcp on the Dex Web port by @longquanzheng in #1525
- Docs: readability pass, Dex Web Flow diagrams, redesigned concept diagrams, and SDK reference by topic by @longquanzheng in #1524
- Dex Web: take the connections file lock when writing connector credentials by @longquanzheng in https://github.com/superd...