Skip to content

Commit e6c8ce8

Browse files
authored
Merge pull request #16789 from Budibase/chore/cleanup-flags
Cleanup AI flags
2 parents eab5be8 + f5abd68 commit e6c8ce8

File tree

6 files changed

+9
-62
lines changed

6 files changed

+9
-62
lines changed

packages/builder/src/components/common/CodeEditor/CodeEditor.svelte

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
import type { Extension } from "@codemirror/state"
5151
import { javascript } from "@codemirror/lang-javascript"
5252
import { EditorModes } from "./"
53-
import { featureFlags, themeStore } from "@/stores/portal"
53+
import { themeStore } from "@/stores/portal"
5454
import { type EnrichedBinding, type EditorMode } from "@budibase/types"
5555
import { tooltips } from "@codemirror/view"
5656
import type { BindingCompletion, CodeValidator } from "@/types"
@@ -87,8 +87,7 @@
8787
let isDark = !currentTheme.includes("light")
8888
let themeConfig = new Compartment()
8989
90-
$: aiGenEnabled =
91-
$featureFlags.AI_JS_GENERATION && mode.name === "javascript" && !readonly
90+
$: aiGenEnabled = mode.name === "javascript" && !readonly
9291
9392
$: {
9493
if (autofocus && isEditorInitialised) {

packages/builder/src/pages/builder/app/[application]/data/new.svelte

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import CreationPage from "@/components/common/CreationPage.svelte"
1717
import ICONS from "@/components/backend/DatasourceNavigator/icons/index.js"
1818
import AiTableGeneration from "./_components/AITableGeneration.svelte"
19-
import { featureFlags } from "@/stores/portal"
2019
2120
let internalTableModal: CreateInternalTableModal
2221
let externalDatasourceModal: CreateExternalDatasourceModal
@@ -25,7 +24,6 @@
2524
let externalDatasourceLoading = false
2625
2726
$: disabled = sampleDataLoading || externalDatasourceLoading
28-
$: aiTableGenerationEnabled = $featureFlags.AI_TABLE_GENERATION
2927
3028
const createSampleData = async () => {
3129
sampleDataLoading = true
@@ -62,11 +60,9 @@
6260
</div>
6361

6462
<div class="options bb-options">
65-
{#if aiTableGenerationEnabled}
66-
<div class="ai-generation">
67-
<AiTableGeneration />
68-
</div>
69-
{/if}
63+
<div class="ai-generation">
64+
<AiTableGeneration />
65+
</div>
7066
<DatasourceOption
7167
on:click={() => internalTableModal.show()}
7268
title="Create new table"

packages/server/src/api/controllers/ai/budibaseai.ts

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,11 @@ import {
22
ChatCompletionRequest,
33
ChatCompletionResponse,
44
Ctx,
5-
FeatureFlag,
65
UploadFileRequest,
76
UploadFileResponse,
87
} from "@budibase/types"
98
import { ai } from "@budibase/pro"
10-
import { features, env } from "@budibase/backend-core"
9+
import { env } from "@budibase/backend-core"
1110
import * as tools from "../../../ai/tools"
1211

1312
export async function uploadFile(
@@ -33,13 +32,6 @@ export async function uploadFile(
3332
export async function chatCompletion(
3433
ctx: Ctx<ChatCompletionRequest, ChatCompletionResponse>
3534
) {
36-
if (
37-
!(await features.isEnabled(FeatureFlag.AI_JS_GENERATION)) &&
38-
!(await features.isEnabled(FeatureFlag.AI_TABLE_GENERATION))
39-
) {
40-
ctx.throw(500, "AI generation is disabled")
41-
}
42-
4335
if (env.SELF_HOSTED) {
4436
ctx.throw(500, "Budibase AI endpoints are not available in self-host")
4537
}

packages/server/src/api/controllers/ai/js.ts

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,12 @@
1-
import {
2-
FeatureFlag,
3-
GenerateJsRequest,
4-
GenerateJsResponse,
5-
UserCtx,
6-
} from "@budibase/types"
7-
import { context, features } from "@budibase/backend-core"
1+
import { GenerateJsRequest, GenerateJsResponse, UserCtx } from "@budibase/types"
2+
import { context } from "@budibase/backend-core"
83
import { ai } from "@budibase/pro"
94

105
const MARKDOWN_CODE_BLOCK = /```(?:\w+)?\n([\s\S]+?)\n```/
116

127
export async function generateJs(
138
ctx: UserCtx<GenerateJsRequest, GenerateJsResponse>
149
) {
15-
if (!(await features.isEnabled(FeatureFlag.AI_JS_GENERATION))) {
16-
ctx.throw(500, "AI JS generation is disabled")
17-
}
18-
1910
const llm = await ai.getLLMOrThrow()
2011

2112
await context.ensureSnippetContext()

packages/server/src/api/routes/tests/ai.spec.ts

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {
66
} from "../../../tests/utilities/mocks/ai/openai"
77
import TestConfiguration from "../../../tests/utilities/TestConfiguration"
88
import nock from "nock"
9-
import { configs, env, features, setEnv } from "@budibase/backend-core"
9+
import { configs, env, setEnv } from "@budibase/backend-core"
1010
import {
1111
AIInnerConfig,
1212
AIOperationEnum,
@@ -174,17 +174,6 @@ describe("AI", () => {
174174
})
175175

176176
describe("POST /api/ai/js", () => {
177-
let cleanup: () => void
178-
beforeAll(() => {
179-
cleanup = features.testutils.setFeatureFlags("*", {
180-
AI_JS_GENERATION: true,
181-
})
182-
})
183-
184-
afterAll(() => {
185-
cleanup()
186-
})
187-
188177
it("handles correct plain code response", async () => {
189178
mockLLMResponse(`return 42`)
190179

@@ -310,19 +299,14 @@ describe("BudibaseAI", () => {
310299
let internalApiKey = "api-key"
311300

312301
let envCleanup: () => void
313-
let featureCleanup: () => void
314302
beforeAll(() => {
315303
envCleanup = setEnv({
316304
SELF_HOSTED: false,
317305
ACCOUNT_PORTAL_API_KEY: internalApiKey,
318306
})
319-
featureCleanup = features.testutils.setFeatureFlags("*", {
320-
AI_JS_GENERATION: true,
321-
})
322307
})
323308

324309
afterAll(() => {
325-
featureCleanup()
326310
envCleanup()
327311
})
328312

@@ -500,17 +484,6 @@ describe("BudibaseAI", () => {
500484
})
501485

502486
describe("POST /api/ai/tables", () => {
503-
let featureCleanup: () => void
504-
beforeAll(() => {
505-
featureCleanup = features.testutils.setFeatureFlags("*", {
506-
AI_TABLE_GENERATION: true,
507-
})
508-
})
509-
510-
afterAll(() => {
511-
featureCleanup()
512-
})
513-
514487
beforeEach(async () => {
515488
await config.newTenant()
516489
nock.cleanAll()

packages/types/src/sdk/featureFlag.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
export enum FeatureFlag {
22
DEBUG_UI = "DEBUG_UI",
33
USE_ZOD_VALIDATOR = "USE_ZOD_VALIDATOR",
4-
AI_JS_GENERATION = "AI_JS_GENERATION",
5-
AI_TABLE_GENERATION = "AI_TABLE_GENERATION",
64
AI_AGENTS = "AI_AGENTS",
75
WORKSPACES = "WORKSPACES",
86

@@ -12,8 +10,6 @@ export enum FeatureFlag {
1210

1311
export const FeatureFlagDefaults: Record<FeatureFlag, boolean> = {
1412
[FeatureFlag.USE_ZOD_VALIDATOR]: false,
15-
[FeatureFlag.AI_JS_GENERATION]: true,
16-
[FeatureFlag.AI_TABLE_GENERATION]: true,
1713
[FeatureFlag.AI_AGENTS]: false,
1814
[FeatureFlag.WORKSPACES]: false,
1915

0 commit comments

Comments
 (0)