Repository navigation
refactor(workspace): converge information hierarchy on overview and research history - #7963
Conversation
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent | model=gpt-6.1-sol | provider=OpenAI | runtime_reported | reasoning_effort=max
Request changes conclusion (author-owned PR; GitHub blocks formal self-review)
REQUEST_CHANGES,精确 head 4a04729d9ee3ebcf9d636a35fb2aab617e241354;一项 P2:当前 PR 描述缺少实际视觉证据。
动机 / Motivation
在个人工作区查看执行器暂停原因和研究记录的用户。 用户查看两个暂停或结果未知的执行器时,原页面逐行铺开恢复说明;本次将完整说明放在状态旁的帮助入口,保留状态、任务入口及可展开的原工作信息。 实测默认页更容易先读到暂停状态;悬停、键盘焦点及点击均可访问完整说明,展开后仍能读原回合、时间和未测量资源。 本次只审查现有工作区展示及相关测试;不改变执行器准入、模型调用、费用结算、Goal 验收或权限,也不声称已经验证安装版。
保留原状会继续增加反复阅读暂停原因、原工作信息和长研究结论的负担。本 PR 沿用当前页面和已有说明入口,有独立且可回滚的展示价值。剩余缺口:当前 PR 描述没有实际页面截图或可查看的视觉预览;请直接补入当前精确 head 的桌面、390px 窄屏、默认与相关展开状态及有用的前后对照,注明合成数据和源码构建边界。
改动思路 / Approach
复用现有 ContextHelp 与原生 details;WorkerReadback 只重排已有 typed observation,findingBody 只移动已有执行观测说明,读取帮助不获得执行权限。 当前 PR 的边界是现有概览和研究阅读的可逆展示修整;公开视觉证据仍由本 PR 描述补齐,不能以测试数量替代。
真实来源仍决定执行状态和研究结论,React/CSS 只决定呈现;读帮助、展开元数据、在问题间返回都没有新的运行准入或费用权限。无需第二套状态、配置页或帮助框架。相比不改和新建组件体系,局部调整已有 owner 成本较低。两份并行 PR 均涉及 worker/history 样式,本次分别验证各自精确头,没有把分别通过当作组合合并已经验证。
具体改动 / Changes
规范 docs/development/design.md,spec_revision=57050e2fdfdf8ba5b593ac0b7bb6428deb802b04;先读接受的 Explanations On Demand 与 Populated Page Review,补充同修订的 apps/presentation/dashboard/design.md Mobile/Accessibility,再读实现。四个基线/精确头的上述 design blob 相同,没有用本 PR 重写的规范反向证明自己。
- Explanations On Demand:完整说明、未知状态和原恢复 owner 保留;帮助不是运行操作。
- Mobile:按当前实际窄屏观察判断,保留未改的基线限制,不以“无溢出”等同所有可读性要求已通过。
- Populated Page Review:not_met。 当前 PR 描述没有实际页面截图或可查看的视觉预览;请直接补入当前精确 head 的桌面、390px 窄屏、默认与相关展开状态及有用的前后对照,注明合成数据和源码构建边界。
完整审查五文件 +65/-29,而非只看最后 span 定位修复。WorkerReadback 的技术 details 在基线就已默认折叠,本 PR 的有效增量是说明进入既有帮助、状态分组和手机单列布局。原“先核实原操作及其结算”“请求仍可能产生费用”“不能证明原请求未执行”“完整费用未知”等句子均完整保留。
用相同20条 canonical 合成事件比较两端,并给第一条 finding 加入经过既有 canonical validator 的 execution_observation:四个资源值为 null,展开后两端均显示四处“未测量”,没有补成零。当前 head 在摘要旁即可悬停、聚焦或点击读取“不等于方法有效/验收通过”;点击帮助不切换父 details,Escape 关闭帮助并保留详情与焦点,外部点击关闭。worker 的长标识单列完整显示;“查看任务与依赖”两端实测均40px高,不把该继承尺寸误报为本 PR 新回归。
关键代码讲解
- WorkerReadback:Project existing worker state and expose complete explanation on demand. Status remains visible; explanation+cost limitation move into ContextHelp; details were already collapsed. 输入与分支:Paused and unknown rows; optional missing source.;调用方:GoalOverview line94;结果由 ContextHelp,details and onView("tasks"); no Host execution 使用。
- findingBody:Render actual execution facts and source limitation. Moves same limitation into help beside execution summary; keeps dl and null→unmeasured. 输入与分支:Canonical finding.execution_observation with null values.;调用方:Selected question/finding reader;结果由 Shared ContextHelp and existing dl, no measurement inference 使用。
- ContextHelp:Shared complete noninteractive explanation. Unchanged implementation reused by new locations. 输入与分支:Hover/focus/click, Escape/outside dismissal.;调用方:WorkerReadback and findingBody;结果由 Native popover; click stops propagation, capture Escape handles visible panel 使用。
- mobile worker metadata rule:Make long metadata readable in one column. New later media rule overrides desktop two-column grid at640px. 输入与分支:390px with both worker rows expanded.;调用方:WorkerReadback details dl;结果由 Only computed layout; no state mutation 使用。
对主干的风险 / Risks
P2:缺少本 PR 当前版本的公开首屏视觉证据。 直接阅读当前 PR 描述和全部讨论,仍只有说明和验证数量,没有实际捕获或可查看预览。仓库的 First-Screen Review Evidence 与 Populated Page Review 明确要求在描述中提供实际受影响视口和有用前后对照。我的私有审查捕获和下述文字观察能支持这次判断,不能代替该交付物。最小修复是将公开安全的当前默认/展开、桌面/390px、相关前后视图直接补入描述,标明 head、合成数据和源码构建边界;不需新确认轮,也不需提交一次性截图到代码树。
PASS:当前 head 与不可变基线均完成桌面 TypeScript/Vite 和已校验 Chat bundle 构建;head CSS36样式表/60tokens无缺失,node contract4项、真实HTTP fixture与cadence22项通过。native standard premerge4项direct、2项catalog执行,0failure/advisory。另在390px向真实历史读取注入一次网络阻断:显示“刷新失败,当前记录已保留”和44px重试按钮,20条已读记录不丢;解除阻断并等待重试完成后错误消失。没有把请求发出或旧记录仍在误记为恢复完成。
两端的独立 /fixture/readback 都确认来源字节未变、mutation_attempts=0。研究读取经过真实隔离 SQLite/canonical log/HTTP owner;worker 两行是合成展示投影,保存分析由确定性 provider 提供,不能据此宣称真实 Host 或模型效果已通过。新增或原有源码正则断言只校验结构,视觉与交互结论来自实际页面。
未查询、轮询或等待 CI;CI 未知不构成本次证据缺口,不推断其成功或失败原因。没有新增 Enum、准入规则或公共协议。说明中的原请求核实、费用和结算仍由原 Host 负责,读帮助不会重试原操作。
我的整体评价 / Verdict
long_horizon:preserved,仅验证原读取和不可变来源,没有声称长程效率提升。user_experience:improved;1440px 下两项暂停状态先于可选解释,390px 展开长标识保持单列;执行观测说明完整可达,未测量没有变成零,刷新失败与重试仍在主视图。
未验证安装版、真实 Host 的 worker observation 生产、所有研究状态及两份并行样式 PR 的组合合并效果。执行器两行来自明确标注的合成 HTTP 展示投影;研究事件读取使用真实隔离 SQLite/backend 与源码构建 Chat bundle,没有真实模型调用。
代码量与现有展示 owner 相称;复用现有 ContextHelp/details 和局部媒体规则的边界合理,没有新增需要同步的状态或兼容分支。代码层面的说明收纳和窄屏布局有可见价值;当前 REQUEST_CHANGES 指向 PR 描述缺少实际视觉证据,不是把 CI 未知或继承的40px按钮变成阻塞。 当前 PR 描述没有实际页面截图或可查看的视觉预览;请直接补入当前精确 head 的桌面、390px 窄屏、默认与相关展开状态及有用的前后对照,注明合成数据和源码构建边界。
English verdict: REQUEST_CHANGES — the current UI behavior has independent local coverage, but required public visual evidence is missing from the PR description. CI status is not a prerequisite.
…esearch history Refactor Goal overview worker readback and research history execution observation to follow the 'Explanations On Demand' contract in design.md: - Fold multi-paragraph worker readback notes and execution observation disclaimers into contextual Help glyphs (ContextHelp) rather than cluttering primary reading space. - Default-collapse worker observation technical metadata (Agent, obligation, turn, time). - Add responsive grid rules for 390px narrow viewports on worker status and research controls. - Extend personal workspace contract assertions to verify structured help and collapsed states. Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
… smoke contract Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
…browser test locator Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
4a04729 to
238bc58
Compare
Goal and Summary
This PR addresses
todo_877c146ec68d50f47bae511c(S5/S11 high-craft product slice) by enforcing the "Explanations On Demand" contract indocs/development/design.mdacross the Goal Overview and Research History surfaces:WorkerReadbackand research execution observation blocks that cluttered the primary viewport.ContextHelpglyphs, retaining full explanations accessible on hover, focus, and tap while keeping the primary reading space concise and calm.<details>rather than imposing a vertical text wall..goal-overview-worker-stateand wrapped research history actions to prevent horizontal scroll and maintain legibility on narrow devices.Verification
apps/presentation/dashboard/node_modules/.bin/tsc --noEmit(0 errors)apps/presentation/dashboard/node_modules/.bin/vite build(clean client bundle build)node --experimental-strip-types apps/presentation/dashboard/src/features/personal-workspace/personal-workspace-contract.test.mjs(4/4 passed)uv run --extra test python -m pytest tests/presentation/test_explore_history.py tests/presentation/test_goal_objective.py tests/presentation/test_quota_markdown_renderers.py(11/11 passed)