Runtime Policy Controls
Understand how runtime limits are checked before a run starts.
How Limits Are Applied
The active runner key can include runtime limits, and LoadStrike checks those limits before workload execution begins.
Current Enforced Limits
Runtime policies currently cap AgentsCount, total registered scenario count, custom worker plugin count, reporting sink count, targeted scenario count, ClusterCommandTimeout, and ScenarioCompletionTimeout.
When A Run Is Blocked
If requested runtime settings exceed the allowed limits, LoadStrike fails validation before the run starts and returns a clear message naming the field and allowed maximum.
Configuration Stability
Runtime limits can change without requiring any change to your test project code.
Feature Usage Samples
How to use snippets for Runtime Policy Controls.
Switch between C#, Java, Python, TypeScript, and JavaScript to see the native SDK shape for this sample.
Licensing note: every runnable sample requires a valid runner key via WithRunnerKey("...") or config key LoadStrike:RunnerKey.
Runtime Settings Checked Against Policy
LoadStrikeRunner.RegisterScenarios(controllerScenario, agentScenario)
.WithRunnerKey("rkl_your_local_runner_key")
.WithAgentsCount(2)
.WithTargetScenarios("controllerScenario", "agentScenario")
.WithAgentTargetScenarios("agentScenario")
.WithCoordinatorTargetScenarios("controllerScenario")
.WithScenarioCompletionTimeout(TimeSpan.FromSeconds(30))
.WithClusterCommandTimeout(TimeSpan.FromSeconds(45))
.Run();
import com.loadstrike.runtime.LoadStrikeRuntime.LoadStrikeRunner;
LoadStrikeRunner.registerScenarios(controllerScenario, agentScenario)
.withRunnerKey("rkl_your_local_runner_key")
.withAgentsCount(2)
.withTargetScenarios("controllerScenario", "agentScenario")
.withAgentTargetScenarios("agentScenario")
.withCoordinatorTargetScenarios("controllerScenario")
.withScenarioCompletionTimeout(30d)
.withClusterCommandTimeout(45d)
.run();
from loadstrike_sdk import LoadStrikeRunner
LoadStrikeRunner.register_scenarios(controller_scenario, agent_scenario) \
.with_runner_key("rkl_your_local_runner_key") \
.with_agents_count(2) \
.with_target_scenarios("controllerScenario", "agentScenario") \
.with_agent_target_scenarios("agentScenario") \
.with_coordinator_target_scenarios("controllerScenario") \
.with_scenario_completion_timeout(30) \
.with_cluster_command_timeout(45) \
.run()
import { LoadStrikeRunner } from "@loadstrike/loadstrike-sdk";
await LoadStrikeRunner
.registerScenarios(controllerScenario, agentScenario)
.withRunnerKey("rkl_your_local_runner_key")
.withAgentsCount(2)
.withTargetScenarios("controllerScenario", "agentScenario")
.withAgentTargetScenarios("agentScenario")
.withCoordinatorTargetScenarios("controllerScenario")
.withScenarioCompletionTimeout(30)
.withClusterCommandTimeout(45)
.run();
const { LoadStrikeRunner } = require("@loadstrike/loadstrike-sdk");
await LoadStrikeRunner
.registerScenarios(controllerScenario, agentScenario)
.withRunnerKey("rkl_your_local_runner_key")
.withAgentsCount(2)
.withTargetScenarios("controllerScenario", "agentScenario")
.withAgentTargetScenarios("agentScenario")
.withCoordinatorTargetScenarios("controllerScenario")
.withScenarioCompletionTimeout(30)
.withClusterCommandTimeout(45)
.run();
What Gets Checked
Checks that the requested number of agents is allowed for the active runner key and plan.
Checks total registered scenarios and how many are explicitly targeted to each role.
Checks how many custom worker plugins and reporting sinks are configured for the run.
Checks the requested coordinator wait time against the allowed cluster timeout ceiling.
Checks the requested graceful-stop duration against the allowed scenario timeout ceiling.
If any configured value exceeds the plan allowance, run start fails before workload execution begins.