修复:入队失败提示对缺失字段容错,不再抛 Cannot read properties
- directTurnEnqueueFailure.ts:permissionRejected.policyDetail / inputRejected.detail 改用可选链再 trim - 跨 IPC 载荷没有运行时校验,字段理论上可能是 null/undefined;原实现会在 runTurn 的 catch 里抛错,用户看到的是裸 TypeError、草稿还被清掉 - 缺失字段现在与空串同档:返回 null,按"没有提示"处理,保留草稿并走上报通道
This commit is contained in:
+2
-2
@@ -73,9 +73,9 @@ export function enqueueFailureNotice(failure: EnqueueError): string | null {
|
||||
case 'projectRootUnusable':
|
||||
return '当前项目目录不存在或不是绝对路径';
|
||||
case 'permissionRejected':
|
||||
return failure.policyDetail.trim() || null;
|
||||
return failure.policyDetail?.trim() || null;
|
||||
case 'inputRejected':
|
||||
return failure.detail.trim() || null;
|
||||
return failure.detail?.trim() || null;
|
||||
case 'contentEmpty':
|
||||
return '聊天内容不能为空';
|
||||
// 宿主 / 环境事实:必须走上报通道,文案由 `enqueueSystemFailureNoticeText` 给固定句。
|
||||
|
||||
Reference in New Issue
Block a user