From 816979f9675a885c57321e5ee8acd5e1f00370fa Mon Sep 17 00:00:00 2001 From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> Date: Sun, 18 Oct 2026 00:29:47 +0800 Subject: [PATCH 1/4] fix(workspace): expose research sample coverage beside effect metrics Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> --- .../goal-research-analysis.tsx | 4 ++-- .../goal-research-progress.tsx | 4 ++-- .../after-desktop-viewport.png | Bin 0 -> 138762 bytes .../assets/research-coverage/after-desktop.png | Bin 0 -> 139662 bytes .../assets/research-coverage/after-phone.png | Bin 0 -> 61681 bytes .../before-desktop-viewport.png | Bin 0 -> 136235 bytes .../research-coverage/before-desktop.png | Bin 0 -> 137174 bytes .../assets/research-coverage/before-phone.png | Bin 0 -> 59230 bytes 8 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 examples/personal-workspace-browser/assets/research-coverage/after-desktop-viewport.png create mode 100644 examples/personal-workspace-browser/assets/research-coverage/after-desktop.png create mode 100644 examples/personal-workspace-browser/assets/research-coverage/after-phone.png create mode 100644 examples/personal-workspace-browser/assets/research-coverage/before-desktop-viewport.png create mode 100644 examples/personal-workspace-browser/assets/research-coverage/before-desktop.png create mode 100644 examples/personal-workspace-browser/assets/research-coverage/before-phone.png diff --git a/apps/presentation/dashboard/src/features/personal-workspace/goal-research-analysis.tsx b/apps/presentation/dashboard/src/features/personal-workspace/goal-research-analysis.tsx index be931d94f0..e4a0dad302 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/goal-research-analysis.tsx +++ b/apps/presentation/dashboard/src/features/personal-workspace/goal-research-analysis.tsx @@ -203,12 +203,12 @@ export function ResearchAnalysisPanel({analysis: a}: {analysis: Controller}) { {a.loading && !p ?
{zh ? "正在核对可分析来源…" : "Checking authorized sources…"}
: null} {!a.loading && !p ?{reasonCopy(a.snapshot?.catalog.reason_code, zh)}
: null} {p ? <> -{p.selection.exhaustive ? (zh ? "覆盖此固定分析范围;不等于覆盖全部研究。" : "Covers this fixed analysis scope, not necessarily the whole research history.") : (zh ? "目的抽样,仅此片段;不代表整场研究。" : "Purposive sample of this episode, not the whole run.")} {zh ? "下方仍显示当前研究 Goal 的已记录历史。" : "The current research Goal’s recorded history remains below."}
+{p.selection.exhaustive ? (zh ? "覆盖此固定分析范围;不等于覆盖全部研究。" : "Covers this fixed analysis scope, not necessarily the whole research history.") : (zh ? "定向抽样,仅分析选定研究片段;范围外或未捕获的工作未纳入,不代表全程。" : "Purposive sample of selected episodes; work outside this scope or not captured is excluded. It does not represent the whole run.")} {zh ? "下方仍显示当前研究 Goal 的已记录历史。" : "The current research Goal’s recorded history remains below."}
{!available ?{reasonCopy(p.reason_code, zh)}
: null} {!result || a.pending || a.recordedRunning ?{a.pending ?
{p.job?.status === "cancelled" ? (zh ? "分析已取消,研究历史保持可读。" : "Analysis cancelled. Research history remains readable.") : (zh ? "上次分析未完成;可重试,原失败记录会保留。" : "The last analysis did not complete. Retry preserves its failure record.")}
: null} 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 9d6d529444..1b436c28c3 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 @@ -70,10 +70,10 @@ export function ResearchProgress({pack: p, packs, selectedId, error, zh, onSelec ? (zh ? "无法核对本次来源;已显示的值仅为上次读回。" : "The source could not be refreshed. Displayed values are from the last readback.") : (zh ? "所选来源暂不可读,未显示其他范围的结果。" : "The selected source could not be read. No result from another scope is shown.")} {error} : null} {p ? <> -{p.title} · {number(p.episode_count)} {zh ? "个固定研究片段" : "fixed episodes"} · {p.selection.exhaustive ? (zh ? "仅覆盖声明范围" : "Declared scope only") : (zh ? "目的抽样,不代表全程" : "Purposive sample, not the whole run")}
+{p.title} · {number(p.episode_count)} {zh ? "个选定研究片段" : "selected episodes"} · {p.selection.exhaustive ? (zh ? "仅覆盖声明范围" : "Declared scope only") : p.selection.population_episodes == null ? (zh ? "定向抽样,全程覆盖未知" : "Purposive sample; whole-run coverage unknown") : (zh ? "定向抽样,不代表全程" : "Purposive sample, not the whole run")}
{p.applicability === "historical" ?{zh ? "历史分析:来源或方法已变化,不能当作当前判断。" : "Historical analysis: the source or method changed; these are not current judgments."}
: null} {result ?{zh ? "分析器逐项判读 · 未校准。数字为“是 / 适用片段”,未知仍在分母中;展开任一项看理由与证据。" : "Uncalibrated analyzer judgments. Counts are yes / eligible episodes, including unknowns in the denominator. Expand a metric for reasons and evidence."}
+{zh ? "分析器判读未校准,仅限所选片段;范围外或未捕获的工作未纳入。数字为“是 / 适用片段”,未知仍在分母中;展开看依据。" : "Uncalibrated judgments of selected episodes only; work outside this scope or not captured is excluded. Counts are yes / eligible episodes, including unknowns. Expand for evidence."}
$
zo<8nkAaP#hcfuRWaC+mx6DMkI%=ElWEHt|Lw57roNZy~aHMd#xo7l8!kUUGexl67%
z(vvp7;JBr#KhnP-n^#zchdr0-*8Z3SqnZ9b514|~TDIN%3vMoew&Fr|3Ei3S31=l^
zo3ID`2e3$V*)@(+)zZFRL|yaSlhvv|*3TY{R!f8vwU)aol42ek$!AIiUv_^g5i`)Q
zs8x|2oG9sXlq4EILt~Uh(2Kn;hlCZx4GI}%Wvb`Xv+q+mZY|EjN4d>97ZU@CCF-W}
z7)xER{f`)u;_?&HUx`kobd6V`4;z*vEVep3a!s7E*kvNXbfJX9r)c^0w!MdS?vAb<
zs4)zF>Xm(qPJrVo?WieVidN!h5~Een-cP|R{0+xlu7&Bpf>69w#{FPdS-qj^=@+c5
z1d;hAN7g2*>QgUye2j(X6-YL`yZQnwPc(