Repository navigation
Catch "Workflow code ... deterministic" in Temporal.DeterminismScope - #5585
Merged
Merged
Conversation
Add tokens for 'Workflow code is/must be/should be deterministic' and 'deterministic Workflow code', and add the determinism-scope guidance the rule message points to under the AGENTS.md style guide.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
📖 Docs PR preview linksThis PR does not change any pages in /docs. If you make updates, links to the modified pages will appear here. |
Contributor
There was a problem hiding this comment.
🔵 Needs a closer look
Neither changed file is under docs/, so the repository’s automated-review scope excludes this PR and human review is required.
No open issues 🎉
What changed in this PR
This PR extends the advisory determinism wording rule to catch “Workflow code” claims and documents “Workflow Definition” as the preferred term.
Changes:
- Adds two Vale patterns for determinism claims involving “Workflow code,” without changing CI enforcement.
- Adds contributor guidance with correct and incorrect examples.
- Leaves existing documentation instances to the follow-up tracked in #5284.
| File | Description |
|---|---|
vale/styles/Temporal/DeterminismScope.yml |
Adds patterns for “Workflow code” determinism claims. |
AGENTS.md |
Explains determinism terminology and links to the advisory rule. |
Review effort: Balanced
Add 'must remain/stay', 'keep(s/ing) Workflow code deterministic', an aside or parenthetical between 'Workflow code' and the verb, and 'deterministic constraints of the Workflow code'.
Duncanma
enabled auto-merge (squash)
October 29, 2026 15:57
jsundai
approved these changes
Oct 29, 2026
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
PRs #5279 and #5281 moved determinism wording from "Workflow code" to "Workflow Definition", but
Temporal.DeterminismScopeonly caught "Workflow(s) is/must be deterministic", "deterministic Workflow(s)", and "Workflow determinism". It missed the "Workflow code" phrasing the sweep removed, so Vale stayed clean on new text like it (seen in #5551).vale/styles/Temporal/DeterminismScope.yml: add RE2 tokens (no lookaround) for:Still
level: suggestionand advisory (Temporal.DeterminismScope = NOin.vale-ci.ini), so CI is unaffected. The existing Workflow(s) token also gains "be", "must remain", "must stay", and "stays".AGENTS.md: add the determinism-scope subsection the rule message points to, with a Correct/Incorrect pair and a link to/workflow-definition.Checks
On a sample file the tokens flag each phrasing above. They don't flag "Spans are created from Workflow code", "Don't do I/O in Workflow code", "Workflow code can call Activities", or "The Workflow Definition must remain deterministic".
Run alone over
docs/on current main, the rule reports 29 hits, all on "Workflow code" phrasings (the old tokens have none). #5586 fixes all of them, after which the rule reports 0.Vale only checks prose, so a few phrasings inside JSX or indented code (for example the
description:strings indesign-patterns/index.mdx) aren't flagged. #5586 fixes those by hand.