feat: refine codex live chat flow
This commit is contained in:
@@ -4,6 +4,7 @@ import {
|
||||
buildChatConversationRequestPatchFromMessage,
|
||||
isVisibleConversationMessage,
|
||||
mergeChatConversationRequestStatus,
|
||||
resolveNextConversationChatTypeId,
|
||||
shouldClearConversationJobState,
|
||||
selectChatConversationResponseCandidate,
|
||||
} from './chat-room-service.js';
|
||||
@@ -15,6 +16,17 @@ test('mergeChatConversationRequestStatus keeps terminal states from being downgr
|
||||
assert.equal(mergeChatConversationRequestStatus('accepted', 'completed'), 'completed');
|
||||
});
|
||||
|
||||
test('resolveNextConversationChatTypeId prefers the requested chat type over the stored one', () => {
|
||||
assert.equal(resolveNextConversationChatTypeId('general-request', 'api-request-template'), 'api-request-template');
|
||||
assert.equal(resolveNextConversationChatTypeId('general-request', ' api-request-template '), 'api-request-template');
|
||||
});
|
||||
|
||||
test('resolveNextConversationChatTypeId falls back to the stored chat type when the request is empty', () => {
|
||||
assert.equal(resolveNextConversationChatTypeId('general-request', null), 'general-request');
|
||||
assert.equal(resolveNextConversationChatTypeId('general-request', ' '), 'general-request');
|
||||
assert.equal(resolveNextConversationChatTypeId(null, null), null);
|
||||
});
|
||||
|
||||
test('buildChatConversationRequestPatchFromMessage ignores system progress messages', () => {
|
||||
assert.equal(
|
||||
buildChatConversationRequestPatchFromMessage({
|
||||
|
||||
Reference in New Issue
Block a user