Skip to content

Conversation

@yycptt
Copy link
Member

@yycptt yycptt commented Oct 29, 2025

What changed?

  • Use immutable chasm context to access node when doing validations

Why?

  • Validation doesn't change component state and nothing needs to be persisted.
  • Some parts of the system skips persistence when component access fail on validation step, if node is marked dirty, a dirty mutable state panic will be triggered upon releasing the execution lock.

How did you test it?

  • built
  • run locally and tested manually
  • covered by existing tests
  • added new unit test(s)
  • added new functional test(s)

@yycptt yycptt requested a review from lina-temporal October 29, 2025 00:37
@yycptt yycptt requested review from a team as code owners October 29, 2025 00:37
@yycptt yycptt force-pushed the chasm-fix-task-validation-ctx branch from b2e5314 to e1a1a61 Compare November 5, 2025 00:34
@yycptt yycptt merged commit 45000b8 into temporalio:main Nov 6, 2025
57 checks passed
@yycptt yycptt deleted the chasm-fix-task-validation-ctx branch November 6, 2025 19:01
pdoerner pushed a commit that referenced this pull request Nov 25, 2025
## What changed?
- Use immutable chasm context to access node when doing validations

## Why?
- Validation doesn't change component state and nothing needs to be
persisted.
- Some parts of the system skips persistence when component access fail
on validation step, if node is marked dirty, a dirty mutable state panic
will be triggered upon releasing the execution lock.

## How did you test it?
- [x] built
- [ ] run locally and tested manually
- [ ] covered by existing tests
- [x] added new unit test(s)
- [ ] added new functional test(s)
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