Skip to content

Mark system Nexus envelope payloads#1667

Open
tconley1428 wants to merge 2 commits into
mainfrom
system-nexus-payload-marker
Open

Mark system Nexus envelope payloads#1667
tconley1428 wants to merge 2 commits into
mainfrom
system-nexus-payload-marker

Conversation

@tconley1428

@tconley1428 tconley1428 commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

What changed

System Nexus envelope payloads encoded by the system Nexus payload converter now carry a __temporal_system_payload metadata marker with value b"true".

Payload visitors now use that marker to detect system Nexus envelopes whenever they encounter an already-encoded payload. This lets nested user payloads inside the envelope still be decoded and visited even when the payload is no longer accompanied by a Nexus endpoint field.

Detection behavior

Detection is metadata-only. Unmarked payloads are treated as regular payloads, even if they are used as the input for the Temporal system Nexus endpoint. Marked payloads are treated as system Nexus envelopes regardless of endpoint.

Tests

  • ./.venv/bin/pytest tests/nexus/test_temporal_system_nexus.py -q
  • ./.venv/bin/pytest tests/worker/test_visitor.py -q
  • poe lint

@tconley1428
tconley1428 requested a review from a team as a code owner July 21, 2026 20:00
@tconley1428
tconley1428 marked this pull request as draft July 21, 2026 20:01
@tconley1428
tconley1428 force-pushed the system-nexus-payload-marker branch from 4cf4eaa to b489b0e Compare July 23, 2026 19:12
@tconley1428
tconley1428 marked this pull request as ready for review July 23, 2026 19:14
@dplyukhin dplyukhin self-assigned this Jul 23, 2026
Comment thread temporalio/bridge/_visitor.py Outdated
Comment thread tests/worker/test_visitor.py Outdated
@dplyukhin dplyukhin removed their assignment Jul 24, 2026
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