From 5100bd8a4138408d6699b2fb47e6f58af29f0171 Mon Sep 17 00:00:00 2001
From: Gautam Singh <5769869+gautamsi@users.noreply.github.com>
Date: Sat, 24 Jan 2026 00:45:41 -0600
Subject: [PATCH 1/2] feat(replay): add prioritySeconds to ReplayForm and
related services
---
apps/webapp/app/components/runs/v3/ReplayRunDialog.tsx | 7 +++++++
.../app/routes/resources.taskruns.$runParam.replay.ts | 1 +
apps/webapp/app/v3/services/replayTaskRun.server.ts | 1 +
apps/webapp/app/v3/testTask.ts | 5 +++++
4 files changed, 14 insertions(+)
diff --git a/apps/webapp/app/components/runs/v3/ReplayRunDialog.tsx b/apps/webapp/app/components/runs/v3/ReplayRunDialog.tsx
index 83490aee11..9192020e1b 100644
--- a/apps/webapp/app/components/runs/v3/ReplayRunDialog.tsx
+++ b/apps/webapp/app/components/runs/v3/ReplayRunDialog.tsx
@@ -201,6 +201,7 @@ function ReplayForm({
tags,
version,
machine,
+ prioritySeconds,
},
] = useForm({
id: "replay-task",
@@ -499,6 +500,12 @@ function ReplayForm({
Delays run by a specific duration.
{delaySeconds.error}
+
+
+
+ Sets the priority of the run. Higher values mean higher priority.
+ {prioritySeconds.error}
+
{
idempotencyKeyTTLSeconds: submission.value.idempotencyKeyTTLSeconds,
ttlSeconds: submission.value.ttlSeconds,
version: submission.value.version,
+ prioritySeconds: submission.value.prioritySeconds,
});
if (!newRun) {
diff --git a/apps/webapp/app/v3/services/replayTaskRun.server.ts b/apps/webapp/app/v3/services/replayTaskRun.server.ts
index 2345d209dd..ceaae95398 100644
--- a/apps/webapp/app/v3/services/replayTaskRun.server.ts
+++ b/apps/webapp/app/v3/services/replayTaskRun.server.ts
@@ -110,6 +110,7 @@ export class ReplayTaskRunService extends BaseService {
overrideOptions.version === "latest" ? undefined : overrideOptions.version,
bulkActionId: overrideOptions?.bulkActionId,
region,
+ priority: overrideOptions.prioritySeconds,
},
},
{
diff --git a/apps/webapp/app/v3/testTask.ts b/apps/webapp/app/v3/testTask.ts
index 79d9e97ec3..bf167ed170 100644
--- a/apps/webapp/app/v3/testTask.ts
+++ b/apps/webapp/app/v3/testTask.ts
@@ -46,6 +46,11 @@ export const RunOptionsData = z.object({
message: "Each tag must be at most 128 characters long",
}),
version: z.string().optional(),
+ prioritySeconds: z
+ .number()
+ .min(0)
+ .optional()
+ .transform((val) => (val === 0 ? undefined : val)),
});
export type RunOptionsData = z.infer;
From 443edb2ece5eb0f17c8ac8d7ed2ee32a022b8d04 Mon Sep 17 00:00:00 2001
From: Gautam Singh <5769869+gautamsi@users.noreply.github.com>
Date: Sat, 24 Jan 2026 01:18:19 -0600
Subject: [PATCH 2/2] feat(replay): add prioritySeconds to StandardTaskForm and
TestTaskService
---
.../route.tsx | 16 ++++++++++++++++
apps/webapp/app/v3/services/testTask.server.ts | 2 ++
2 files changed, 18 insertions(+)
diff --git a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.test.tasks.$taskParam/route.tsx b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.test.tasks.$taskParam/route.tsx
index 5d6fdb80ff..d452a75713 100644
--- a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.test.tasks.$taskParam/route.tsx
+++ b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.test.tasks.$taskParam/route.tsx
@@ -409,6 +409,7 @@ function StandardTaskForm({
tags,
version,
machine,
+ prioritySeconds,
},
] = useForm({
id: "test-task",
@@ -730,6 +731,12 @@ function StandardTaskForm({
Delays run by a specific duration.
{delaySeconds.error}
+
+
+
+ Sets the priority of the run. Higher values mean higher priority.
+ {prioritySeconds.error}
+
Limits concurrency by creating a separate queue for each value of the key.
{concurrencyKey.error}
+
+
+
+ Sets the priority of the run. Higher values mean higher priority.
+ {prioritySeconds.error}
+