Skip to content

Backport upstream workflow-host shutdown fix - #93

Merged
GoonMachine merged 3 commits into
mainfrom
codex/workflow-host-daemon-stdin-verified-20260731
Jul 31, 2026
Merged

Backport upstream workflow-host shutdown fix#93
GoonMachine merged 3 commits into
mainfrom
codex/workflow-host-daemon-stdin-verified-20260731

Conversation

@fineas-bot

@fineas-bot fineas-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown

Summary

  • backport the tested Python workflow-host shutdown implementation and regression suite from fix(workflows): shut down Python host cleanly paradigmxyz/centaur#1238
  • replace the earlier daemon-thread variant with async pipe reads and explicit task cleanup
  • preserve prompt terminal result/error delivery when stdin remains open
  • support workflow protocol messages larger than 64 KiB

Upstream provenance

This PR carries the upstream paradigmxyz#1238 changes through b5a32b7692f53050560be5f7fc3c7a7ce7b4fdd6, applied on top of TipLink main. It is a short-lived backport and should disappear through normal upstream synchronization after Paradigm merges paradigmxyz#1238; it is not intended as permanent TipLink-only behavior.

Production evidence

A CDD workflow emitted a terminal error but the host remained alive because asyncio.run could not join the blocked stdin executor thread. The durable task stayed running instead of recording the failed attempt promptly.

Tests

  • uv run --project services/workflow-python python -m unittest discover -s services/workflow-python/tests -p "test_*.py"
  • 23 passed

fineas-bot Bot added 2 commits July 31, 2026 16:27
Use a daemon stdin reader so a blocked follow-up read cannot keep asyncio.run alive after a workflow result or error. Add a regression test covering the Paybill failure shape.
Replace the daemon reader variant with the tested implementation and regression suite from paradigmxyz#1238 at 44bef27.
@fineas-bot fineas-bot Bot changed the title Let workflow hosts exit after errors Backport upstream workflow-host shutdown fix Jul 31, 2026
Carry the follow-up from paradigmxyz#1238 at b5a32b7 so pipe-backed workflow hosts accept protocol messages larger than 64 KiB.
@GoonMachine
GoonMachine merged commit ab3371b into main Jul 31, 2026
36 checks passed
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.

1 participant