Skip to content

Add 100 article cases with initial title, body and discussion checks - #5

Merged
lanyue-llk merged 29 commits into
lexmount:mainfrom
Maisiqi:codex/code-changes
Oct 22, 2026
Merged

lanyue-llk merged 29 commits into
lexmount:mainfrom
Maisiqi:codex/code-changes

Conversation

@Maisiqi

@Maisiqi Maisiqi commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

中文图解

PR #5:建立文章抓取评测标准

100 个案例的分布

Change

Add an article category with 100 cases: 95 fixed articles/posts and five changing post collections. Current input version is articles-v11, covering 72 platforms and 75 URL hosts. Four approved Weixin articles replace singleton-platform cases 001/002/003/077 without comment contracts. All 20 existing comment contracts are preserved.

Use common compilation and scoring for displayed bodies, observed titles, stable page components and evidenced comments/posts. Task data supplies site/language exclusion labels; no provider adapters, browser execution, third-party captures or measured outputs are added to Git. Keep complete bodies and observations in external hash-bound inputs. The Weixin evidence is user-supplied initial-load webarchives with an explicit no-interaction attestation, not a successful independent live browser visit.

The shared scorer handles owned records, cleaned HTML, hidden disclosures, duplicate records, code/table literals, quote-only posts and invalid attribution. Public contracts and source bindings have consistency checks. compile-articles validates external evidence and refuses to overwrite pinned inputs.

Current revision: scheme 2 and metadata deduplication

Following the user-approved v7 proposal, fixed articles retain at most five body regions. Every region must reach 80% fragment coverage, replacing the previous allowance for one region at 60%. Body contract version 4 additionally requires 80% coverage of the reviewed ending; a missing ending is invalid. No extra module-check layer is published. Legacy version-3 inputs retain their former scoring behavior.

Deduplicate repeated review basis/date fields into per-case defaults, preserving explicit regions and exceptions. Expanded review rows are identical, and acceptance/title/comment/post contracts are unchanged. rules.json decreases from 3,078,113 to 2,211,902 bytes (7,671 repeated fields removed). Unlike a metadata-only revision, this version also intentionally tightens body acceptance.

All 100 URLs and body references remain unchanged from v10. Preserve v10 rather than reusing its version: the four Weixin additions were already bound there. This revision advances to v11 and refreshes catalog, public tasks, input manifest, registry and bilingual documentation. Distribution counts are unchanged.

Validation

  • make check: 2,272 tests and 310 subtests passed, including complete/format-preserving responses, tail truncation, missing ending, the removed 60% allowance and review-default validation.
  • verify-inputs --suite articles: all 100 v11 cases verified. Dataset SHA-256: 1929d5f702a2f7a0a1248694ca6843fba02ecaf7c559c6bf232865a8fb3c4bb6.
  • Source-based body-layer checks: all 95 fixed bodies passed plain text, Markdown and HTML-derived text (285 positives). Truncating the last 24% of characters failed for all 95. These are not provider evaluations or full-page pass claims.
  • Tail limitations: removing only the declared ending failed for 93/95; 069 and 100 still passed because matching fragments occur elsewhere. Removing the last four blank-line-delimited paragraphs failed for 94/95; 069 still passed. No case-specific exception or threshold relaxation was introduced.
  • Scoring source SHA-256: 0372b25a89361cf4001630614a8cb7d20ddebb3b5a37c54bb95b330cb2c67a49. Existing suite input definitions remain unchanged, and legacy body-contract behavior is retained. Historical provider outputs for the other 450 cases were not available for rescoring; do not publish those historical results under the new scorer identity without rescoring.
  • Remote Python 3.11–3.14 CI passed for f38bccb51ad27a7d51b56dba1a52636eaca2c6e2: CI run. No merge or provider evaluation was performed.

Review decisions and limits

See review decisions. Missing profile fields in 038/041 were corrected with paired controls. Independent module checks were investigated but not published; the approved minimal scheme retains a five-region design.

An 80% fragment threshold is not a precise limit on lost characters and cannot universally reject exactly 20% character deletion. It does not prove ordering, every intermediate module, table-cell/speaker association or the physical position of repeated ending text. Dynamic collection floors still measure structural coverage: distinct attributed links with one-character bodies can pass. Fixing semantic dynamic coverage would require a different approved reference/judging contract; no arbitrary character minimum is added to conceal this limitation.

Frozen input and raw-source evidence remain external. A local scoring-input package has been prepared, but no public evidence hosting location has been provisioned; this PR does not claim independent public reconstruction of historical browser state.

@Maisiqi Maisiqi changed the title Add article-suite authoring and independent post verification Add the 100-case article retrieval suite Oct 19, 2026
@Maisiqi
Maisiqi marked this pull request as ready for review October 19, 2026 12:49
@Maisiqi Maisiqi changed the title Add the 100-case article retrieval suite Add 100 article cases with initial title, body and discussion checks Oct 20, 2026

@lanyue-llk lanyue-llk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed at e18f1e8. Two reproducible scoring defects need changes; see inline comments.

The purpose is to add a separately versioned 100-case article population and make title/discussion requirements additive to the shared scorer. The component registry and task-declared selectors/labels are appropriate reuse boundaries: they avoid provider-specific rules and report dependencies. A class hierarchy would not improve this small registry. Existing suite input files remain unchanged, while the shared visibility change intentionally changes scorer identity.

Validation: definition validation succeeded; the existing suite passed with 2,125 tests and 310 subtests. Additional controls exercised all five current collection tasks through evaluate_response: five real-post controls passed, but ten negative controls incorrectly passed (five indented-code answers and five answers with dates instead of author attribution). The indented-code issue also reproduces for comment and title components. These are scoring defects, not provider evaluations or claims about historical measured results.

Comment thread src/lexbench_webfetch/article_posts.py Outdated
Comment thread src/lexbench_webfetch/article_posts.py

Copy link
Copy Markdown
Contributor

Reviewed all 100 article cases for main-content/ROI coverage at 4dd9a95a70048220b3eb00357e4766eabd1977e7. The rules and public tasks have the same Git blob IDs as the initially reviewed version. This follow-up concerns case definitions and acceptance meaning.

[P2] Protect the profile introduction in article-038 and article-041. Both pages visibly contain the Browser Use introduction, but their required stable anchors cover account identity, tabs and footer without the bio, category, location, website or joined date. Cases 039/040 already require those fields for the same account. Reuse a shared profile module across these page variants. Footer, navigation and login checks can remain; add independent protection for the main profile content.

[P2] Record-count acceptance does not protect dynamic post content in article-038/039/040/041/101. Reproduced through public evaluate_response on this head: retain every required stable anchor, provide the required number of distinct attributed post links, and set every post body to x. All five cases pass. Removing the records fails all five controls. Their floors are respectively 4/8/4/4/16. This establishes a gap between counting records and checking their main content; it does not call for matching historical posts.

Use shared, composable checks for source readiness, distinct records, owned fields, reply/repost/quote relationships and per-record content coverage. Dynamic coverage needs an independent contemporaneous source scope rather than historical membership or literal wording. Structural/length checks can detect severe truncation but cannot alone prove semantic correctness; any semantic coverage judge needs paired valid, truncated, wrong-content and padding controls. Preserve genuinely short posts.

For fixed long articles, keep the existing reference coverage and add independent checkpoints for each major module where large regions combine them (for example 022, 037, 066, 073). For tables and interviews, preserve field/speaker associations using shared structured-record checks. These are coverage improvements, not claimed reproductions of a false pass for each static case.

All 100 URLs were attempted. Six browser failures/incomplete loads were supplemented with primary-site search retrieval, which establishes content scope but not contemporaneous rendering state. The external hash-bound reference bundle was not supplied, so this review does not claim byte-for-byte validation of those historical captures. Please provide a retrievable bundle location for reproducibility.

逐项 ROI 与验收建议:100 个案例

现有页脚、侧栏和按钮要求均可保留。分区数量不等于主要模块已经逐一独立必过。折叠片段按已声明的首次展示范围验收;动态帖子与评论不使用历史文字匹配。article-090 已保留默认年龄表,article-082 已保留 Editorial Note,应继续保留这些正确范围。

案例及原页 主要内容 现有验收 审查结论与建议
article-001 · Island Hopping in Japan 跳岛导语、各岛群与地区、交通建议 稳定文字 59 项;正文 5 区 保留地域分区;交通建议也应单独命中,不能只靠篇幅覆盖。
article-002 · Machine Learning Crash Course 课程介绍、适用人群、课程内容与常见问题 稳定文字 70 项;正文 5 区 保留正文覆盖;逐题检查 FAQ,避免整段 FAQ 被其他介绍抵消。
article-003 · What you need to do deep learning 硬件、软件、生产部署、基础知识、数据与获取渠道 稳定文字 56 项;正文 5 区 主要模块已纳入正文;保留各模块及链接。
article-005 · Karpathy:vibe coding 长帖 vibe coding 定义、操作过程、适用范围与局限;评论 稳定文字 8 项;正文 1 区;评论至少 6 条 固定帖子正文可用冻结参考;评论按动态记录检查,不能用历史评论文字。
article-006 · How We Made Cloud Browsers 3x Cheaper and Faster 云浏览器成本、隔离、虚拟化设计、性能优化与结果 稳定文字 8 项;正文 5 区 长文应保护技术路径及结果,不能只验开头降价数字。
article-007 · How to Authenticate AI Web Agents Web Agent 身份认证方案、流程、取舍与安全边界 稳定文字 8 项;正文 5 区 保留整篇正文及各认证方案,避免只返回身份认证标题。
article-008 · 25个全球最佳旅游目的地(2025年珍藏版) 旅游目的地条目及各自说明 稳定文字 90 项;正文 5 区 参考明确限定首次展示的截断范围;保留该范围,不把 DOM 中折叠文字算作已展示。
article-009 · 从产业细微处,看见周期起落 产业观察框架、周期判断与作者论据;评论 稳定文字 35 项;正文 1 区;评论至少 1 条 正文已有参考;评论复用通用作者、正文、归属与完整性检查。
article-010 · 人工智能的细分方向及学习路线 AI 细分方向、学习路径与学习材料 稳定文字 44 项;正文 5 区 逐方向保护路径与材料,不能只有方向名称。
article-011 · 深度学习应该从哪里开始学起来? 回答者及首次可见的学习建议 稳定文字 62 项;正文 2 区 参考是折叠片段;当前登录态能看到更多,须固定会话条件,不能混用两种范围。
article-012 · 数字花园之问 数字花园概念、问题与作者论证 稳定文字 16 项;正文 3 区 主要内容已进入正文范围;保留论证与段落关系。
article-013 · 建造你的数字小森林 数字小森林的构建方法、实践与结论 稳定文字 16 项;正文 5 区 主要内容已进入正文范围;保留各步骤及说明。
article-014 · javascript事件循环(浏览器/node) 浏览器事件循环、Node 事件循环、示例与执行顺序 稳定文字 23 项;正文 5 区;评论至少 3 条 分别保护两种环境及代码输出顺序,不能只验术语出现。
article-015 · Avenir-Web 开源相关报道 Avenir-Web 的问题、方案及效果的首次可见片段 稳定文字 53 项;正文 3 区 参考明确为折叠片段;按可见边界验收,不要求点击展开后的全文。
article-016 · 区级又怎样?这个博物馆拿捏了数十万人的心 博物馆定位、展览运营、人物与发展经过 稳定文字 39 项;正文 5 区 正文为连续叙事;现有分段可保留,关键事实要与叙述对象对应。
article-017 · 馆长对话录:从上博东馆开始 馆长访谈的各组问题、回答与讲话人 稳定文字 39 项;正文 5 区;评论至少 4 条 复用通用带姓名内容记录,保护问答归属,避免问题和回答串位。
article-018 · 嫦娥六号拍摄月背系列影像图公布 嫦娥六号影像新闻、各影像说明及全景图说明 稳定文字 60 项;正文 5 区 保留可见图注;文本任务不额外要求 OCR 或下载图片。
article-019 · 《如何阅读一本书》读书笔记 读书笔记的各层阅读方法与章节要点 稳定文字 18 项;正文 5 区 章节多于正文分区;增加各核心章节的稳定要点检查。
article-020 · 事务隔离机制 隔离级别、读异常对照表、SQL 与 InnoDB 说明 稳定文字 24 项;正文 5 区 增加通用表格行列关联检查,防止数值或结论串列仍靠词语覆盖通过。
article-021 · 添加解析时提示 DNS 不正确如何处理? 腾讯云域名与其他注册商域名的两条处理流程 稳定文字 45 项;正文 2 区 两条流程都要独立保护,不能只返回其中一种。
article-022 · 项目开发规范 编程、异常日志、测试、安全、MySQL、工程及附录 稳定文字 73 项;正文 5 区 多个规范章节共用大分区;给核心章节分别配置必过要点,尤其安全章节。
article-023 · 星巴克在中国这20年 星巴克中国发展、经营变化及作者分析;评论 稳定文字 22 项;正文 5 区;评论至少 8 条 保留正文覆盖;评论属于另一动态模块,不能替代文章分析。
article-024 · 参观国博实用攻略 国博预约、入馆及参观安排 稳定文字 39 项;正文 5 区 保护各项操作要求及其适用条件;此页会更新,参考应注明版本与日期。
article-025 · Flex 布局教程:语法篇 Flex 概念、容器属性、项目属性及示例;评论 稳定文字 26 项;正文 4 区;评论至少 204 条 六项容器属性与六项项目属性应分别检查;不要用大量评论掩盖教程缺项。
article-026 · The Illustrated Transformer Aman Shekhar 的 Transformer 文章及其论述 稳定文字 21 项;正文 5 区 保持此 URL 对应作者与正文;不要因同名标题换成 Jay Alammar 的文章答案。
article-027 · How to Write 十条写作建议及结论;评论 稳定文字 43 项;正文 5 区;评论至少 1 条 给十条建议分别配置要点,避免合并分区漏掉整条建议。
article-028 · AIがチャットから仕事を代行する存在へ 指定周次 AI 周报的各新闻类别、条目与说明 稳定文字 23 项;正文 5 区 类别多且篇幅长;按类别、条目及描述链接检查,固定该期内容。
article-029 · Writes and Write-Nots 写作与思考、AI 依赖、能力分化及类比 稳定文字 2 项;正文 2 区 短文主要论证已有参考;保留完整推理链。
article-030 · A cartoon intro to WebAssembly WebAssembly 导语、性能背景及系列文章入口;评论 稳定文字 12 项;正文 3 区;评论至少 18 条 这是一篇导读,不能把链接到的整套系列正文加入答案。
article-031 · Cloudflare outage on June 21, 2022 故障影响、时间线、网络变更原因、修复与预防 稳定文字 68 项;正文 5 区 保护时间线及配置代码,保留因果与修复对应关系。
article-032 · JavaScript Visualized: Event Loop 调用栈、Web API、任务队列及示例顺序;评论 稳定文字 18 项;正文 5 区;评论至少 20 条 保护执行顺序与代码;不要求提取动画中不可见帧。
article-033 · New AI model could streamline operations in a robotic warehouse 仓储机器人问题、模型方法、实验结果与限制 稳定文字 52 项;正文 5 区 主要模块已有正文参考;结果须保留条件与比较对象。
article-034 · NASA’s Webb Delivers Deepest Infrared Image of Universe Yet Webb 图像新闻、观测对象、仪器说明与图注 稳定文字 73 项;正文 5 区 保留可见图注和正文解释;不把图片二进制变成文本任务必过项。
article-035 · The Mimic Octopus 拟态章鱼行为、观察及研究解释 稳定文字 59 项;正文 5 区 短篇正文已覆盖主要内容;保留图注及观察与结论区别。
article-036 · 与普通章鱼相遇 章鱼相遇经过、行为观察与作者反思 稳定文字 54 项;正文 5 区 保留叙事及图注;无需另建动物文章评分类型。
article-037 · The Perfect Belgrade Itinerary 起点、向南行程、其他景点、餐饮与交通 稳定文字 34 项;正文 2 区 现有两块正文过粗;餐饮和交通等完整章节需要独立要点保护。
article-038 · Browser Use 主页 个人简介与 Posts 信息流 稳定文字 13 项;帖子至少 4 条 明确缺少简介验收;补简介模块。帖子正文换成 x 仍通过,需补动态内容质量检查。
article-039 · Browser Use 回复页 个人简介与 Replies 信息流 稳定文字 35 项;帖子至少 8 条 简介已有要求;帖子正文换成 x 仍通过。增加回复归属,取消依赖旧批次数量的充分性判断。
article-040 · Browser Use 转发页 个人简介与 Reposts 信息流 稳定文字 26 项;帖子至少 4 条 简介已有要求;帖子正文换成 x 仍通过。逐条保护转发者与原作者、原文的关系。
article-041 · Browser Use 媒体页 个人简介与媒体帖信息流 稳定文字 13 项;帖子至少 4 条 明确缺少简介验收;正文换成 x 仍通过。保留媒体帖正文及可见媒体说明、链接。
article-044 · 入行二十年,有知有畏,但求称职 从业反思、具体经验、原则与风险;评论 稳定文字 43 项;正文 5 区;评论至少 24 条 主要内容已有参考;保留各经验及其理由,评论单独验收。
article-045 · 大模型基础应用框架创新及零售业务落地 SFT、RAG、Agent 与零售落地案例 稳定文字 52 项;正文 4 区 三个技术模块分别必过,保留落地场景与结论。
article-046 · 复杂场景下的 RAG 架构演进 复杂 RAG、跨模态知识融合、语义推理、实践与演进 稳定文字 53 项;正文 5 区 按实际技术模块补关键点,避免只有全文比例而遗漏整个实践模块。
article-047 · JavaScript深入之闭包 闭包定义、作用域、执行上下文与示例;评论 稳定文字 33 项;正文 5 区;评论至少 3 条 保护代码与结果关系;评论复用动态记录规则。
article-048 · 技术周刊 Vol.46:JavaScript 的那些事 技术周刊各栏目、推荐文章及其说明 稳定文字 31 项;正文 5 区 复用名称、链接、描述记录;每个主要栏目都应出现。
article-049 · 开源日报:PostgreSQL 17 等 开源日报的多条新闻、动态及观点 稳定文字 41 项;正文 5 区;评论至少 1 条 按日报栏目与条目检查,不能只提 PostgreSQL 17 就覆盖整页。
article-050 · PostgreSQL 17 Released! PostgreSQL 17 性能、开发、复制、运维及资源 稳定文字 28 项;正文 5 区 英文发布说明各核心改进已有正文范围;保留分类与改进关系。
article-051 · PostgreSQL 17 中文发布说明 中文 PostgreSQL 17 发布内容、资源与联系信息 稳定文字 50 项;正文 5 区 按中文正文及资源检查,不能用英文标题或导航代替中文内容。
article-052 · 从小喝到大的三合一咖啡,怎么成了咖啡鄙视链最底端 三合一咖啡的历史、成分、消费及评价;评论 稳定文字 34 项;正文 4 区;评论至少 4 条 正文已有参考;保留论据,评论单独检查。
article-053 · 我们采访了十几个人,发现基本没人想「报复性消费」 不同受访者的消费情况与观点;评论 稳定文字 72 项;正文 5 区;评论至少 4 条 保护受访者与回答对应关系;不能只拼接观点词语。
article-054 · How we scaled the GitHub API with a sharded, replicated rate limiter in Redis Redis 限流器架构、两类问题、修复及代码 稳定文字 62 项;正文 5 区 两类失效机制及其修复都要独立命中。
article-055 · Reducing Slack’s memory footprint Slack 内存问题、协议与实现变化、效果及后续 稳定文字 29 项;正文 5 区 主要技术链路已有正文参考;结果与改动保持对应。
article-056 · How Discord Stores Trillions of Messages 消息存储架构、数据服务、迁移及迁移后结果 稳定文字 40 项;正文 5 区 保护各阶段与结果,不能只验 Cassandra、Scylla 等产品名。
article-057 · How Discord Indexes Trillions of Messages 索引的问题、各项解决办法及效果 稳定文字 40 项;正文 3 区 Solutions 大分区包含多种方案;给每项核心方案配置稳定要点。
article-058 · Celebrating Five Years of Backstage Backstage 平台、标准化、服务其他团队及商业发展 稳定文字 28 项;正文 5 区 主要模块已有正文参考,保留发展路径与作用。
article-059 · 龙舟漾遗风 粽情系家国——品端午情怀新气象 端午文化、民俗活动与文旅新变化 稳定文字 69 项;正文 5 区 保留各叙事主题,不把相关新闻推荐当成正文。
article-060 · 2024年端午节假期文化和旅游市场情况 2024 年端午数据及各类文旅活动 稳定文字 18 项;正文 2 区 数字属于已定日期的文章事实;按指标、数值、同比关系检查,不当成实时动态数据。
article-061 · What Is Impressionism? 4 Things to Know 印象派四个核心知识点及作品说明 稳定文字 38 项;正文 5 区 四个主题划分清楚,可保留现有模块;继续保护图注。
article-063 · 7 Things We Learned From 1,000+ Conversations With AI Founders 七条 AI 创业经验及各自论据 稳定文字 51 项;正文 5 区 正文分区少于七条经验;七条都需独立要点。
article-064 · The Year in Math(2024) 年度数学回顾的各研究主题与解释 稳定文字 34 项;正文 5 区 各主题都要有实质说明;保持该年度范围,不跟随实时成果更新答案。
article-065 · Learn CSS Grid by Building 5 Layouts 五种 CSS Grid 布局及各自代码 稳定文字 25 项;正文 5 区 五种布局分别必过,不能因合并分区而丢掉一种完整布局。
article-066 · A Complete CSS Flexbox Layout Guide Flex 容器属性、项目属性、示例、兼容与前缀 稳定文字 43 项;正文 5 区 父项和子项各属性应有说明或示例;长分区的总覆盖率不足以保护每项属性。
article-067 · Designing Better Error Messages UX 错误提示设计的各原则、示例及限制 稳定文字 37 项;正文 5 区 逐项保护主要设计原则,避免遗漏整条原则仍满足全文比例。
article-068 · Responsive Web Design 响应式布局、媒体查询、示例及适用限制;评论 稳定文字 52 项;正文 5 区;评论至少 11 条 主要技术模块已有参考;保留代码与条件,评论单独检查。
article-069 · The Reformer: Pushing the limits of language modeling 局部与 LSH 注意力、分块前馈、可逆层及轴向嵌入 稳定文字 27 项;正文 5 区 主要技术模块划分较清楚;保留代码、结果及适用条件。
article-070 · Transformer: A Novel Neural Network Architecture for Language Understanding Transformer 架构、并行计算、效果与后续 稳定文字 41 项;正文 5 区 保护结构与结果说明及图注,不能只有模型名称。
article-071 · GraphRAG: Unlocking LLM discovery on narrative private data 向量检索局限、图构建、全局摘要、实验及限制 稳定文字 82 项;正文 5 区 主要模块已有参考;保留对照对象与结论适用范围。
article-072 · PyTorch 2.0 release PyTorch 2.0 稳定、测试及原型功能与性能 稳定文字 24 项;正文 5 区 增加功能名称与成熟度的关联检查,防止状态互换仍通过。
article-073 · Scaling your API with rate limiters 四类限流器、各自用途、部署与安全发布 稳定文字 100 项;正文 5 区 四种限流策略都要有实质说明;当前大分区容易弱化单项保护。
article-074 · Scaling to exabytes and beyond Magic Pocket 动机、架构、迁移及可靠性 稳定文字 27 项;正文 2 区 主要模块已有正文范围;保留自建与云服务的边界。
article-075 · H3: Uber’s Hexagonal Hierarchical Spatial Index H3 六边形理由、层级索引、示例及后续 稳定文字 48 项;正文 5 区 保留索引层级关系与代码,不能只出现地理术语。
article-076 · Introducing the Amazon Builders’ Library(Part I) Builders’ Library 介绍及四篇文章的说明和链接 稳定文字 81 项;正文 5 区 复用通用名称、链接、描述记录,四项分别验收。
article-077 · A beginner’s guide to Javascript Closure 词法作用域、闭包及示例说明 稳定文字 20 项;正文 2 区 短篇模块清楚;保护示例结果与原因。
article-078 · Does reading do us any good? 文学与个人自由的论证、思想家及反例 稳定文字 29 项;正文 5 区 连续论述可沿用分段覆盖;关键观点要保留论证语境。
article-079 · The Roosevelt Family Built a New York Coffee Chain 50 Years Before Starbucks 咖啡连锁的起源、经营、人物与衰落 稳定文字 83 项;正文 2 区 现有分区较粗;补经营与衰落的独立关键点。
article-080 · How an octopus’s cleverness may have evolved 章鱼基因研究、机制解释、比较与研究来源 稳定文字 49 项;正文 2 区 主要正文范围合理;保持观察与推断区别。
article-081 · The short history of global living conditions 贫困、识字、健康、自由、人口、教育及为何关注进步 稳定文字 56 项;正文 5 区 六个生活维度分别保护;按绑定版本验收数据,不能套用实时数值。
article-082 · How sex chromosomes get trapped into nonrecombination 论文论述、图注、引用及 Editorial Note 稳定文字 98 项;正文 4 区 现有参考已包含编辑说明;应保留,不能只保留论文主张而漏掉该说明。
article-084 · 影智XBOT通用餐饮服务机器人发布报道 机器人体系、产品矩阵、平台与落地合作 稳定文字 33 项;正文 5 区 分别保护体系、产品和应用模块,不只检查发布会名称。
article-085 · 县城咖啡低调火热,培养土著喝咖啡才是关键 县城咖啡、节假日与日常消费、经营策略 稳定文字 50 项;正文 4 区 正文已有参考;保留不同客群与场景的区别。
article-086 · Announcing Rust 1.0 Rust 1.0 稳定承诺、工具与社区发展 稳定文字 22 项;正文 4 区 主要模块已有正文参考;保留承诺及其适用范围。
article-087 · Go Concurrency Patterns: Context Context API、派生、取消与超时、服务示例 稳定文字 40 项;正文 5 区 保护 API 语义和跨请求传播,代码与解释均应保留。
article-088 · Attention and Augmented Recurrent Neural Networks 记忆、注意力、计算控制、神经程序及整体讨论 稳定文字 17 项;正文 5 区 主要模块划分清楚;保留公式附近说明、图注与例子。
article-089 · The Scaling Hypothesis 规模假说、证据、反论、预测及附录 稳定文字 57 项;正文 5 区 超长附录不能只用单个大区比例;选定主要论证后逐项保护。
article-090 · Americans’ Use of Social Media in 2026 社交媒体使用结论、人口差异、默认年龄表与方法入口 稳定文字 53 项;正文 4 区 参考已声明保留默认年龄表,排除未展开面板;保留此范围,增加平台、年龄、数值的表格关联检查。
article-091 · The Year in Computer Science 年度计算机科学回顾的各研究主题 稳定文字 90 项;正文 5 区 主要主题划分较清楚;保留主题解释及对应来源。
article-092 · A crash course in just-in-time (JIT) compilers 解释器、编译器、JIT 分层、类型分析与反优化 稳定文字 11 项;正文 5 区;评论至少 12 条 主要步骤各有实质说明,保留优势、代价及触发条件。
article-093 · JavaScript Visualized: Promises & Async/Await Promise、微任务、async/await 与执行示例;评论 稳定文字 109 项;正文 5 区;评论至少 16 条 保护执行顺序;嵌入内容应保留来源,评论单独验收。
article-094 · LLMs develop their own understanding of reality LLM 世界理解实验、干预、对照、结果及局限 稳定文字 61 项;正文 5 区 主要模块已有正文范围;不能省去对照和局限而只保留结论。
article-095 · 科技爱好者周刊第300期 人生主题文章、科技周刊各栏目及条目;评论 稳定文字 26 项;正文 5 区;评论至少 56 条 主文与周刊栏目都是 ROI;给栏目配置独立要点或名称链接描述记录。
article-096 · LLM Powered Autonomous Agents 规划、记忆、工具、案例与挑战 稳定文字 24 项;正文 5 区 主要模块已有参考;保留三类组件及案例和挑战,不只验开头架构图说明。
article-098 · 人之所以活着,人之只好活着 书评的完整论述;评论 稳定文字 34 项;正文 5 区;评论至少 40 条 书评很短,不加任意字数门槛;评论需按实际加载完成状态判断范围。
article-099 · Announcing English Wikipedia’s most popular articles of 2024 2024 年 Top25 的排名、文章名、浏览量与解读 稳定文字 28 项;正文 3 区 复用通用表格记录,保护排名、名称、数值同一行关系;这是固定年度榜单。
article-100 · Unpacking the 2024 Developer Survey results 开发者调查播客的讨论、发言人及逐字稿 稳定文字 58 项;正文 5 区 此 URL 是播客解读;保护发言人归属,不要求链接外的整份调查数据。
article-101 · 大道无形我有型:个人帖子首页 用户简介与帖子流 稳定文字 56 项;帖子至少 16 条 简介已有要求;帖子正文换成 x 仍通过。需区分帖子源未加载与完整抓取,不能把空列表当成功。
article-102 · 大道无形我有型:短帖与引用原帖 外层短回复与引用的提问 稳定文字 31 项;正文 1 区 两层内容都属于主体;复用通用引用记录与作者关系,保留短文本。
article-103 · 段永平谈CRWV:不懂不碰,但别把不可持续当成马上暴雷 作者对 CRWV 的评论、引用及讨论 稳定文字 37 项;正文 5 区;评论至少 20 条 区分作者分析与被引用者原话;不能把转载解释算成原作者直接发言。
article-104 · 能力圈不在于多大,在于敢说“我不懂” 能力圈论述、引用问答与免责声明 稳定文字 41 项;正文 5 区 保护外层分析、引用及说话人,保持免责声明。
article-106 · 人民日报海外版导读:中国车企发力线控底盘 指定微博中的八条新闻及其说明 稳定文字 4 项;正文 5 区 固定帖子不是实时信息流;八条新闻分别保护,不能只靠整段比例。
article-107 · 中控技术:工业AI成果发布会 工业 AI 活动的短帖正文 稳定文字 4 项;正文 1 区 短帖是有效案例;保留事件、主体与成果,不加统一长文长度门槛。

Copy link
Copy Markdown
Contributor

Follow-up review at f38bccb51ad27a7d51b56dba1a52636eaca2c6e2, against the requested main-content coverage and shared-evaluation requirements.

Verified improvements: 038/041 now require the missing profile fields, with paired public-scorer tests. All 95 fixed cases use body contract v4. Comparing the 100 rules with the previously reviewed version confirms that only 001/002/003/077 changed their URL/body/title references; comment and post contracts are unchanged. Expanding review defaults changes only the four replacements and two corrected profile cases. The complete package test run passed: 2,272 tests and 310 subtests.

The following requirements remain open; the PR already documents most of these as deliberate limits, so they should not be reported as newly introduced implementation regressions:

  1. Dynamic main-content coverage: the public scorer still accepts all five collections when every attributed post body is x. Rechecked 038/039/040/041/101 on this exact head. Fixed count floors establish structural coverage, not whether the posts' main content was retained. Retaining that narrower contract is a scope decision; it does not fulfill the stronger main-content requirement. Reuse generic per-record content coverage if that stronger claim is required, without historical literal matching or arbitrary minimum lengths.
  2. Coverage of every principal module: requiring 80% of each of at most five regions improves truncation detection, but a whole shorter module can still fit within a larger region's tolerance. The ending check also does not establish table-cell/speaker association or ordered completeness. Keep these as distinct acceptance meanings; do not advertise the suite as enforcing every principal module. If every principal module is required, declare those modules through shared contract data and test whole-module omissions.
  3. Independent reproduction: public rules still bind external bodies without a retrievable input package location. The four new Weixin cases rely on user-supplied archives. Browser access in this review was blocked by the browser service's site policy, and web retrieval also failed; this is not evidence that the articles themselves are unavailable. The original archives and bound scoring inputs are needed to independently validate their exact displayed scope. Provide an access-controlled or public distribution location matching the declared hashes; committing third-party captures to Git is unnecessary.

Footer, sidebar and login checks remain valid supplementary requirements. Shared body/stable-text machinery is reused, and adding object-oriented layers solely for style would not address these acceptance gaps. No article-specific semantic scorer or provider calls were added by this review.

@Maisiqi

Maisiqi commented Oct 22, 2026

Copy link
Copy Markdown
Contributor Author

针对本轮 review 的第 2 项(正文主要模块覆盖),补充明确的处理决定及理由:

认可指出的限制,但本次保留现有正文方案,不声称已经解决“每个主要模块都不可遗漏”。 95 个固定案例最多划分 5 个正文区,每区及独立结尾文字均须达到 80% 的覆盖率。一个较短的小节仍可能整体落在所属分区的容差内;结尾文字检查也不证明位置、顺序、表格单元格或发言人归属正确。

保持这一方案的技术理由:

  1. 当前检查已有可验证的作用,而不只是标题或非空判断。已记录的正文层验证中,95 个参考正文在纯文本、Markdown 引用和 HTML 可见文本三种形式下共 285 项正例通过;截去末尾 24% 字符的 95 项反例全部失败。这支持“正文覆盖及明显截断检查”,不支持“所有小节完整”的更强结论。
  2. 单纯提高 80% 比例不能可靠保护每个小节:只要小节足够短,仍可能落在容差内。提高到严格全匹配又会改变当前允许的文字差异范围。因此不把调整一个比例当作这项问题的修复。
  3. 如果要保证每个主要模块都被保留,需要另外定义模块边界、逐模块检查,并增加整模块删除等对照测试;表格和发言人关联还涉及不同的检查要求。这是更强的验收范围,会增加规则维护成本,不能仅用一个额外关键词或按网站写特殊判断替代。

因此本次选择保留经过验证的较窄覆盖要求,明确披露其局限,不再增加模块检查层,也不降低现有门槛。 这是在说明收益、代价和未覆盖情况后确认的范围决定,不是认定 reviewer 的发现错误,也不是为了让某个 Fetch 方法通过。已知反例同样保留:仅删除声明的结尾时,069/100 可能因其他位置的重复文字仍通过;这些结果不被表述为位置完整性。

暂不为正文分区另开 issue:当前没有确定要推进“所有主要模块逐一必过”的扩展,现有决策与验证限制已记录在 docs/article-review-decisions.md。重复创建一个没有明确实施目标的 issue 不会修复限制。如果以后明确需要逐模块保证,应重新定义验收范围并用实测评估方案。

动态列表是另一项问题:目前缺少逐条正文覆盖检查,已由 #9 跟踪可行性验证。该 issue 不代表本次已经实现动态正文完整性,也不代表 reviewer 已认可放行。第 3 项参考材料的外部交付仍单独待完成,不因上述范围决定而视为解决。

@Maisiqi

Maisiqi commented Oct 22, 2026

Copy link
Copy Markdown
Contributor Author

针对第 3 项“Independent reproduction”,已核对旧测试集的实际处理方式,现明确本 PR 的范围决定:

本次沿用原有参考输入的交付方式,不在 PR #5 新增公开全文评分包,也不为此改造评分器。

核查依据:

  • 本次新增文章分类之前,仓库已有 450 个案例:webfetch 150、popular-sites 100、dynamic-content 100、access-restrictions 100。四套公开 tasks.json 均不包含完整 ground_truth_main_content;完整输入通过外部副本和 source-inputs.json 的校验信息绑定。
  • 这不是本 PR 临时引入的安排。仓库拆分时的 docs/data.md 已明确没有公开托管的完整输入包;Browser Eval 的集成说明 也要求使用匹配的外部输入副本,并明确当前没有公开完整输入下载包。
  • 本次 100 个文章案例采用相同机制。四个微信案例只是原始证据来自用户保存的网页归档,整理后使用相同的参考输入格式和评分器,并不是它们单独缺少正文数据。当前本地完整 articles-v11 输入已通过 verify-inputs,包含 100 个案例,数据 SHA-256 为 1929d5f702a2f7a0a1248694ca6843fba02ecaf7c559c6bf232865a8fb3c4bb6。

选择沿用的理由是:PR #5 的目标是增加文章测试规则及相应评分支持;如果本次单独建立全文参考数据的公开托管、分发条件和维护机制,会扩大为新旧测试集共同的数据发布工作。现阶段保持既有输入边界,既不改变评分门槛,也不引入指纹格式或其他替代评分流程。用户已明确确认这一范围决定。

仍认可你指出的实际限制:没有获得匹配输入副本的外部使用者,无法仅凭公开仓库完整复现历史评分;哈希也不能代替原始参考材料的独立审查。 “沿用旧方式”并不证明这个缺口不存在。本次不声称已经提供公开下载入口、不声称原始微信页面已被 reviewer 独立核验,也不会把本地验证或 CI 通过当成公开复现完成。

因此,这项以“本 PR 保持既有外部输入模式,公开分发暂不纳入本次范围”回应,而不是以“已修复公开复现”回应。后续若建立公开参考输入发布机制,应统一考虑原有四套和新增文章套件。请据此评估本 PR 的范围;此回复不代表 reviewer 已同意该取舍。

Copy link
Copy Markdown
Contributor

P0/P1-focused follow-up at ba7bdae: no new P0 or P1 finding in the examined shared-scoring changes and acceptance boundaries. The latest change from f38bccb affects documentation only; scoring code, frozen case inputs and tests are unchanged. The complete package suite plus the 15 earlier independent record-recognition controls passed: 2,287 tests and 310 subtests. The known dynamic structural-coverage and fixed-region completeness limits remain disclosed; they are not being relabeled as newly discovered critical defects. No provider calls, historical result edits or publication were performed. This does not certify historical scores under the new scoring identity.

@lanyue-llk
lanyue-llk merged commit c385c7b into lexmount:main Oct 22, 2026
4 checks passed
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.

2 participants