diff --git a/ui/src/components/NewIssueDialog.tsx b/ui/src/components/NewIssueDialog.tsx
index b01457e9..94382525 100644
--- a/ui/src/components/NewIssueDialog.tsx
+++ b/ui/src/components/NewIssueDialog.tsx
@@ -288,6 +288,9 @@ export function NewIssueDialog() {
const [assigneeValue, setAssigneeValue] = useState("");
const [reviewerValue, setReviewerValue] = useState("");
const [approverValue, setApproverValue] = useState("");
+ const [showReviewerRow, setShowReviewerRow] = useState(false);
+ const [showApproverRow, setShowApproverRow] = useState(false);
+ const [participantMenuOpen, setParticipantMenuOpen] = useState(false);
const [projectId, setProjectId] = useState("");
const [projectWorkspaceId, setProjectWorkspaceId] = useState("");
const [assigneeOptionsOpen, setAssigneeOptionsOpen] = useState(false);
@@ -560,6 +563,8 @@ export function NewIssueDialog() {
setAssigneeValue(assigneeValueFromSelection(newIssueDefaults));
setReviewerValue("");
setApproverValue("");
+ setShowReviewerRow(false);
+ setShowApproverRow(false);
setAssigneeModelOverride("");
setAssigneeThinkingEffort("");
setAssigneeChrome(false);
@@ -580,6 +585,8 @@ export function NewIssueDialog() {
);
setReviewerValue(draft.reviewerValue ?? "");
setApproverValue(draft.approverValue ?? "");
+ setShowReviewerRow(!!(draft.reviewerValue));
+ setShowApproverRow(!!(draft.approverValue));
setProjectId(restoredProjectId);
setProjectWorkspaceId(draft.projectWorkspaceId ?? defaultProjectWorkspaceIdForProject(restoredProject));
setAssigneeModelOverride(draft.assigneeModelOverride ?? "");
@@ -601,6 +608,8 @@ export function NewIssueDialog() {
setAssigneeValue(assigneeValueFromSelection(newIssueDefaults));
setReviewerValue("");
setApproverValue("");
+ setShowReviewerRow(false);
+ setShowApproverRow(false);
setAssigneeModelOverride("");
setAssigneeThinkingEffort("");
setAssigneeChrome(false);
@@ -645,6 +654,8 @@ export function NewIssueDialog() {
setAssigneeValue("");
setReviewerValue("");
setApproverValue("");
+ setShowReviewerRow(false);
+ setShowApproverRow(false);
setProjectId("");
setProjectWorkspaceId("");
setAssigneeOptionsOpen(false);
@@ -668,6 +679,8 @@ export function NewIssueDialog() {
setAssigneeValue("");
setReviewerValue("");
setApproverValue("");
+ setShowReviewerRow(false);
+ setShowApproverRow(false);
setProjectId("");
setProjectWorkspaceId("");
setAssigneeModelOverride("");
@@ -1179,8 +1192,139 @@ export function NewIssueDialog() {
);
}}
/>
+
+ {/* Three-dot menu to add Reviewer / Approver rows */}
+