Merge remote-tracking branch 'origin/master' into editor-agent-refactored

# Conflicts:
#	docs/README.md
#	src/components/image-editor/EditorAgentConversation/EditorAgentConversationPanelView.tsx
#	src/components/image-editor/EditorAgentConversation/useEditorAgentConversation.ts
#	src/components/image-editor/EditorAgentConversationPanelView.test.tsx
#	src/components/image-editor/ImageCanvasStageView.tsx
This commit is contained in:
2026-07-17 17:32:08 +08:00
272 changed files with 1697 additions and 1300 deletions
@@ -4,9 +4,9 @@
* 工作包 H 完成后,真实类型定义已经迁移到 rpg* 契约文件中;这里仅聚合旧命名分文件。
*/
export type * from './customWorldAgentActions';
export type * from './customWorldAgentAnchors';
export type * from './customWorldAgentDraft';
export type * from './customWorldAgentActions';
export type * from './customWorldAgentSession';
export type * from './customWorldResultPreview';
export type * from './customWorldWorkSummary';
@@ -9,6 +9,6 @@ export type {
RpgAgentOperationRecord as CustomWorldAgentOperationRecord,
RpgAgentOperationStatus as CustomWorldAgentOperationStatus,
RpgAgentOperationType as CustomWorldAgentOperationType,
RpgAgentSupportedAction as CustomWorldSupportedAction,
RpgAgentSuggestedAction as CustomWorldSuggestedAction,
RpgAgentSupportedAction as CustomWorldSupportedAction,
} from './rpgAgentActions';
@@ -6,15 +6,15 @@
export type {
CreateRpgAgentSessionRequest as CreateCustomWorldAgentSessionRequest,
CreateRpgAgentSessionResponse as CreateCustomWorldAgentSessionResponse,
GetRpgAgentCardDetailResponse as GetCustomWorldAgentCardDetailResponse,
RpgCreationIntentReadiness as CreatorIntentReadiness,
RpgAgentMessage as CustomWorldAgentMessage,
RpgAgentMessageKind as CustomWorldAgentMessageKind,
RpgAgentMessageRole as CustomWorldAgentMessageRole,
RpgAgentPendingClarification as CustomWorldPendingClarification,
RpgAgentQualityFinding as CustomWorldAgentQualityFinding,
RpgAgentSessionSnapshot as CustomWorldAgentSessionSnapshot,
RpgAgentStage as CustomWorldAgentStage,
RpgCreationIntentReadiness as CreatorIntentReadiness,
RpgAgentPendingClarification as CustomWorldPendingClarification,
GetRpgAgentCardDetailResponse as GetCustomWorldAgentCardDetailResponse,
SendRpgAgentMessageRequest as SendCustomWorldAgentMessageRequest,
SendRpgAgentMessageResponse as SendCustomWorldAgentMessageResponse,
} from './rpgAgentSession';
@@ -4,8 +4,8 @@
*/
export type {
ListRpgCreationWorksResponse as ListCustomWorldWorksResponse,
RpgCreationWorkSource as CustomWorldWorkSource,
RpgCreationWorkStatus as CustomWorldWorkStatus,
RpgCreationWorkSummary as CustomWorldWorkSummary,
ListRpgCreationWorksResponse as ListCustomWorldWorksResponse,
} from './rpgCreationWorkSummary';
@@ -1,38 +1,38 @@
import { describe, expect, test } from 'vitest';
import {
HOST_BRIDGE_CAPABILITIES,
HOST_BRIDGE_DEFAULT_REQUEST_TIMEOUT_MS,
HOST_BRIDGE_DESKTOP_NETWORK_CHECK_TIMEOUT_MS,
HOST_BRIDGE_DOCUMENT_MIME_TYPES,
HOST_BRIDGE_EVENTS,
HOST_BRIDGE_EXPO_MOBILE_BASE_CAPABILITIES,
HOST_BRIDGE_EXPO_MOBILE_IOS_CAPABILITIES,
HOST_BRIDGE_EXPO_MOBILE_IOS_EXTRA_CAPABILITIES,
HOST_BRIDGE_NATIVE_APP_QUERY,
HOST_BRIDGE_NATIVE_APP_QUERY_KEY,
HOST_BRIDGE_NATIVE_APP_QUERY_KEYS,
HOST_BRIDGE_PRESERVED_RUNTIME_CONTEXT_QUERY_KEYS,
HOST_BRIDGE_RUNTIME_CONTEXT_QUERY_KEY,
HOST_BRIDGE_TAURI_DESKTOP_CAPABILITIES,
HOST_BRIDGE_WECHAT_MINI_PROGRAM_CAPABILITIES,
HOST_BRIDGE_WECHAT_MINI_PROGRAM_SOURCE_QUERY,
HOST_BRIDGE_PUBLIC_WEB_ORIGIN,
HOST_BRIDGE_PUBLIC_WEB_URL,
HOST_BRIDGE_TAURI_COMMAND,
HOST_BRIDGE_CAPABILITIES,
HOST_BRIDGE_DOCUMENT_MIME_TYPES,
HOST_BRIDGE_DEFAULT_REQUEST_TIMEOUT_MS,
HOST_BRIDGE_DESKTOP_NETWORK_CHECK_TIMEOUT_MS,
HOST_BRIDGE_EVENTS,
HOST_BRIDGE_IMPORT_DOCUMENT_MAX_BYTES,
HOST_BRIDGE_LOCAL_NOTIFICATION_DELIVERED_TO_SYSTEM_RESULT,
HOST_BRIDGE_MAX_REQUEST_TIMEOUT_MS,
HOST_BRIDGE_MOBILE_LOCAL_NOTIFICATION_CHANNEL_ID,
HOST_BRIDGE_MOBILE_WEBVIEW_BLOCKED_DOWNLOAD_PROTOCOLS,
HOST_BRIDGE_NATIVE_APP_QUERY,
HOST_BRIDGE_NATIVE_APP_QUERY_KEY,
HOST_BRIDGE_NATIVE_APP_QUERY_KEYS,
HOST_BRIDGE_PRESERVED_RUNTIME_CONTEXT_QUERY_KEYS,
HOST_BRIDGE_PUBLIC_WEB_ORIGIN,
HOST_BRIDGE_PUBLIC_WEB_URL,
HOST_BRIDGE_RESPONSE_CACHE_MAX,
HOST_BRIDGE_RUNTIME_CONTEXT_QUERY_KEY,
HOST_BRIDGE_RUNTIME_REFRESH_TIMEOUT_MS,
HOST_BRIDGE_SCANNER_TIMEOUT_MS,
HOST_BRIDGE_TAURI_COMMAND,
HOST_BRIDGE_TAURI_DESKTOP_CAPABILITIES,
HOST_BRIDGE_TEXT_MIME_TYPES,
HOST_BRIDGE_USER_INTERACTION_TIMEOUT_MS,
isHostBridgeMethod,
HOST_BRIDGE_WECHAT_MINI_PROGRAM_CAPABILITIES,
HOST_BRIDGE_WECHAT_MINI_PROGRAM_SOURCE_QUERY,
isHostBridgeCapability,
isHostBridgeEventName,
isHostBridgeMethod,
normalizeHostBridgeAppTitle,
normalizeHostBridgeBadgeCount,
normalizeHostBridgeClipboardText,
@@ -1,5 +1,5 @@
import type { PuzzleAgentSessionSnapshot } from './puzzleAgentSession';
import type { ExternalGenerationJobStatusRecord } from './externalGeneration';
import type { PuzzleAgentSessionSnapshot } from './puzzleAgentSession';
export type PuzzleAgentSuggestedActionType =
| 'request_summary'
@@ -1,4 +1,4 @@
import type { RpgAgentActionResponse, RpgAgentOperationRecord, RpgAgentSupportedAction, RpgAgentSuggestedAction } from './rpgAgentActions';
import type { RpgAgentActionResponse, RpgAgentOperationRecord, RpgAgentSuggestedAction,RpgAgentSupportedAction } from './rpgAgentActions';
import type { RpgCreationAnchorContent } from './rpgAgentAnchors';
import type { RpgAgentAssetCoverageSummary, RpgAgentDraftCardDetail, RpgAgentDraftCardSummary } from './rpgAgentDraft';
import type { RpgCreationPreviewEnvelope } from './rpgCreationPreview';
@@ -1,12 +1,12 @@
import { describe, expect, test } from 'vitest';
import type { CustomWorldAgentSessionSnapshot } from './customWorldAgentSession';
import type { CustomWorldResultPreviewEnvelope } from './customWorldResultPreview';
import type { CustomWorldWorkSummary } from './customWorldWorkSummary';
import {
createRpgAgentFoundationDraftProfileFixture,
createRpgAgentSupportedActionsFixture,
createRpgAgentSessionFixture,
createRpgAgentSupportedActionsFixture,
createRpgCreationAnchorContentFixture,
createRpgCreationPreviewEnvelopeFixture,
createRpgCreationPublishedProfileFixture,
@@ -1,5 +1,5 @@
import type { CustomWorldProfileRecord } from './runtime';
import type { RpgAgentSessionSnapshot } from './rpgAgentSession';
import type { CustomWorldProfileRecord } from './runtime';
export type RpgCreationResultProfileSource =
| 'result_preview'
+1 -1
View File
@@ -20,7 +20,7 @@ export type ApiErrorCode =
| 'conflict'
| 'upstream_error'
| 'internal_error'
| (string & {});
| (string & Record<never, never>);
export type ApiErrorPayload = {
code: ApiErrorCode;