From 984c837ca5e7f1a7e2190ae098e0f8ecb2d4dc03 Mon Sep 17 00:00:00 2001 From: Nikolay Alafuzov Date: Thu, 2 Jul 2026 10:27:33 +0300 Subject: [PATCH 1/2] feat(agy): support Antigravity project ID settings --- .../components/modals/EditConnectionModal.tsx | 8 +-- tests/unit/agy-projectid-ui.test.ts | 51 +++++++++++++++++++ 2 files changed, 56 insertions(+), 3 deletions(-) create mode 100644 tests/unit/agy-projectid-ui.test.ts diff --git a/src/app/(dashboard)/dashboard/providers/[id]/components/modals/EditConnectionModal.tsx b/src/app/(dashboard)/dashboard/providers/[id]/components/modals/EditConnectionModal.tsx index bb58cc06e71d..da611e8563af 100644 --- a/src/app/(dashboard)/dashboard/providers/[id]/components/modals/EditConnectionModal.tsx +++ b/src/app/(dashboard)/dashboard/providers/[id]/components/modals/EditConnectionModal.tsx @@ -165,7 +165,9 @@ export default function EditConnectionModal({ const isCodex = provider === "codex"; const isClaude = provider === "claude"; const isAntigravity = provider === "antigravity"; - const supportsGoogleProjectId = isAntigravity; + const isAgy = provider === "agy"; + const isAntigravityFamily = isAntigravity || isAgy; + const supportsGoogleProjectId = isAntigravityFamily; const localProviderMetadata = getLocalProviderMetadata(provider); const isLocalSelfHostedProvider = !!localProviderMetadata; const isGooglePse = provider === "google-pse-search"; @@ -534,7 +536,7 @@ export default function EditConnectionModal({ updates.providerSpecificData.projectId = trimmedCloudCodeProjectId || null; } } - if (isAntigravity) { + if (isAntigravityFamily) { updates.providerSpecificData = { ...(connection.providerSpecificData || {}), ...(updates.providerSpecificData || {}), @@ -687,7 +689,7 @@ export default function EditConnectionModal({ /> {supportsGoogleProjectId && (
- {isAntigravity && ( + {isAntigravityFamily && ( ({ - value: option.value, - label: t(option.labelKey), - }))} - onChange={(e) => - setFormData({ ...formData, antigravityClientProfile: e.target.value }) - } - hint={t("antigravityClientProfileHint")} - /> - )} + { - it("declares isAgy from provider", () => { + it("declares a single Antigravity-family provider gate", () => { assert.ok( - source.includes('const isAgy = provider === "agy"'), - "isAgy must be declared via provider === 'agy'" + source.includes( + 'const isAntigravityFamily = provider === "antigravity" || provider === "agy";' + ), + "isAntigravityFamily must include antigravity and agy without a separate Google Project ID gate" ); }); - it("declares isAntigravityFamily = isAntigravity || isAgy", () => { - assert.ok( - source.includes("const isAntigravityFamily = isAntigravity || isAgy;"), - "isAntigravityFamily must combine antigravity and agy" - ); - }); - - it("uses isAntigravityFamily as the Google Project ID gate", () => { - assert.ok( - /const supportsGoogleProjectId = isAntigravityFamily;/.test(source), - "supportsGoogleProjectId must be gated by isAntigravityFamily" - ); + it("does not keep the old supportsGoogleProjectId alias", () => { + assert.equal(source.includes("supportsGoogleProjectId"), false); }); it("uses antigravityProjectIdLabel for Antigravity-family providers", () => { @@ -37,7 +29,8 @@ describe("agy Project ID UI support", () => { it("uses isAntigravityFamily for antigravityClientProfile UI", () => { assert.ok( - source.includes("{isAntigravityFamily && (\n