fix(ai-public): hide public pool endpoint from users
This commit is contained in:
@@ -51,7 +51,6 @@ export type ListAiBindingsResponse = {
|
||||
enabled: boolean;
|
||||
providerName: string | null;
|
||||
model: string | null;
|
||||
endpoint: string | null;
|
||||
hasApiKey: boolean;
|
||||
} | null;
|
||||
};
|
||||
@@ -122,7 +121,6 @@ export class AiService {
|
||||
enabled: publicPool.enabled,
|
||||
providerName: publicPool.providerName,
|
||||
model: publicPool.model,
|
||||
endpoint: publicPool.endpoint,
|
||||
hasApiKey: Boolean(publicPool.encryptedApiKey)
|
||||
}
|
||||
: null
|
||||
|
||||
@@ -468,6 +468,30 @@ describe("AiController (integration)", () => {
|
||||
});
|
||||
});
|
||||
|
||||
it("should hide public pool endpoint from user bindings response", async () => {
|
||||
prismaService.seedPublicPool({
|
||||
enabled: true,
|
||||
providerName: "public-openai",
|
||||
model: "gpt-4o-mini",
|
||||
encryptedApiKey: "sk-public",
|
||||
endpoint: "https://internal.example.com/v1",
|
||||
rpmLimit: 60,
|
||||
dailyTokenLimit: 100000
|
||||
});
|
||||
|
||||
const response = await request(app.getHttpServer())
|
||||
.get("/ai/bindings")
|
||||
.set("x-user-id", "user_1")
|
||||
.expect(200);
|
||||
|
||||
expect(response.body.publicPool).toEqual({
|
||||
enabled: true,
|
||||
providerName: "public-openai",
|
||||
model: "gpt-4o-mini",
|
||||
hasApiKey: true
|
||||
});
|
||||
});
|
||||
|
||||
it("should upsert one binding per user channel", async () => {
|
||||
await request(app.getHttpServer())
|
||||
.post("/ai/bindings")
|
||||
|
||||
Reference in New Issue
Block a user