Skip to content

feat: emit .NET models as records - #158

Merged
tconley1428 merged 1 commit into
mainfrom
dotnet-immutable-records
Aug 27, 2026
Merged

feat: emit .NET models as records#158
tconley1428 merged 1 commit into
mainfrom
dotnet-immutable-records

Conversation

@tconley1428

@tconley1428 tconley1428 commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Emit WIT record models as immutable C# records with init-only properties.
  • Make @nexus.source acquisition explicit at generated workflow-side call sites. Those callers obtain the context value and pass it to the request constructor; wire decoding passes the value serialized in the request. Models themselves no longer invoke ambient context.
  • Update checked-in .NET generated examples and generation assertions.

Validation

  • cargo test --features advanced --test generate_dotnet
  • ./scripts/validate.sh dotnet with the locally installed .NET 9 runtime
  • The repository-wide suite has unrelated TypeScript JSON runtime-test interference/failures and the pre-existing Java Unicode word-boundary corpus mismatch.

@tconley1428
tconley1428 marked this pull request as ready for review August 27, 2026 17:54
@tconley1428
tconley1428 requested a review from a team as a code owner August 27, 2026 17:54
Comment thread advanced/samples/dotnet/wit/workflow-service/Models.cs Outdated
Comment thread advanced/samples/dotnet/wit/start-workflow/Models.cs
Comment thread advanced/samples/dotnet/wit/start-workflow/Models.cs Outdated
@tconley1428
tconley1428 force-pushed the dotnet-immutable-records branch 4 times, most recently from 4d81ff4 to 7068754 Compare August 27, 2026 19:57
@tconley1428
tconley1428 changed the base branch from interceptor-generation to main August 27, 2026 19:58
Comment thread advanced/samples/dotnet/wit/start-workflow/Models.cs Outdated
@tconley1428
tconley1428 force-pushed the dotnet-immutable-records branch from 7068754 to 17e98ea Compare August 27, 2026 20:48
@tconley1428
tconley1428 merged commit ecb1099 into main Aug 27, 2026
4 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.

2 participants