Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion apps/web/src/pages/onboarding-page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ export function OnboardingPage({ user }: { readonly user: SessionUser }) {
return (
<OnboardingLayout step={1}>
<div className="onboarding-phase onboarding-phase--credential" key="provider-setup">
<h1 className="onboarding-title">Connect a brain</h1>
<h1 className="onboarding-title">Choose your AI model</h1>
<p className="onboarding-subtitle">
Pick a provider and connect it, or skip for now and connect one later in Settings.
</p>
Expand Down
2 changes: 1 addition & 1 deletion e2e/browser/composer-layout.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ describeBrowser("composer layout", () => {

// A placeholder key is enough: connecting stores a credential without
// calling the provider, and creating a bench needs no inference.
await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Anthropic");
await page.waitForSelector("input[type=password]");
await page.type("input[type=password]", "sk-ant-placeholder");
Expand Down
2 changes: 1 addition & 1 deletion e2e/browser/first-run.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ async function signUp(page: Page, origin: string): Promise<void> {
await page.type("input[type=email]", `alice+${String(Date.now())}@example.com`);
await page.type("input[type=password]", "correct-horse-battery-staple");
await page.click("button[type=submit]");
await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Anthropic");
await page.waitForSelector("input[type=password]");
await page.type("input[type=password]", "sk-ant-placeholder");
Expand Down
2 changes: 1 addition & 1 deletion e2e/browser/ollama-chat.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ describeBrowser("ollama chat", () => {

// The Ollama option takes a base URL and offers the models the local
// server reports as pulled — no key anywhere.
await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Ollama (local)");
await page.waitForFunction(
`Array.from(document.querySelectorAll('select[aria-label="Model"] option')).length > 1`,
Expand Down
2 changes: 1 addition & 1 deletion e2e/browser/reply.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ describeBrowser("worker reply", () => {
await page.click("button[type=submit]");

// The Anthropic option pins api.anthropic.com; only Custom takes a base URL.
await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Custom");
await page.waitForSelector("input[type=password]");
const inputs = await page.$$("form input:not([type=radio])");
Expand Down
2 changes: 1 addition & 1 deletion e2e/browser/setup.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ describeBrowser("client setup", () => {
await page.type("input[type=password]", "correct-horse-battery-staple");
await page.click("button[type=submit]");

await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Anthropic");
await page.waitForSelector("input[type=password]");
await page.type("input[type=password]", "sk-ant-placeholder");
Expand Down
2 changes: 1 addition & 1 deletion e2e/browser/zero-to-one.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ describeBrowser("0-to-1 gate", () => {
await page.click("button[type=submit]");

// Only the Custom option takes a base URL.
await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Custom");
await page.waitForSelector("input[type=password]");
await page.type("form input:not([type=radio]):not([type=password])", `${aimock().url}/v1`);
Expand Down
2 changes: 1 addition & 1 deletion e2e/lib/first-run.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ export async function runFirstRunFlow(page: Page, origin: string): Promise<void>

// Provider connect is the only onboarding step; a placeholder key is
// enough because connecting stores a credential without calling the provider.
await waitForText(page, "Connect a brain");
await waitForText(page, "Choose your AI model");
await clickText(page, "label", "Anthropic");
await page.waitForSelector("input[type=password]");
await page.type("input[type=password]", "sk-ant-placeholder");
Expand Down
Loading