chore(release): 0.31.0 - #1047
Conversation
| @@ -1,3 +1,18 @@ | |||
| ## 0.31.0 (2026-08-11) | |||
There was a problem hiding this comment.
This adds a second ## 0.31.0 section, so the changelog now contains two headings for the same version (0.31.0 (2026-08-11) here and 0.31.0 (2026-08-10) at line 16) with overlapping content:
- Rust session runtime adapter (feat: add RustSessionRuntime adapter for OpenJD v1 sessions #1002) — listed in both
- Runtime selection/failure telemetry (feat: emit runtime selection and failure telemetry events #1021) — listed in both
step_namewrap-env fixes (fix: thread step_name to run_task for wrap-action support #1039, fix: forward step_name on the Rust runtime and add e2e test-rust script #1040) — listed in both- Rust panic handling (fix: convert runtime crashes at the adapter boundary and emit failure telemetry #1026) — listed in both
- Transient network retries and hibernate/sleep credential expiry — listed in both, but with different PR attributions (fix(test): resolve worker agent PID via systemd in cap_kill e2e test #1033 here vs. fix: retry transient network errors in UpdateWorkerSchedule #1013/fix(credentials): Retry with bootstrap creds on hibernate/sleep expiry #1014 at lines 26-27)
Since tag_format = "{version}" in pyproject.toml, there can only be one 0.31.0 tag, so one of these two sections describes a release that will never exist under that number. The 2026-08-10 section (from 9c4ac8a) was hand-curated to dedupe and link PRs; this regenerated section appears to have been stacked on top of it rather than replacing it.
Suggest either folding the genuinely new entries into the existing 0.31.0 section, or bumping this one to the next version if 0.31.0 has already been tagged/published.
| * Fixed Rust runtime panics (BaseException via PyO3) crashing the session thread without reporting failure or running cleanup. These are now caught at the adapter boundary, converted to a proper error, and handled by the existing failure path. (#1026) | ||
| * Fixed `step_name` not being passed through to `run_task`, which caused jobs using wrap environments to fail because RFC 0008's `WrappedStep.Name` had no value to render. (#1039) | ||
| * Fixed `step_name` not being forwarded on the Rust runtime path, so `WrappedStep.Name` now resolves correctly for both Python and Rust runtimes. (#1040) | ||
| * Fixed the agent terminating on transient network errors (connection closed, connect timeout, endpoint connection error, read timeout) during UpdateWorkerSchedule calls. These are now retried with exponential backoff. (#1033) |
There was a problem hiding this comment.
These two entries attribute the network-retry and credential-expiry fixes to #1033, but #1033 is the e2e test commit 2457b71 fix(test): resolve worker agent PID via systemd in cap_kill e2e test (#1033). The actual fixes are af02f3f fix: retry transient network errors in UpdateWorkerSchedule and 528cd41 fix(credentials): Retry with bootstrap creds on hibernate/sleep expiry, neither of which carries a PR number in its commit subject — which is likely why the generator fell back to the nearest numbered commit.
The existing 0.31.0 section (lines 26-27) attributes the same two fixes to #1013 and #1014. At most one attribution can be right; worth confirming the correct PR numbers before publishing.
Signed-off-by: Sean Tang <171081544+seant-aws@users.noreply.github.com>
0.31.0 (2026-08-10)
Features
session_runtimein worker.toml topython,rust, orservice-selected. (feat: add RustSessionRuntime adapter for OpenJD v1 sessions #1002)service-selected, the session runtime (Python or Rust) is chosen from aruntimeHintprovided by the service, defaulting to Python when no hint is given. (feat: add select_runtime() to resolve session runtime mode #1009, feat: consume runtimeHint from UpdateWorkerSchedule responses #1016)opt_out = trueunder[telemetry]in worker.toml, pass--telemetry-opt-outto the installer, or set theDEADLINE_CLOUD_TELEMETRY_OPT_OUT=trueenvironment variable. (feat: emit runtime selection and failure telemetry events #1021)Bug Fixes
step_namewasn't forwarded, leaving RFC 0008'sWrappedStep.Nameunresolved; both runtime paths now forward it. (fix: thread step_name to run_task for wrap-action support #1039, fix: forward step_name on the Rust runtime and add e2e test-rust script #1040)