feat(core): Add support for listing experiments (#12495)

This commit is contained in:
Shreya Keshive
2025-11-03 13:51:22 -08:00
committed by GitHub
parent 1c044ba8af
commit be1dc13bb1
7 changed files with 273 additions and 5 deletions

View File

@@ -14,6 +14,11 @@ import type {
OnboardUserRequest,
SetCodeAssistGlobalUserSettingRequest,
} from './types.js';
import type {
ListExperimentsRequest,
ListExperimentsResponse,
ClientMetadata,
} from './experiments/types.js';
import type {
CountTokensParameters,
CountTokensResponse,
@@ -149,6 +154,23 @@ export class CodeAssistServer implements ContentGenerator {
throw Error();
}
async listExperiments(
metadata: ClientMetadata,
): Promise<ListExperimentsResponse> {
if (!this.projectId) {
throw new Error('projectId is not defined for CodeAssistServer.');
}
const projectId = this.projectId;
const req: ListExperimentsRequest = {
project: projectId,
metadata: { ...metadata, duet_project: projectId },
};
return await this.requestPost<ListExperimentsResponse>(
'listExperiments',
req,
);
}
async requestPost<T>(
method: string,
req: object,