From 721e76a84ba0f07361d7c4dacec48c421580a20a Mon Sep 17 00:00:00 2001 From: wadii Date: Mon, 10 Aug 2026 16:00:32 +0200 Subject: [PATCH 1/5] fix: refetch multivariate flags when landing on the experiment setup step --- frontend/web/components/experiments/steps/SetupStep.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/web/components/experiments/steps/SetupStep.tsx b/frontend/web/components/experiments/steps/SetupStep.tsx index 11b89e96b3f4..edfaf0c95ff9 100644 --- a/frontend/web/components/experiments/steps/SetupStep.tsx +++ b/frontend/web/components/experiments/steps/SetupStep.tsx @@ -45,7 +45,7 @@ const SetupStep: FC = ({ search: search || undefined, type: 'MULTIVARIATE', }, - { skip: !numericEnvId }, + { refetchOnMountOrArgChange: true, skip: !numericEnvId }, ) const multivariateFeatures = featureList?.results ?? [] From bffe4794f09b793a234545e41a308101693dfa93 Mon Sep 17 00:00:00 2001 From: wadii Date: Mon, 10 Aug 2026 16:00:32 +0200 Subject: [PATCH 2/5] fix: keep typed event name on blur in the metric event combobox --- .../EventNameSelect/EventNameSelect.tsx | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx b/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx index 5e960bf5c0be..18406458c373 100644 --- a/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx +++ b/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx @@ -1,5 +1,6 @@ -import { FC, useMemo } from 'react' +import { FC, useMemo, useState } from 'react' import CreatableSelect from 'react-select/creatable' +import { InputActionMeta } from 'react-select' import { useGetWarehouseConnectionEventsQuery, useGetWarehouseConnectionsQuery, @@ -33,6 +34,19 @@ const EventNameSelect: FC = ({ onChange, value }) => { ) const options = useMemo(() => buildEventOptions(data?.events), [data?.events]) const showWarning = isSuccess && isUnknownEvent(value, data?.events) + const [inputValue, setInputValue] = useState('') + + // Keep the typed text on blur (react-select discards it by default) so + // clicking outside commits the value instead of clearing it. + const handleInputChange = (val: string, meta: InputActionMeta) => { + if (meta.action === 'input-change') setInputValue(val) + if (meta.action === 'set-value') setInputValue('') + } + const handleBlur = () => { + if (!inputValue) return + onChange(inputValue) + setInputValue('') + } return (
@@ -42,6 +56,9 @@ const EventNameSelect: FC = ({ onChange, value }) => { classNamePrefix='react-select' isClearable isLoading={isLoading} + inputValue={inputValue} + onInputChange={handleInputChange} + onBlur={handleBlur} maxMenuHeight={200} menuPlacement='auto' options={options} From 9207420227b2edcedf2c214846210def2fd040e5 Mon Sep 17 00:00:00 2001 From: wadii Date: Mon, 10 Aug 2026 16:00:32 +0200 Subject: [PATCH 3/5] fix: use default text colour for winning variation stat --- .../results/ExperimentSummaryScorecard.tsx | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/frontend/web/components/experiments/results/ExperimentSummaryScorecard.tsx b/frontend/web/components/experiments/results/ExperimentSummaryScorecard.tsx index 537bdaa31d13..14a2de6aa55b 100644 --- a/frontend/web/components/experiments/results/ExperimentSummaryScorecard.tsx +++ b/frontend/web/components/experiments/results/ExperimentSummaryScorecard.tsx @@ -51,16 +51,12 @@ const ExperimentSummaryScorecard: FC = ({ loading={!hasResults} value={ summary?.winnerName ? ( - - - + ) : undefined } /> From 78ffcff1f4ae58b7b6eb59a878a6b31efb7f676b Mon Sep 17 00:00:00 2001 From: wadii Date: Mon, 10 Aug 2026 16:21:50 +0200 Subject: [PATCH 4/5] fix: remove redundant left margin on page title CTA --- frontend/web/components/PageTitle.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/web/components/PageTitle.tsx b/frontend/web/components/PageTitle.tsx index c35841c1b4aa..223b9bb1a000 100644 --- a/frontend/web/components/PageTitle.tsx +++ b/frontend/web/components/PageTitle.tsx @@ -20,7 +20,7 @@ const PageTitle: FC = ({ children, className, cta, title }) => { )}
- {!!cta &&
{cta}
} + {!!cta &&
{cta}
}
From 783fb60b4fd219a3f673cfcf3f389450853157d4 Mon Sep 17 00:00:00 2001 From: wadii Date: Tue, 11 Aug 2026 10:33:35 +0200 Subject: [PATCH 5/5] fix: reset event name draft when the selection is cleared --- .../experiments/EventNameSelect/EventNameSelect.tsx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx b/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx index 18406458c373..880e75f0dbfb 100644 --- a/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx +++ b/frontend/web/components/experiments/EventNameSelect/EventNameSelect.tsx @@ -40,7 +40,10 @@ const EventNameSelect: FC = ({ onChange, value }) => { // clicking outside commits the value instead of clearing it. const handleInputChange = (val: string, meta: InputActionMeta) => { if (meta.action === 'input-change') setInputValue(val) - if (meta.action === 'set-value') setInputValue('') + } + const handleChange = (option: EventOption | null) => { + setInputValue('') + onChange(option?.value ?? '') } const handleBlur = () => { if (!inputValue) return @@ -63,7 +66,7 @@ const EventNameSelect: FC = ({ onChange, value }) => { menuPlacement='auto' options={options} value={value ? { label: value, value } : null} - onChange={(option: EventOption | null) => onChange(option?.value ?? '')} + onChange={handleChange} placeholder='e.g. checkout_completed' formatCreateLabel={(input: string) => `Use "${input}"`} noOptionsMessage={() => 'Type to add a new event'}