Skip to content

Commit 8313acf

Browse files
V48: Drop duplicate Read cancel under compose
Cancel run stays only on telemetry header right (deposit parity).
1 parent 33104b4 commit 8313acf

2 files changed

Lines changed: 15 additions & 43 deletions

File tree

apps/uapi/components/reads/ReadPageClient/ReadPageClient.tsx

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -341,14 +341,6 @@ export default function ReadPageClient() {
341341
error={synthesis.error}
342342
runId={synthesis.runId}
343343
onSynthesize={() => void synthesis.synthesize()}
344-
onCancel={
345-
showCancel
346-
? () => {
347-
void synthesis.cancel();
348-
}
349-
: undefined
350-
}
351-
isCancelling={synthesis.isCancelling}
352344
canSynthesize={Boolean(
353345
repositoryContext?.selectedRepository?.fullName &&
354346
repositoryContext?.selectedCommit,

apps/uapi/components/reads/ReadsNeedComposePanel/ReadsNeedComposePanel.tsx

Lines changed: 15 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
* Read Need compose + option synthesis/review (deposit Obfuscations twin).
33
* Free-text Need + Relevant / Irrelevant path pickers + synthesize CTA.
44
* Options list and settle live in the parent detail grid (deposit parity).
5+
* Cancel lives only on ReadsPipelineTelemetry (header right) — not here.
56
*/
67
"use client";
78

@@ -25,9 +26,6 @@ export function ReadsNeedComposePanel(props: {
2526
error: string | null;
2627
runId: string | null;
2728
onSynthesize: () => void;
28-
/** Cooperative cancel while synthesis is running (deposit twin). */
29-
onCancel?: () => void;
30-
isCancelling?: boolean;
3129
canSynthesize: boolean;
3230
isConfigLocked?: boolean;
3331
}) {
@@ -43,8 +41,6 @@ export function ReadsNeedComposePanel(props: {
4341
error,
4442
runId,
4543
onSynthesize,
46-
onCancel,
47-
isCancelling = false,
4844
canSynthesize,
4945
isConfigLocked = false,
5046
} = props;
@@ -92,42 +88,26 @@ export function ReadsNeedComposePanel(props: {
9288
repositoryContext={repositoryContext}
9389
/>
9490

95-
<div className="mt-4 flex flex-wrap items-center gap-3">
96-
<ProductSynthesizeAssetPackOptionsButton
97-
data-testid="reads-synthesize-options"
98-
onClick={onSynthesize}
99-
disabled={!canSynthesize || !need.trim() || running}
100-
running={running && status === "running"}
101-
/>
102-
{running && onCancel ? (
103-
<button
104-
type="button"
105-
data-testid="reads-cancel-synthesis"
106-
aria-label="Cancel read synthesis run"
107-
disabled={isCancelling}
108-
onClick={() => {
109-
onCancel();
110-
}}
111-
className="border border-rose-300/30 bg-rose-300/10 px-3 py-2 text-[0.62rem] font-medium uppercase tracking-[0.14em] text-rose-100 transition hover:border-rose-200/45 hover:bg-rose-300/18 disabled:cursor-not-allowed disabled:opacity-40"
112-
>
113-
{isCancelling ? "Cancelling…" : "Cancel run"}
114-
</button>
115-
) : null}
116-
{status === "cancelled" ? (
117-
<span
118-
data-testid="reads-synthesis-cancelled-badge"
119-
className="border border-rose-300/25 bg-rose-300/10 px-3 py-2 font-mono text-[0.62rem] uppercase tracking-[0.14em] text-rose-100"
120-
>
121-
Cancelled
122-
</span>
123-
) : null}
124-
</div>
91+
<ProductSynthesizeAssetPackOptionsButton
92+
data-testid="reads-synthesize-options"
93+
onClick={onSynthesize}
94+
disabled={!canSynthesize || !need.trim() || running}
95+
running={running && status === "running"}
96+
/>
12597
{runId || status !== "idle" ? (
12698
<div className="mt-2 flex flex-wrap items-center gap-3 text-xs text-neutral-500">
12799
{runId ? (
128100
<span className="font-mono text-[0.65rem]">{runId}</span>
129101
) : null}
130102
<span className="uppercase tracking-wide">status: {status}</span>
103+
{status === "cancelled" ? (
104+
<span
105+
data-testid="reads-synthesis-cancelled-badge"
106+
className="border border-rose-300/25 bg-rose-300/10 px-2 py-0.5 font-mono text-[0.62rem] uppercase tracking-[0.14em] text-rose-100"
107+
>
108+
Cancelled
109+
</span>
110+
) : null}
131111
</div>
132112
) : null}
133113

0 commit comments

Comments
 (0)