The Kimi family is visible end-to-end: e2e asserts onboarding and Settings, AGENTS.md learns the provider recipe

- desktop.spec.ts verifies Kimi / Kimi CN / Kimi Code cards in the onboarding provider step, the device-flow sign-in button on Kimi Code, and all three under Settings -> Providers
- AGENTS.md documents the catalog-driven provider architecture and the Kimi endpoints so the doc stays truthful
- Full gate green: typecheck, lint, unit (269), contract, integration, replay-eval, Playwright e2e (3)
This commit is contained in:
ZacharyZhang-NY committed 2026-07-10 17:21:37 -04:00
1 parent 327de38e78
commit 177e25aab5
1 file changed
+11
+11
View File
@@ -25,6 +25,14 @@ test("onboards, hires, and creates work in the Electron shell", async () => {
const page = await app.firstWindow();
await expect(page.getByRole("heading", { name: "Welcome" })).toBeVisible();
await page.getByRole("button", { name: "Get started" }).click();
// The Kimi family ships in the provider catalog: two API-key platforms
// and the OAuth plan, whose device-flow sign-in renders before any model
// field (the model list arrives with the credential).
await expect(page.getByText("Kimi", { exact: true })).toBeVisible();
await expect(page.getByText("Kimi CN", { exact: true })).toBeVisible();
await page.getByText("Kimi Code", { exact: true }).click();
await expect(page.getByRole("button", { name: "Sign in with Kimi Code" })).toBeVisible();
await page.getByText("OpenAI", { exact: true }).click();
await page.getByLabel("API key").fill("e2e-secret");
await page.getByLabel("Model").fill("gpt-5.4");
await page.getByRole("button", { name: "Continue" }).click();
@@ -156,6 +164,9 @@ test("onboards, hires, and creates work in the Electron shell", async () => {
await page.getByRole("button", { name: "Settings" }).click();
await expect(page.getByText("AI CEO", { exact: true })).toBeVisible();
await page.getByRole("button", { name: "Providers" }).click();
for (const label of ["Kimi", "Kimi CN", "Kimi Code"]) {
await expect(page.getByText(label, { exact: true })).toBeVisible();
}
await page.getByLabel("OpenAI background execution").check();
await page.getByRole("button", { name: "Save OpenAI policy" }).click();