diff --git a/apps/app/src/components/plugin/PluginNewThreadComposer.test.tsx b/apps/app/src/components/plugin/PluginNewThreadComposer.test.tsx --- a/apps/app/src/components/plugin/PluginNewThreadComposer.test.tsx +++ b/apps/app/src/components/plugin/PluginNewThreadComposer.test.tsx @@ + it("marks a provider picked in an unseeded plugin composer as explicit", async () => { + const submitted: NewThreadRequest[] = []; + render( + + { + submitted.push(request); + }} + /> + , + ); + + await waitFor(() => { + expect(latestPromptBoxProps().disabled).toBe(false); + }); + await act(async () => { + latestPromptBoxProps().execution.provider.onChange("claude-code"); + }); + await waitFor(() => { + expect(latestPromptBoxProps().execution.provider.selectedId).toBe( + "claude-code", + ); + expect(latestPromptBoxProps().disabled).toBe(false); + }); + await submit(); + + expect(submitted).toHaveLength(1); + expect(submitted[0]?.providerId).toBe("claude-code"); + expect(submitted[0]?.executionInputSources.providerId).toBe("explicit"); + });