Skip to content

Add standalone activity to throughput stress (opt-in)#316

Closed
prathyushpv wants to merge 2 commits intofeature/tps-nexus-callbacksfrom
feature/tps-standalone-activity
Closed

Add standalone activity to throughput stress (opt-in)#316
prathyushpv wants to merge 2 commits intofeature/tps-nexus-callbacksfrom
feature/tps-standalone-activity

Conversation

@prathyushpv
Copy link

What was changed

Add a DoStandaloneActivity proto message and ClientAction variant that invokes a payload activity directly via the low-level StartActivityExecution / PollActivityExecution RPCs, bypassing normal workflow activity scheduling. Namespace is now threaded through ClientActionsExecutor (required by these RPCs).

The feature is gated behind --option enable-standalone-activity=true.

Why?

Porting a missing feature from bench-go's throughputstress. The feature is opt-in because the standalone activity API requires server-side support for workflow-independent activities, which is not available in all environments (e.g. dev server 1.30.x).

Checklist

  1. Closes N/A

  2. How was this tested:
    go test ./scenarios/ -parallel 1 -timeout 5m passes

  3. Any docs updates needed?
    No

Adds a new EchoAsyncWithSignalOperation (echo-async-with-signal) backed
by a workflow that waits for an "unblock" signal before completing. The
new ExecuteNexusOperationAttachCallbacks action starts N parallel async
Nexus ops, attaches completion callbacks via GetNexusOperationExecution,
signals each handler workflow to complete, then waits for all to finish.
This exercises the Nexus callback attachment path on every iteration
when a nexus-endpoint is configured.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@prathyushpv prathyushpv requested review from a team as code owners March 25, 2026 02:38
@prathyushpv prathyushpv marked this pull request as draft March 25, 2026 02:41
Adds a DoStandaloneActivity ClientAction that invokes a payload activity
directly via the low-level StartActivityExecution / PollActivityExecution
RPCs, bypassing normal workflow activity scheduling. Namespace is now
threaded through ClientActionsExecutor (required by these RPCs).

The feature is gated behind --option enable-standalone-activity=true
because the API requires server-side support for workflow-independent
activities, which is not available in all environments.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@prathyushpv prathyushpv force-pushed the feature/tps-nexus-callbacks branch from 3c41674 to 16ca196 Compare March 25, 2026 02:50
@prathyushpv prathyushpv force-pushed the feature/tps-standalone-activity branch from 3217c0b to 099f0c4 Compare March 25, 2026 02:50
@prathyushpv prathyushpv deleted the branch feature/tps-nexus-callbacks March 25, 2026 16:09
@prathyushpv prathyushpv deleted the feature/tps-standalone-activity branch March 25, 2026 16:09
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