收紧生成任务轮询与资产读取路径
空生成任务列表不再保持四秒轮询 读取资源字节优先通过read-url直连OSS 保留read-bytes作为OSS读取失败兜底 更新资产导出与项目记忆文档口径
This commit is contained in:
@@ -55,6 +55,48 @@ export function buildExternalGenerationQueueStatus(
|
||||
};
|
||||
}
|
||||
|
||||
function isActiveExternalGenerationStatus(
|
||||
status: ExternalGenerationQueueStatus['currentStatus'],
|
||||
) {
|
||||
return status === 'queued' || status === 'running';
|
||||
}
|
||||
|
||||
function isUnacknowledgedExternalGenerationTerminalTask(
|
||||
task: ExternalGenerationTaskRecord,
|
||||
) {
|
||||
return (
|
||||
(task.status === 'completed' || task.status === 'failed') &&
|
||||
!task.notificationAcknowledgedAt
|
||||
);
|
||||
}
|
||||
|
||||
export function shouldUseFastExternalGenerationTaskPolling(
|
||||
status: ExternalGenerationQueueStatus | null | undefined,
|
||||
) {
|
||||
const pendingCount = normalizeExternalGenerationQueueCount(
|
||||
status?.pendingCount,
|
||||
);
|
||||
const runningCount = normalizeExternalGenerationQueueCount(
|
||||
status?.runningCount,
|
||||
);
|
||||
const unacknowledgedTerminalCount = normalizeExternalGenerationQueueCount(
|
||||
status?.unacknowledgedTerminalCount,
|
||||
);
|
||||
|
||||
return Boolean(
|
||||
isActiveExternalGenerationStatus(status?.currentStatus ?? null) ||
|
||||
pendingCount > 0 ||
|
||||
runningCount > 0 ||
|
||||
unacknowledgedTerminalCount > 0 ||
|
||||
(status?.tasks ?? []).some(
|
||||
(task) =>
|
||||
task.status === 'queued' ||
|
||||
task.status === 'running' ||
|
||||
isUnacknowledgedExternalGenerationTerminalTask(task),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
export function resolveExternalGenerationQueueStatusLabel(
|
||||
status: ExternalGenerationQueueStatus['currentStatus'],
|
||||
) {
|
||||
|
||||
Reference in New Issue
Block a user