Repository navigation
4.12.0
4.12.0
-
Keep one in-flight poll per task family while filling the configured workflow
and activity execution slots (#199). A received task finishes hydration and
initial lease confirmation before polling refills a spare slot. Its execution
slot stays occupied through completion reporting, so slow callbacks can run
concurrently without multiplying idle long polls. -
Reuse worker-authenticated activity lease capability observations instead of
fetching/cluster/infofor every activity (#199). Client clones share one
discovery when needed and refresh only after an explicit capability refusal. Original claim,
ownership and deadline validation still apply to every renewal. -
Add a public raw request API for tools that must reach every Server route
and report its response unchanged (#180).Client::control_plane_request
andClient::worker_plane_requesttake aRawRequest(path segments the
SDK percent-encodes, query pairs, a verbatim JSON body, a timeout and
optional version-header overrides) and return aRawResponsefor every
HTTP status, with the exact body bytes and all headers.
RawResponse::error_for_statusgives the sameError::Httpor
Error::Protocola typed call would, andrefusal()decodesreason,
rejection_reason,message,errorandvalidation_errors. Raw
requests make one attempt and never rewrite bodies. Worker-plane 2xx
responses must echo a same-major, equal-or-newer-minor protocol version in
both the header and the body. Typed methods remain the API for
applications. -
Add
ClientBuilder::danger_accept_invalid_certsfor self-hosted Servers
whose certificates cannot be verified. It defaults tofalse; prefer
additional_root_certificates_pemfor a private CA. -
Replay condition-wait histories in which the Server recorded a second open
of a wait that was still open (#191, #192). A wait is now linked to the
same logical wait by its state when the next open was recorded: if it was
still open, the next open is a repeated open. So an orphaned duplicate whose
timer fires later no longer fails replay with
condition_wait_reopened_after_timeout(the sdk-php#283 shape). On PHP
Server 2.x, condition members of oneparallelorselectgroup woken by
one signal no longer fail the next task with
condition_wait_group_reopen_mismatch, and each member consumes its own
reopen, including when another member such as a timer sits between them
(#194). A pending scope cancellation over such a group selects its original
members by sequence. A wait that timed out before the next open still ends
it. Both histories were refused by 4.11.1 as well.