2683
return { answer: 'No active turn', wasFreeform: true };
2684
}
2686
>
const questionPreview = request.question.substring(0, 100);
2687
>
try {
2688
>
const requestId = generateUuid();
2689
>
const questionId = generateUuid();
2690
>
this._logService.info(`[Copilot:${this.sessionId}] User input request: requestId=${requestId}, question="${questionPreview}"`);
2691
>
2692
>
const deferred = new DeferredPromise<{ response: ChatInputResponseKind; answers?: Record<string, ChatInputAnswer> }>();
2693
>
this._pendingUserInputs.set(requestId, { deferred, questionId });
2694
>
2695
>
// Build the protocol ChatInputRequest from the SDK's simple format
2696
>
const inputRequest: ChatInputRequest = {
2697
>
id: requestId,
2698
>
questions: [request.choices && request.choices.length > 0
2699
? {
2700
kind: ChatInputQuestionKind.SingleSelect,