收紧生成任务轮询与资产读取路径

空生成任务列表不再保持四秒轮询

读取资源字节优先通过read-url直连OSS

保留read-bytes作为OSS读取失败兜底

更新资产导出与项目记忆文档口径
This commit is contained in:
2026-06-25 23:01:24 +08:00
parent a61e604921
commit c5295a619c
9 changed files with 387 additions and 47 deletions
@@ -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'],
) {