Repository navigation
Make research case charts readable at narrow widths - #8387
Conversation
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent, gpt-6.1-sol, OpenAI, runtime_reported, reasoning_effort=max
Approval conclusion (author-owned PR; GitHub blocks formal self-approval)
动机 / Motivation
在窄屏阅读已保存研究解读的人,需要把完整候选名、数值和相对零点的位置一起看。原图把固定宽度 SVG 放进横向滚动区,完整标签和数值在另一个折叠区。新图按报告顺序逐行显示三项信息,保留零、未知和很小的非零值。评审覆盖原 Research 读者中已经保存的报告、版本和引用。桌面应用安装及原生 WebView 留待该交付路径验收。
改动思路 / Approach
沿用已有 Case Study 与只读引用入口,在同一个 figure 中组织观测。当前范围是 Research 读者里的现有图表排版和数值格式。宽布局让名字、刻度和数值同排。窄容器把刻度放到同一观测的第二行,长中英文标签仍和数值对应。保存的解读、版本选择和原文来源继续由同一读者提供。
具体改动 / Changes
评审 0980dd6 对 a3b5896 的 3 个路径,+60/−23。以 viewport-attention 和 populated-page-review 检查默认及展开状态,original-source-readback 覆盖版本和引用,installed-webview 仍待该路径验证。候选与当前 main 的 aa475b29 可合成。 设计规则 · 有内容的整页检查
关键代码讲解
CaseSeries依报告顺序读取已有Series.points。以数值幅度归一化,在同一标尺显示负值、零和正值。null只显示“未记录”,数值通过显著位和必要时的科学计数法显示。读者可直接读取每一行的标签与数值。 渲染代码- 容器查询在 520px 及以下重排每一行。宽屏保留三列,窄屏为“标签、数值”加下一行的刻度,完整的观测仍在同一 figure 里。回归 smoke 通过实际读者检查数值顺序和未知项。 样式代码 · 读回验证
对主干的风险 / Risks
用同一合成报告,通过实际 Chat 读后端对照两版构建。390px 下,基线 362px 内容区内的 900px SVG 需要横向滚动。候选的 figure 为 362px,九条观测都可通过页面纵向阅读,含两条负值、测得的零、两条缺值和 1.25E-11。极小值的图形与零点在该分辨率下重叠,精确文本仍可区分。切到较早版本显示两条旧观测,空的同级 Goal 不显示图表。主动令引用请求失败后,界面显示错误。解除请求拦截后可重开同一引用,核对原文和行号。两版关闭引用后键盘焦点都回到原按钮,合成证据源保持只读。
TypeScript、Chat 构建、实际读者 smoke 和 standard premerge 的 4 项直接、2 项选中检查通过。本地候选来自源码构建。PR 正文另附候选 wheel 与基线的可公开对照图。 候选与基线截图
我的整体评价 / Verdict
在 1200px 和 390px 核对了有内容的首屏和下方图表,390px 另检查展开的引用及失败后恢复。桌面应用安装和原生 WebView 未覆盖。候选解决了窄屏滚动与标签截断,代价是内容更长,需要沿正常页面纵向阅读。这次布局验证仅说明研究证据更容易查看,实际研究决策采用及成果未测。
English verdict: APPROVE for 0980dd6. The built Research reader preserves observation order, measured zero, missing values and the scoped citation journey while making complete rows readable at 390 pixels.
What changes
A saved case study can contain more observations than fit in a narrow Research view. The previous chart put a 700px SVG in a horizontal scroller and showed complete labels and values in a separate disclosure.
Render each saved observation as a row with its full label, value and mark on a common scale within the chart. The row order follows the report, and an unrecorded value remains distinct from a measured zero. The original report, version and citations continue to come from the same scoped reader.
Verification
Visual evidence
The captures use a synthetic case. Candidate commit
0980dd6fc58778ae1cb3ab0de2325098d138251dis served from an isolated wheel. The matched baseline uses the Chat bundle froma3b589610a83f52024dd957c5071b0c257fab9b2.First viewport, desktop and 390px
Chart, 390px before and after
Chart, desktop