清理资源引用里残留的 DirectCodex 函数名

- resourceReferences.ts:chatComposerDraftToDirectCodexUserItem → chatComposerDraftToUserItem、directCodexUserItemFromContent → userItemFromContent,与已改名的 UserItem 生成类型对齐
- 同步 DirectProjectChatView、useDirectProjectChatController 与三处用例的调用与 import
This commit is contained in:
2026-10-02 22:24:00 +08:00
parent 9a75ea57f0
commit cb13ecf879
6 changed files with 18 additions and 22 deletions
@@ -559,7 +559,7 @@ export function legacyContentDtoToContent(dto: {
]);
}
export function chatComposerDraftToDirectCodexUserItem(
export function chatComposerDraftToUserItem(
draft: ChatComposerDraft,
id: string,
): UserItem {
@@ -571,11 +571,11 @@ export function chatComposerDraftToDirectCodexUserItem(
} satisfies UserItem;
}
export function directCodexUserItemFromContent(
export function userItemFromContent(
content: readonly UserContentPart[],
id: string,
): UserItem {
return chatComposerDraftToDirectCodexUserItem({ content: [...content] }, id);
return chatComposerDraftToUserItem({ content: [...content] }, id);
}
/**
@@ -13,7 +13,7 @@ import { AGENT_CHAT_SCROLL_BOTTOM_THRESHOLD } from '../../../app/constants';
import { claimInitialTurnForPage } from '../../../app/initialTurnClaims';
import type { PendingUiConfirmation } from '../../../app/types';
import { projectNameFromPath } from '../../../features/agent-runtime';
import { directCodexUserItemFromContent } from '../../../features/project-workspace/resourceReferences';
import { userItemFromContent } from '../../../features/project-workspace/resourceReferences';
import { type ApprovalMode, approvalModeLabel } from '../approvalMode';
import { ApprovalModeDialog } from '../ApprovalModeDialog';
import { DirectProjectChatHeader } from './components/DirectProjectChatHeader/DirectProjectChatHeader';
@@ -193,7 +193,7 @@ export function DirectProjectChatView({
return;
}
const clientTurnId = createDirectProjectTurnId();
const userItem = directCodexUserItemFromContent(
const userItem = userItemFromContent(
initialTurn.content,
directCodexConversationMessageId(clientTurnId, 'user'),
);
@@ -13,8 +13,8 @@ import type {
import { projectRuntimeVisibleError } from '../../../../features/agent-runtime';
import { uploadLocalFilesAsAttachments } from '../../../../features/app-shell/useHomeProjectCreation';
import {
directCodexUserItemFromContent,
hasMeaningfulDirectCodexContent,
userItemFromContent,
} from '../../../../features/project-workspace/resourceReferences';
import { captureAgentRuntimeError } from '../../../../services/errorReporting';
import {
@@ -388,7 +388,7 @@ export function useDirectProjectChatController({
async function submit(content: UserContentPart[]): Promise<boolean> {
if (!hasMeaningfulDirectCodexContent(content)) return false;
const clientTurnId = createDirectProjectTurnId();
const userItem = directCodexUserItemFromContent(
const userItem = userItemFromContent(
content,
directCodexConversationMessageId(clientTurnId, 'user'),
);
@@ -1,4 +1,4 @@
import { directCodexUserItemFromContent } from '../../src/features/project-workspace/resourceReferences';
import { userItemFromContent } from '../../src/features/project-workspace/resourceReferences';
import * as platformSession from '../../src/services/platformSession';
import {
appendDictationText,
@@ -222,7 +222,7 @@ function pendingTurn(
): DirectPendingTurn {
return {
clientTurnId,
userItem: directCodexUserItemFromContent(
userItem: userItemFromContent(
[{ type: 'input_text', text }],
`direct-codex:${clientTurnId}:user`,
),
@@ -314,7 +314,7 @@ export function registerChatComposerControlTests() {
it('待发消息 chip 的 @ 引用按 manifest 显示名展开,不露出内部 resourceId', () => {
const turn: DirectPendingTurn = {
clientTurnId: 'client-ref',
userItem: directCodexUserItemFromContent(
userItem: userItemFromContent(
[
{ type: 'input_text', text: '用这张图改一下' },
{ type: 'agc_resource_reference', resourceId: 'asset:hero' },
@@ -1,4 +1,4 @@
import { directCodexUserItemFromContent } from '../../src/features/project-workspace/resourceReferences';
import { userItemFromContent } from '../../src/features/project-workspace/resourceReferences';
import { directCodexPolicyRetryInput } from '../../src/view/project-development/chat/conversation/directCodexConversation';
import {
enqueueFailureNotice,
@@ -103,7 +103,7 @@ export function registerProjectConversationTests() {
const firstTurn = {
clientTurnId: 'direct-turn-1',
creationType: 'game' as const,
userItem: directCodexUserItemFromContent(
userItem: userItemFromContent(
[
{ type: 'input_text' as const, text: '用这张图改一下' },
{
@@ -4,7 +4,7 @@ import type { GameCreationAppAssetManifestEntry } from '../../../packages/shared
import {
buildContentFromPastedText,
type ChatComposerDraft,
chatComposerDraftToDirectCodexUserItem,
chatComposerDraftToUserItem,
type ChatReference,
chatReferenceMentionToken,
contentPartText,
@@ -39,9 +39,7 @@ describe('DirectProject user Response item', () => {
],
};
expect(
chatComposerDraftToDirectCodexUserItem(draft, 'turn-1:user'),
).toEqual({
expect(chatComposerDraftToUserItem(draft, 'turn-1:user')).toEqual({
type: 'message',
role: 'user',
id: 'turn-1:user',
@@ -57,9 +55,7 @@ describe('DirectProject user Response item', () => {
],
};
expect(
chatComposerDraftToDirectCodexUserItem(draft, 'turn-2:user'),
).toEqual({
expect(chatComposerDraftToUserItem(draft, 'turn-2:user')).toEqual({
type: 'message',
role: 'user',
id: 'turn-2:user',
@@ -80,9 +76,9 @@ describe('DirectProject user Response item', () => {
],
};
expect(
chatComposerDraftToDirectCodexUserItem(draft, 'turn-3:user').content,
).toEqual(draft.content);
expect(chatComposerDraftToUserItem(draft, 'turn-3:user').content).toEqual(
draft.content,
);
});
it('只有最终 content 全为空白时才判定为空输入', () => {