DT-4051: pre-populate input when starting standalone activity like this one#3469
Merged
Conversation
…is one 'Start a standalone activity like this one' now copies the input payload, encoding, message type, user metadata (summary/details), and search attributes from the source execution, matching the existing workflow behavior.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
- Remove duplicate handleError/onError in fetchPaginatedActivities
- Use undefined instead of null for searchAttributes variable
- Use Partial<RetryPolicy> in StartActivityExecutionRequest
- Use SearchAttributesSchema instead of SearchAttributeInput[] in form data type
- Coalesce runId null to undefined in activity-actions navigation
- Use z.string().default('') for initialInterval/maximumInterval schema fields
- Initialize backoffCoefficient/maximumAttempts as null to match schema type
- Cast form.data and search attribute arrays to their correct types
- Change backoffCoefficient/maximumAttempts in StandaloneActivityFormData
to number | null | undefined to match Zod schema inference
- Change all z.string().optional() fields to .default('') so superForm
infers string instead of string | undefined, matching the interface
- Change encoding schema field to .default('json/plain')
- Remove both 'as' casts — types now align structurally
Revert .default('') to .optional() for intentionally optional string
fields; update StandaloneActivityFormData to string | undefined to match.
Keep .default('json/plain') for encoding (always set via store) and
.default('') for initialInterval/maximumInterval (RetryPolicyInput binds
require non-nullable strings).
rossnelson
commented
May 28, 2026
| backoffCoefficient: number | null | undefined; | ||
| maximumInterval: string; | ||
| maximumAttempts: string; | ||
| maximumAttempts: number | null | undefined; |
Collaborator
Author
There was a problem hiding this comment.
making zod generated types happy.
rossedfort
approved these changes
May 29, 2026
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.
Summary
Start a standalone activity like this onenow copies the input payload, encoding, message type, user metadata (summary/details), and search attributes from the source execution — matching the existing behaviour ofStart a workflow like this onerunIdtoStartActivityExecutionQueryParamsandrouteForStartStandaloneActivityso the start form knows which execution to copy fromfetchInitialValuesForStartActivityinstandalone-activities.tswith two focused private helpers (extractInputValues,extractMetadataString) to decode the source activity's payload and metadataactivityIdandrunIdare present in the URL, then pre-populates all fields and auto-expands advanced options if neededTest plan
Prerequisites
temporal server start-devfrontend-shared-workflows):pnpm devpnpm devSteps
http://localhost:8080/namespaces/default/standalone-activities/startunversioned.default.Rosss-MacBook-Pro.localgreet{"name": "test-input-123"}30sExpected (this branch)
{"name": "test-input-123"}runIdparam — fields are empty)Regression check
Closes DT-4051