39980bea34
把 #751 第二轮基线(#754)继续往下推: - web-types.d.ts 新增 WorkbenchAugmentedError / WorkbenchAugmentedErrorFields / WorkbenchScrollOptions / WorkbenchLoadOptions / WorkbenchActionResultOptions / WorkbenchSummaryShape / WorkbenchComposerShape 七个精确接口;前两个 让 custom Error 增广(agentErrorFromHttpResponse 那一串 error.traceId/code/ layer/blocker/retryable/userMessage/missingConfig/route/toolName/timeoutMs/ hardTimeoutMs/idleMs/lastActivityAt/waitingFor/providerStatus/category)有 显式类型,runtime 不需要 any。WorkbenchScrollOptions 把 deferred/force/ behavior/silent 收齐,scrollTraceToBottom 等的调用方不再绕开类型。 - ElMap.commandSend/commandClear 从 HTMLElement 收紧为 HTMLButtonElement, 配合 lib 加 DOM.Iterable 让 NodeListOf<Element> 的 for...of 工作。 - WorkbenchState.conversationScrollPosition / traceScrollPositions / traceBodyScrollPositions 加上 bottomGap 字段,scrlTopForPosition 形参同步 升级。 - app-conversation.ts:captureConversationScrollPosition 形参 captureTraceScrollPositions / captureTraceBodyScrollPositions / restoreTraceScrollPositions / scrollTraceToBottom / agentErrorFromHttpResponse / agentFailurePresentation / classifyCodeAgentCompletion / scrollTopForPosition 加精确参数与返回类型; 7 处 typeof payloadError === "object" ? payloadError.X 改为 as { X?: T } 强转。 - tsconfig.json:加 DOM.Iterable。 本次提交不破 web:check(54/0)与 web:build(12 dist);tsc-check 仍以 0 explicit untyped 为硬 gate,residual 残错按 #751 后续 issue 跟踪。 每类残错在 closeout comment 列出。 Refs: pikasTech/HWLAB#751 Co-authored-by: Codex <codex@noreply.local>