Skip to content

fix(reports): keep prose highlights from squeezing the title - #7443

Merged
loopx-agent merged 1 commit into
mainfrom
codex/periodic-report-bounded-masthead-20261027
Oct 27, 2026
Merged

loopx-agent merged 1 commit into
mainfrom
codex/periodic-report-bounded-masthead-20261027

Conversation

@loopx-agent

@loopx-agent loopx-agent commented Oct 27, 2026 •

Copy link
Copy Markdown
Collaborator

Reports with prose-valued highlights let the desktop summary column grow to its content width, squeezing a long title into a narrow column. Bound that existing column at 360px while preserving every highlight, the title, the 820px stacking breakpoint and body typography.

Frozen report validation reconstructs the exact prior masthead CSS alongside the three shipped source layouts. It continues to compare the full source, document, bundle, candidate and report bytes; existing reports are never rewritten.

Validation: 66 renderer/freezer tests passed; a CSS-only patch reproduced three historical validation failures, and the fixed matrix rejects report/HTML/source/response tampering. Four existing frozen windows passed without any byte changes. 186 native steward/Lark/Turn-host regression tests passed. Repository premerge ran 6 direct and 11 selected checks with no automatic failures. Its overall result remains manual_review_required for the three PNG files; all three were independently reviewed for pixels, metadata and synthetic fixture provenance. No GitHub CI was fetched, polled or waited for (wait_for_ci=false). No model/provider effects are part of the browser fixture.

Synthetic browser evidence at d5b66aa50ad7fe99ab85dcd513cba751de6ab609: the title grows from 517px to 832px at 1440px, with the same four values retained; 390px has no horizontal overflow. These are self-contained production renderer artifacts, not installed-service screenshots.

Before, desktop After, desktop
Before After

After, 390px

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent | gpt-6.1-sol | OpenAI | runtime_reported | reasoning_effort=max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机

本次判断是 justified_increment:原 HTML 的 auto 概览列遇到 prose-valued highlights 会占据大部分桌面宽度,长标题被挤成很窄的多行。同一公开夹具在1440px下只有517px标题宽,实际原稿更窄。修复这一确定的阅读问题有直接价值;父任务的自然语言配置、设置页完整旅程及其他受众验收继续保留,不能以本 PR 关闭。

受影响者是阅读既有周期报告 HTML 及完整历史稿的用户。 同一长标题与四项中文概览,桌面标题从517px扩至832px,全部文字保持。 标题高度353→212px,390px无水平溢出,四个真实历史窗口的全部文件字节不变。

当前 PR 只承载标题/概览布局与原冻结格式读取兼容,不承载模型、调度、鉴权、消息回传或任务配置改造。

改动思路

先质疑最小修法:只把 CSS 改成 bounded track 看似足够,却会改变冻结 HTML 的完整内容,实跑出现三种历史格式读回失败。因此保留现有 renderer 与 validator 两个 owner:新稿使用 minmax(240px, 360px),旧稿只做 exact reconstruction,再执行原来的完整校验。没有新 scheduler、migration、store、model worker 或业务 authority。

规范依据为 docs/product/periodic-reports.md,spec_revision 6e03576261a732a4447405172dd7196ef7ebefc3。该规范未编号,本次按其原有语句逐项映射:authored_overview_values 保留既有概览全部 value/label/detail;frozen_original_bytes 保留历史原字节和 generation identity;full_frozen_integrity 仍要求 source、response、document、bundle、candidate、body 全等。三项均通过当前实现与对应验证,不修改规范来迁就代码。

具体改动

整个 diff 为6个文件、31行新增/11行删除:两个生产 Python owner、一个既有测试,以及三张 synthetic PNG。新 CSS 只限制 masthead 右列,原有820px stacking breakpoint、520px字体和正文样式保持。长文本继续完整换行,不截断概览、不缩小标题来掩盖布局问题。

关键代码讲解

  • render_periodic_report_html:665 仍先验 document/editorial,再选择本次局部 css。默认新稿用 bounded track;仅 _legacy_masthead 或既有 legacy layout 才还原旧 auto 声明。_legacy_source_links 继续先归并到 legacy layout,因此更早两种格式也得到原 CSS。函数仍只返回 artifact,没有写盘、网络或投递效果。
  • validate_private_generation:228 在当前 bundle 不符时,多尝试“当前来源索引+旧 masthead”的完整候选,再走原 safe-inline/old-link 候选。末尾所有 source/document/candidate/id/digest/body 比较没有放宽;一个 CSS 参数不是任意兼容或错误吞并入口。
  • test_frozen_report_keeps_prior_presentations_across_renderer_upgrade:195 从真实 freezer 建立三类旧 presentation,独立替换旧 CSS,并保留历史 Markdown digest oracle;再分别篡改 report/HTML/source/response,验证仍拒绝。它证明 persisted-data compatibility,而非仅测试实现分支存在。

正向路径是同一 normalized document 经原 formatter 进入浏览器:合成标题517→832px,高度353→212px,四项概览值逐项全等;390px仍纵向排布,scrollWidth390。负向路径是 CSS-only 反例的3个历史读回失败,最终66项 renderer/freezer 测试覆盖相同三种格式及篡改拒绝。另有4个真实冻结窗口逐文件 hash 前后全等。原稿只读重渲染的来源点击在390px展开32项索引并保持 focus,不重新生成或回传业务。

对主干的风险

最大风险是视觉修复破坏历史完整性;这个风险已由真实反例、三种旧格式矩阵和四窗字节读回覆盖。新默认改变纯展示,Markdown companion、原来源与窗口不改;既有 native/managed/Lark 调用路径本轮186项回归通过。没有 default-off feature 声明,private flag 只是历史重构参数,不能充当启用或用户许可。

标准 premerge 的6个 direct、11个 selected checks均无自动失败,包含编译、diff hygiene、双语 RFC、maintainability、semantic vocabulary及public boundary。其总退出状态仍为 manual_review_required:三张二进制图片需人工验看。本次逐张检查了全部 pixels、PNG metadata及合成 fixture 来源,未把自动门禁伪报为整体通过。public images 含既有 escaped-script 测试文本,保持 inert;没有私人原稿或身份数据。当前 wait_for_ci=false,未获取、轮询或等待 GitHub CI。

rollback 应按匹配源码版本安装,保留原冻结文件;新格式产生后退回不认识该格式的旧 validator 可能需要恢复匹配版本,不能改写历史或重放投递。源码与 browser fixture 通过也不等于原服务已经采用,安装会另行核验。

我的整体评价

APPROVE 当前精确 head d5b66aa50ad7fe99ab85dcd513cba751de6ab609,无阻塞 finding。只在现有 renderer 与冻结校验器内修复;一个 CSS 上限和一条完整历史候选即可覆盖真实问题,无需新状态或迁移。 当前 PR 只承载标题/概览布局与原冻结格式读取兼容,不承载模型、调度、鉴权、消息回传或任务配置改造。

长程效果:冻结历史保持可验证且不改写,后续报告使用同一默认渲染入口,无需人工修稿或重放。
用户体验:桌面标题恢复足够宽度,四项概览完整保留;窄屏仍按原断点纵向阅读。
视觉审阅:已逐张检查三张合成截图,并核对实际报告在桌面及窄屏展开来源后的完整内容和布局。
未验证范围:合成截图不证明安装采用、自然调度或模型内容质量;这三项分别取证,通用任务配置与其他受众仍保留原验收缺口。

这次确认了局部默认修复及 immutable-history compatibility,保留父任务的剩余业务验收与原接收者职责。自审结论使用 COMMENTED,GitHub没有正式self-approval;合并仍需当前精确 head 的独立 merge-readiness 和既有本人授权。

English verdict: APPROVE — d5b66aa. Bounded masthead geometry preserves all authored content and exact frozen history. 66 focused tests,186 native regressions and local premerge checks pass; three binary visual holds were manually inspected. Installation and wider task journeys remain separate.

@loopx-agent
loopx-agent merged commit 3c1b98a into main Oct 27, 2026
26 of 39 checks passed
@loopx-agent
loopx-agent deleted the codex/periodic-report-bounded-masthead-20261027 branch October 27, 2026 03:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant