From dcd074426131d8c946535cd781e52b6df6509783 Mon Sep 17 00:00:00 2001
From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Date: Sun, 8 Nov 2026 06:34:00 +0800
Subject: [PATCH] Label native result observation times accurately
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
---
.../personal-workspace/goal-research-progress.tsx | 2 +-
.../research-native-reading.mjs | 10 ++++++++++
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/apps/presentation/dashboard/src/features/personal-workspace/goal-research-progress.tsx b/apps/presentation/dashboard/src/features/personal-workspace/goal-research-progress.tsx
index 62b963b118..038e0849d8 100644
--- a/apps/presentation/dashboard/src/features/personal-workspace/goal-research-progress.tsx
+++ b/apps/presentation/dashboard/src/features/personal-workspace/goal-research-progress.tsx
@@ -187,7 +187,7 @@ function NativeResults({native, zh, onCitation}: {native: ResearchProgressPack["
{zh ? "来源" : "Source"}{native.artifact}
{native.artifact_sha256}
{points.map(([key, cn, en]) => {
const point = outcomes[key];
- return point ? - {zh ? cn : en}
- {String(point.value)} {outcomes.metric.unit}
{point.candidate_ref}
{zh ? "提交" : "Submission"} {point.submission_index} · {zh ? "提交时间" : "Submitted at"}: {point.submitted_at ?? (zh ? "未知" : "Unknown")}
{zh ? "收到结果" : "Result received"}: {point.observed_at} : null;
+ return point ? - {zh ? cn : en}
- {String(point.value)} {outcomes.metric.unit}
{point.candidate_ref}
{zh ? "提交" : "Submission"} {point.submission_index} · {zh ? "提交时间" : "Submitted at"}: {point.submitted_at ?? (zh ? "未知" : "Unknown")}
{zh ? "观测时间" : "Observed at"}: : null;
})}
{outcomes.limitations.map((line, i) => - {line}
)}
diff --git a/examples/personal-workspace-browser/research-native-reading.mjs b/examples/personal-workspace-browser/research-native-reading.mjs
index fc17c9df2b..42e9760111 100644
--- a/examples/personal-workspace-browser/research-native-reading.mjs
+++ b/examples/personal-workspace-browser/research-native-reading.mjs
@@ -142,6 +142,12 @@ export const researchNativeReadingScenario = {
assert.match(await native.locator(".research-native-best .research-native-unit").textContent(), new RegExp(c.unit ?? "points"), "The raw unit remains visible even when no valid measurement exists");
assert.match(await native.locator(".research-native-scope").innerText(), new RegExp(`${c.values.filter(v => v !== null).length} / ${c.values.length}.*有效结果`));
if (c.partial) assert.match(await native.innerText(), /部分窗口 · 起点未知/);
+ if (c.id === "partial") {
+ const sources = native.locator(".research-native-basis");
+ await sources.locator("summary").click();
+ assert.match(await sources.innerText(), /提交时间: 未知\s+观测时间: 2026-01-01T00:03:00Z/);
+ await sources.locator("summary").click();
+ }
if (c.id === "invalid-first") {
const measureUnknownRetention = () => native.evaluate(section => {
const retained = section.querySelector('[data-native-point="retained"]');
@@ -267,6 +273,10 @@ export const researchNativeReadingScenario = {
await selector.selectOption({label: "decimal"});
await page.waitForFunction(() => document.querySelector('[data-native-point="best_valid"] strong')?.textContent === "0.8765");
assert.equal(await page.locator("[data-retained-improvement]").textContent(), "+0.0642");
+ const sources = page.locator(".research-native-basis");
+ await sources.locator("summary").click();
+ assert.match(await sources.innerText(), /Submitted at: Unknown\s+Observed at: 2026-01-01T00:02:00Z/);
+ await sources.locator("summary").click();
await page.getByRole("button", {name: "About native measurements", exact: true}).focus();
await page.getByRole("tooltip").waitFor({state: "visible"});
await page.keyboard.press("Escape");