feat: improve goal mode and Codex App resilience
This commit is contained in:
@@ -7979,11 +7979,13 @@
|
||||
const isCrossConversation = !!meta.crossConversation;
|
||||
const isCrossConversationReply = isCrossConversation && !!(meta.crossConversation.reply || meta.crossConversation.replyToRequestId);
|
||||
const canCollapseCrossConversationReply = role === 'assistant' && isCrossConversationReply;
|
||||
const isGoalMessage = role === 'user' && meta?.ccwebGoalCommand?.action === 'set';
|
||||
const resolvedMessageId = meta?.messageId || meta?.id || createLocalId('user');
|
||||
div.className = `msg ${role}${role === 'assistant' ? ' agent-' + currentAgent : ''}${isCrossConversation ? ' cross-conversation' : ''}${isCrossConversationReply ? ' cross-conversation-reply' : ''}`;
|
||||
div.className = `msg ${role}${role === 'assistant' ? ' agent-' + currentAgent : ''}${isCrossConversation ? ' cross-conversation' : ''}${isCrossConversationReply ? ' cross-conversation-reply' : ''}${isGoalMessage ? ' goal-message' : ''}`;
|
||||
if (role === 'user') {
|
||||
div.id = `hapi-message-${resolvedMessageId}`;
|
||||
div.dataset.messageId = resolvedMessageId;
|
||||
if (isGoalMessage) div.dataset.goalMode = 'true';
|
||||
}
|
||||
|
||||
if (role === 'system') {
|
||||
@@ -8109,6 +8111,13 @@
|
||||
}
|
||||
|
||||
if (role === 'user') {
|
||||
if (isGoalMessage) {
|
||||
const goalLabel = document.createElement('div');
|
||||
goalLabel.className = 'goal-message-label';
|
||||
goalLabel.textContent = '目标模式';
|
||||
goalLabel.setAttribute('aria-label', '目标模式');
|
||||
bubble.appendChild(goalLabel);
|
||||
}
|
||||
if (content) {
|
||||
const textNode = document.createElement('div');
|
||||
textNode.className = 'msg-text';
|
||||
|
||||
Reference in New Issue
Block a user