diff --git a/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.test.ts b/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.test.ts index bc7dd966..5e374e72 100644 --- a/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.test.ts +++ b/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.test.ts @@ -28,7 +28,7 @@ describe("HWPOD workspace presentation", () => { it("projects the real Keil terminal exit code and bounded logs", () => { const stdout = [ JSON.stringify({ event: "started", command: "build", mode: "wait" }), - JSON.stringify({ status: "completed", return_code: 0, errors: 0, warning_count: 2, elapsed_ms: 7165, message: "Build completed successfully", result: { hex_file: "F:\\out.hex", axf_file: "F:\\out.axf", build_log: "F:\\build.log" } }, null, 2), + JSON.stringify({ status: "completed", return_code: 0, errors: 0, warning_count: 2, elapsed_ms: 7165, message: "Build completed successfully", hex_file: "F:\\out.hex", axf_file: "F:\\out.axf", _log_file: "F:\\build.log" }, null, 2), ].join("\n"); const view = presentBuildOperation({ ok: true, diff --git a/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.ts b/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.ts index dc6dfedc..aef2d298 100644 --- a/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.ts +++ b/web/hwlab-cloud-web/src/components/hwpod/hwpod-workspace-presentation.ts @@ -62,7 +62,7 @@ export function presentBuildOperation(operation: HwpodOperationResponse | null, const artifacts = [ ["HEX", parsedResult.hex_file ?? parsedResult.hexFile ?? parsed.hex_file ?? parsed.hexFile], ["AXF", parsedResult.axf_file ?? parsedResult.axfFile ?? parsed.axf_file ?? parsed.axfFile], - ["构建日志", parsedResult.log_file ?? parsedResult.logFile ?? parsedResult.build_log ?? parsedResult.buildLog ?? parsed.log_file ?? parsed.logFile ?? parsed.build_log ?? parsed.buildLog], + ["构建日志", parsedResult._log_file ?? parsedResult.log_file ?? parsedResult.logFile ?? parsedResult.build_log ?? parsedResult.buildLog ?? parsed._log_file ?? parsed.log_file ?? parsed.logFile ?? parsed.build_log ?? parsed.buildLog], ].flatMap(([kind, path]) => typeof path === "string" && path.trim() ? [{ kind: String(kind), path: path.trim() }] : []); const asyncQueued = parsed.accepted === true && ["queued", "running", "accepted"].includes(toolStatus); const failed = operation.error != null