Skip to content

Publish Python 2.5.6 task-family polling fix - #122

Merged
rmcdaniel merged 4 commits into
maintenance-2.5-task-pollsfrom
fix-stable-python-task-polls
Oct 11, 2026
Merged

rmcdaniel merged 4 commits into
maintenance-2.5-task-pollsfrom
fix-stable-python-task-polls

Conversation

@rmcdaniel

Copy link
Copy Markdown
Member

Stable worker correction

Refs #119 and #121. Backport the scoped task-family polling correction to published 2.5.5 and prepare patch 2.5.6. Use the temporary maintenance base to preserve the current stable authoring contract while the 2.6 Nexus authoring changes finish qualification.

  • Activity-only workers poll activities and keep their registration/heartbeats active without workflow or query polling.
  • Workflow-only workers poll workflow/query work without activity polling. Mixed workers keep both task families.
  • Apply the same eligibility to run_until, preserving terminal replay and shutdown.
  • Include six regression cases, a workflow-only replay fixture after an external activity completes, and six actual HTTP execution cases covering split, mixed and timer workers through both entry points.

Normal CI is dispatched at this exact branch because the temporary maintenance base is outside the main-only PR filter. Require all supported Python, lint, replay/corpus, package, documentation and real HTTP gates before merge/publication. Qualify the exact published wheel against immutable Server 2.6.0 before #119 closes. Delete both temporary branches after delivery. No existing tag changes.

@rmcdaniel rmcdaniel left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed a3c80fbfa4c208382a7c6be1a96bddedccf5d59b, tree d13f910482e766b4c7a99109fee3fab3ae032d25.

The stable diff contains the #121 task-family correction and its executing regressions, plus the three machine-owned version fields. It preserves the 2.5.5 authoring contract and worker protocol 1.19.

Normal CI passes the supported Python matrix, Ruff/mypy, package checks, replay corpus, policy and real HTTP integration. Stable documentation build passes. The candidate wheel and sdist match the exact source metadata. An isolated wheel installation passes all six split/mixed/timer HTTP cases through run and run_until against immutable published Server 2.6.0, with zero polls for unregistered families.

Merge preserves the reviewed tree. Publish a new immutable 2.5.6 tag, verify PyPI distributions and repeat the HTTP cases from the installed registry package before closing #119. Delete both temporary branches after delivery.

@rmcdaniel
rmcdaniel marked this pull request as ready for review October 11, 2026 22:26
@rmcdaniel
rmcdaniel merged commit 7da889c into maintenance-2.5-task-polls Oct 11, 2026
14 checks passed
@rmcdaniel
rmcdaniel deleted the fix-stable-python-task-polls branch October 11, 2026 22:49
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