Repository navigation
Show elapsed record time on the research timeline - #8392
loopx-agent wants to merge 4 commits into
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
Request changes conclusion (author-owned PR; GitHub blocks formal self-review)
动机 / Motivation
阅读研究历程的人需要在同一天的记录密度图上看出从首条到末条经过了多久。原轴只在本地午夜画刻度,单日记录没有时间尺度。候选让 33 条 Grid 记录在窄屏也显示起止,但短区间会把不同时间标成同一个数。评审覆盖 Research 时间轴、原记录展开和刷新恢复。实际安装与原生 WebView 仍待该交付路径验证。
改动思路 / Approach
沿用现有 Explore 时间边界和只读记录入口。当前范围是从既有记录派生横轴,并保持原有日期、身份和证据。统一用 elapsed time 可以覆盖同日与跨日历史。现有投影能生成准确 offset,修复可留在显示格式层,按已知时间差选择足以区分相邻刻度的精度。
具体改动 / Changes
评审 86e907c 对 aa475b2 的 6 个路径,+88/−13。viewport-attention 在完整 Grid 记录通过,populated-page-review 和 source-refresh-retention 覆盖默认、展开、空态及失败恢复。elapsed-endpoint-precision 在短区间失败,installed-webview 留待实际安装路径。 设计规则 · 有内容的整页检查
关键代码讲解
exploreTimelineTickOffsets按容器宽度控制刻度数,使用原记录起止间隔。宽屏插入中间刻度,窄屏保持两个端点,同一时刻返回一个。这个 helper 留在现有 Explore 投影旁,记录的所有权和排序仍由原读者管理。 时间投影GoalResearchTimeline用精确 offset 设置刻度位置和datetime,由elapsedLabel生成可见文本。CSS 将端点对齐到绘图区内侧。作者 smoke 补了长时间记录的窄屏断言和刷新失败保留。 刻度渲染 · 端点样式
对主干的风险 / Risks
P2 · 1.9 秒的终点显示为 1 秒。 用同一只读 Explore 后端加载相隔 1,900ms 的两条原记录。基线没有同日刻度。候选 1440px 的三个刻度是 0s、1s、1s。最后两项的 DOM 值分别为 PT1S 和 PT1.9S,它们的本地时间提示也一样,只精确到分钟。390px 下保留两个端点,末端仍显示为 1s。elapsedLabel 对至少一秒的时长向下取整,用户会把不同位置读成相同时间。请保留端点必要的小数精度,或在当前宽度下抑制同名中间刻度,并让末端可读为准确时长。用 1.9 秒、零间隔和已覆盖的 9 小时对照复验。 格式化分支
完整 Grid 对照仍是 33/33 条。1440px 有中间刻度,390px 的 0s 和 9h 4m 9s 都在 296px 绘图区内。键盘展开时间轴说明与已加载记录后仍可读取原记录。屏蔽 history GET 时保留原 33 条与轴,解除后 Retry 恢复。同刻记录只显示 0s,空 Goal 不画轴。两版 Chat 构建和候选 13 项 Explore TypeScript 测试通过。standard premerge 的 4 项直接检查、17 项选中检查通过。 作者公开视觉对照
我的整体评价 / Verdict
1440px 与 390px 的完整 Grid 首屏、390px 展开和刷新失败都已检查,短区间的刻度精度仍需修正。独立验证为源码构建的浏览器与生产只读 HTTP handler,安装版和原生 WebView 未覆盖。记录读取流程的变化有直接证据,研究结论采用和完整成本不在此次验收范围。
English verdict: REQUEST_CHANGES for 86e907c. A 1.9-second recorded span renders both its 1.0-second and 1.9-second ticks as 1s on desktop, while the narrow endpoint also shows 1s.
…ed-time-axis-20261109 Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
…ed-time-axis-20261109 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
需要在研究页看完整历程的人,会用图上的横轴判断首末记录相隔多久。 同一天的 Grid 历程过去没有刻度。初版加上刻度后,1.9 秒样本又在两个位置都显示 1 秒,读者得回到原始记录才能辨别。 桌面现在显示 0、1 和 1.9 秒,窄屏保留 0 和 1.9 秒,完整 Grid 样本仍显示 9 小时 4 分 9 秒。 本次交付限于研究历程的记录时间轴。 正式桌面客户端安装后的 WebView 读回仍待验证。
改动思路 / Approach
记录边界来自现有 Explore 投影,时间换算和布局由同一个研究页完成。 这次变动覆盖可读刻度、悬停时间及已有失败恢复路径。 仅增加日期无法给出同日内的跨度。现有图已经有每条记录的时间,直接用起止差计算刻度即可。这个做法沿用同一只读入口,也让读者打开研究页就能看出跨度,无需切换视图或再次选择数据。
具体改动 / Changes
本次核对 b76949718c92a7ecf02aef456a7273b42198de4c 对 f4c5d6d70c4c88ee4dae705c0ea7b5a8ea87e5ff 的 7 个路径。R-HISTORY 使用原 Explore 来源和完整记录。R-NARROW 在 390px 保留两端。R-RECOVERY 在刷新失败时保留原数据并沿既有入口重试。评审依据为 docs/development/design.md 的 f4c5d6d70c4c88ee4dae705c0ea7b5a8ea87e5ff 版本。
关键代码讲解
exploreTimelineTickOffsets把首末记录之间的毫秒差分配到可用宽度。窄屏保留两端,同一时刻只显示一个刻度。 刻度位置elapsedLabel保留整数毫秒余数,最后才换算为秒。这样 1 秒和 1.9 秒分别显示为两个值,时间标签里的机器可读时长也与文字一致。 相对时间fullTime仍是现有本地时间 formatter。时间轴请求秒和毫秒,让 1.000 与 1.900 秒的绝对时刻也能区分。 时钟提示- 端点样式把文本放在绘图区内。原有浏览器场景增加同刻、亚秒、1.9 秒和跨分钟的小数秒,公开 Grid 场景保留真实多小时范围和原记录检查。 端点布局 · 短区间回归 · 长程样本
对主干的风险 / Risks
初版在同源 1.9 秒样本上确实把两个刻度标成了 1 秒。新包复验宽屏和 390px,读回了正确的末端值。公开 Grid 的 33 条记录、原始内容和 9 小时 4 分 9 秒跨度均保留,读取失败时仍有原时间轴和重试入口。比较过程观察到零写入。本地打包、TypeScript、CSS、两套研究浏览器场景和预合并检查通过。同步主干前后的 31 个实际浏览器文件逐一一致。 PR 的首屏和验证
我的整体评价 / Verdict
研究者打开原入口就能读出记录跨度,长程阅读、原记录及恢复路径继续由已有读者提供。整页上先读到来源和覆盖,再沿记录密度查看跨度,窄屏首末值没有挤出绘图区。 验证覆盖打包研究页和生产只读 HTTP 处理器,正式安装版 WebView 尚未覆盖。 评审结论覆盖这一范围的显示修复,属于原研究工作台的一个完整增量。
English verdict: APPROVE for b769497. The 1.9-second regression now passes on desktop and at 390px. Both packaged history suites and local premerge passed. Installed WebView coverage remains pending.
Research history
The recording-density plot previously marked local midnights. Grid's complete capture spans 9 hours, 4 minutes and 9 seconds on one local date, so the plot had no time scale. The axis now measures time from the first record through the last. Narrow layouts retain both endpoints, and the tooltip gives each tick's precise local clock time.
The follow-up to review retains fractional seconds in the elapsed labels. For a capture spanning 1.9 seconds, the desktop axis previously labeled two different ticks
1s. The labels now read0s,1s,1.9son desktop and0s,1.9sat 390px. The existing Explore projection supplies the bounds. The original timestamps and record identities still drive the history.First screen
The packaged research view reads the complete public Grid fixture through the production history handler in a disposable read-only server. The screenshots compare the baseline
aa475b29f1976a4fde901deca84672ddb3415152with the initial elapsed axis86e907ceedeb7c61755186cfa1c89ee55f6934d1. The same 33-record first screen and 9-hour span were checked again with the assets built fromb76949718c92a7ecf02aef456a7273b42198de4cat desktop and 390px. The short synthetic capture separately checks the changed fraction at both widths.Desktop
390px before and after
Validation
research-historyandresearch-real-benchmarkpassed. The short-span regression fails before the fix and passes after it, including coincident records, a 9 ms span and a Chinese minute-plus-fraction label.These checks cover the packaged research view and production read handler. The installed desktop WebView still needs verification.