Skip to content

Backport startup diagnostics to stable Python 2.5.8 - #127

Merged
rmcdaniel merged 2 commits into
maintenance-2.5-startup-diagnosticfrom
fix/stable-startup-diagnostic
Oct 12, 2026
Merged

rmcdaniel merged 2 commits into
maintenance-2.5-startup-diagnosticfrom
fix/stable-startup-diagnostic

Conversation

@rmcdaniel

Copy link
Copy Markdown
Member

Stable backport

Backport #126 onto published 2.5.7 and prepare 2.5.8. A startup timeout now identifies the worker, workflow and existing wait budget. Discovery/registration regressions and the post-startup timeout control execute without changing deadlines, polling or cleanup authority.

Main contains the unqualified 2.6.0 Nexus producer candidate. This branch includes only the reviewed diagnostic, its tests/docs and aligned 2.5.8 package declarations. No producer API is included.

The equivalent main change passes all normal checks, including real HTTP integration. The stable branch receives independent source/package qualification, then exact registry and published Server verification. #123 stays open because the original unconstrained registration delay remains unexplained.

@rmcdaniel
rmcdaniel marked this pull request as ready for review October 12, 2026 06:17
@rmcdaniel
rmcdaniel merged commit b30d38f into maintenance-2.5-startup-diagnostic Oct 12, 2026
12 checks passed
@rmcdaniel
rmcdaniel deleted the fix/stable-startup-diagnostic branch October 12, 2026 06:21
@rmcdaniel

rmcdaniel commented Oct 12, 2026 •

Copy link
Copy Markdown
Member Author

Python 2.5.8 is published from b30d38fa2e457a361a1a955eabd1e51e1c28c0b7, the narrow stable backport in #127. All stable source checks and publication/registry checks pass.

Fresh installed worker code matches that release source byte-for-byte. Both pinned and default PyPI resolution select 2.5.8. Wheel SHA256 6873d8e5473aa457c292b76b6e8960876d1513f6da601cbf7ca4c6e013e44e9d, sdist SHA256 ff15015635f5abd652f4d71e850f4acccf62a7456f2f25e97b4f26499212ad40.

The real HTTP delayed-registration check uses unmodified published Server 2.6.1 at sha256:ef043e5c582761e486a64a2ab4226476e17ae4f71682ef59d6b9ddd784d246b6 and the SDK's actual default 1.20. A two-second held reply completes normally in 5.30 seconds. With a 35-second held reply after Server HTTP 201, the new startup error occurs at 30.03 seconds under the unchanged 30-second wait budget, includes worker/workflow identities and preserves its cause. No task polling or deregistration occurs before acknowledgment. A replacement completes the original run once with the correct timer result.

The original unconstrained registration delay remains unexplained, so #123 stays open. This release improves diagnosis without extending budgets or shipping the unqualified producer APIs from main. The live worker documentation contains the new explanation. Sample App #205 is the remaining pinned-image follow-through. Other package and Server consumers do not require unchanged releases for this Python-only diagnostic. Cloud and Rust retain their frozen qualification tuples and decide their own adoption.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants