Skip to content

Activity commands for Standalone Activities#3564

Draft
laurakwhit wants to merge 11 commits into
mainfrom
DT-3976-activity-commands-for-sa
Draft

Activity commands for Standalone Activities#3564
laurakwhit wants to merge 11 commits into
mainfrom
DT-3976-activity-commands-for-sa

Conversation

@laurakwhit

@laurakwhit laurakwhit commented Jun 16, 2026

Copy link
Copy Markdown
Collaborator

Description & motivation 💭

Add support for Pause/Unpause/Reset/UpdateOptions for Standalone Activities in the UI.

Screenshots (if applicable) 📸

Before After
Screenshot 2026-06-16 at 11 08 05 AM Screenshot 2026-07-01 at 9 23 59 AM
Reset Update
Screenshot 2026-07-01 at 9 16 59 AM Screenshot 2026-07-06 at 9 35 26 AM

Design Considerations 🎨

Testing 🧪

How was this tested 👻

  • Manual testing
  • E2E tests added
  • Unit tests added

Steps for others to test: 🚶🏽‍♂️🚶🏽‍♀️

Run temporal server from a local build

  1. Ensure you have cloned the temporal repo
  2. Run make bins and make start
  3. Running temporal server from a local build does not create the namespace, run temporal operator namespace create --namespace canary
  4. Create a search attribute for the canary namespace, run temporal operator search-attribute create --namespace canary --name CustomKeywordField --type Keyword

Run the UI against a local build of temporal server

  1. Checkout the DT-3976-activity-commands-for-sa branch in the UI repo
  2. Make sure the API version here is v1.63.3
  3. cd server/ && make build
  4. cd .. && pnpm dev:local-temporal

Run some sample workflows in the canary-go repo

  1. Run make bins and ./temporal-canary start

  • Navigate to a running Workflow with a pending activity
    • Verify the following work as expected
      • Pause/Unpause
      • Reset
      • Update
  • Navigate to a running standalone activity
    • Verify the following work as expected
      • Pause/Unpause
      • Reset
      • Update
      • Cancel
      • Terminate

With disableWriteActions enabled

  • Verify the following are disabled
    • Pause/Unpause
    • Reset
    • Update
    • Cancel
    • Terminate

Run the UI locally

Note: We just want to be using a server version older than 1.32.0

  1. pnpm dev

  • Navigate to a running standalone activity
    • Verify pause/unpause, reset and update options are not visible

Checklists

Draft Checklist

  • Show pause reason on details page?
  • Should ExecutionStatus filter only show some statuses?
  • Should status badge on details page have "paused" icon when paused if status doesn't update to "paused" from "running"?
  • Verify server version with support and update standaloneActivityCommandsDisabled
  • Verify server version is deployed in Cloud

Merge Checklist

Issue(s) closed

DT-3976

Docs

Any docs updates needed?

@vercel

vercel Bot commented Jun 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
holocene Ready Ready Preview, Comment Jul 18, 2026 12:56am

Request Review

@temporal-cicd

temporal-cicd Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor
Warnings
⚠️

📊 Strict Mode: 6 errors in 2 files (3.8% of 159 total)

src/lib/services/workflow-activities-service.ts (4)
  • L56:28: No overload matches this call.
  • L81:28: No overload matches this call.
  • L106:28: No overload matches this call.
  • L135:28: No overload matches this call.
src/lib/services/standalone-activities.ts (2)
  • L151:6: Type '{ indexedFields?: ({ [k: string]: temporal.api.common.v1.IPayload; } | null); }' is not assignable to type '{ [k: string]: IPayload; }'.
  • L157:2: Type '{ retryPolicy: { backoffCoefficient?: number | undefined; maximumAttempts?: number | undefined; maximumInterval?: string | undefined; initialInterval?: string | undefined; }; scheduleToStartTimeout?: string | undefined; ... 10 more ...; userMetadata: { ...; }; }' is not assignable to type 'StartActivityExecutionRequest'.

Generated by 🚫 dangerJS against 1b41a4e

namespace?: string,
): boolean => {
const version = page.data?.cluster?.serverVersion;
if (version && !minimumVersionRequired('1.31.2', version)) return true;

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Note: Verify which version includes temporalio/temporal#10106.

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.

1 participant