Skip to content

[dotnet-port-fixes] Add observability serialization parity tests - #832

Open
Michelle Clayton (michelle-clayton-work) wants to merge 1 commit into
mainfrom
copilot/dotnet-port-fixes-observability-serialization-tests-f3284dd1331f25aa
Open

[dotnet-port-fixes] Add observability serialization parity tests#832
Michelle Clayton (michelle-clayton-work) wants to merge 1 commit into
mainfrom
copilot/dotnet-port-fixes-observability-serialization-tests-f3284dd1331f25aa

Conversation

@michelle-clayton-work

Copy link
Copy Markdown
Contributor

Summary

Adds regression coverage for the existing Go telemetry fallback when sensitive-data serialization fails. The new tests lock in that unserializable payloads do not fail workflow execution and that observability spans record the [Unserializable: ...] marker on message and executor attributes, matching the upstream .NET fix intent selected from PR #7612.

Ported .NET PRs

Breaking Changes

No. This PR only adds regression tests around existing fallback behavior and does not change the public Go API.

Tests and Examples

  • go test ./workflow/internal/observability ./workflow/inproc
  • Added internal observability coverage for executor input/output fallback on serialization errors
  • Added end-to-end in-process workflow coverage ensuring unserializable sensitive-data telemetry does not break runs

Notes

The Go runtime already returned the [Unserializable: %T] fallback from workflow/internal/observability/observability.go; this port is test-parity to keep that behavior aligned with the upstream .NET regression suite.

Generated by .NET to Go Fixes and Test Porting Agent · gpt54 · 270.4 AIC · ⌖ 17 AIC · ⊞ 24.2K ·

Closes #826

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds regression tests to ensure observability telemetry safely falls back to a [Unserializable: %T] marker when sensitive-data serialization fails, and that workflow execution continues successfully (parity with the referenced upstream .NET fix intent).

Changes:

  • Added unit coverage for SerializedAttribute(...) fallback behavior on json.Marshal errors.
  • Added internal observability coverage ensuring executor input/output attributes use the unserializable fallback when sensitive-data serialization fails.
  • Added an in-process end-to-end workflow test verifying unserializable sensitive telemetry does not break runs and records the fallback marker on relevant spans.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
workflow/internal/observability/observability_test.go Adds targeted tests for serialization-fallback behavior in internal observability attributes.
workflow/inproc/observability_test.go Adds an end-to-end inproc workflow regression test validating fallback telemetry markers without failing execution.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@github-actions github-actions Bot added the parity-approved Go API consistency review found no parity issues label Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

parity-approved Go API consistency review found no parity issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[dotnet-port-fixes] Add observability serialization parity tests

2 participants