Skip to content
This repository was archived by the owner on Apr 25, 2026. It is now read-only.

0.5.3 (16ff0dd)

Choose a tag to compare

@github-actions github-actions released this 28 Mar 08:06
· 42 commits to main since this release

browser-cli 0.5.3

0.5.3 是一个以结构化输出语义保留、class 信息可读性和列表项交互识别补强为主的补丁版本,汇总了自 0.5.2 以来这一轮页面结构化 / XML 渲染 / 插件目标遍历改进。

亮点

  • 结构化结果开始保留更有用的 class 语义
    • 交互节点如 link、button,以及列表项 item,现在会在结构化树中保留自身的 class 信息。
    • XML 输出会在保留 class 语义的同时做去重和压缩,减少重复兄弟节点、重复路径和 BEM 基类带来的噪声。
    • 对重复结构的列表项,会优先保留首个模式样本上的 class,后续同构项自动省略重复 class,让输出更短但仍保留足够语义。
  • 列表项交互识别更符合真实页面
    • 如果 <li> 本身就携带弱交互信号,例如 cursor:pointer,结构化阶段现在会直接把它识别为可点击元素,而不是先包成普通 item。
    • 这让排行榜、tab 列表、卡片列表一类自定义站点组件更容易直接被 click 命中。
  • XML 上下文去噪更进一步
    • class 路径会自动压缩掉冗余父级前缀,例如 BEM 基类与修饰符、父块名与子元素名的重复片段。
    • 兄弟节点之间重复的相同 class 也会按结构去重,避免长列表输出被模板 class 填满。
    • 插件目标遍历与 CLI 目标查找已同步适配新的节点字段,保持交互查找行为一致。

兼容性与行为说明

  • 这是一个兼容性补丁版本,没有引入新的命令参数或协议层破坏性变更。
  • 现有 eN / tN / bN 工作流保持不变;本次主要提升的是输出中 class 语义的可利用性和列表交互元素的命中率。
  • XML 输出中的 class 属性会比之前更有信息量,但也会经过主动去重压缩;如果下游逻辑依赖重复模板 class 的完整原样展开,需要按新的更紧凑表示适配。

English

0.5.3 is a patch release focused on semantic preservation in structured output, more useful class rendering, and stronger interactive detection for list items, covering this round of page-structuring, XML-rendering, and plugin target-traversal refinements since 0.5.2.

Highlights

  • Structured output now preserves more useful class semantics
    • Interactive nodes such as link, button, and list item nodes now retain their own class information in the structured tree.
    • XML rendering keeps that class context while deduplicating and compacting it, reducing noise from repeated siblings, repeated path segments, and BEM base classes.
    • For repetitive list structures, class information is preferentially kept on the first representative item while later isomorphic items omit duplicate class data, keeping output shorter without losing the pattern.
  • List-item interaction detection better matches real pages
    • When an <li> itself carries weak interactive signals such as cursor:pointer, the structuring pass now emits it directly as an interactive target instead of wrapping it as a plain item first.
    • This makes custom site components such as ranking lists, tab strips, and card lists easier to target directly with click.
  • XML context denoising goes further
    • Class paths now compact redundant parent prefixes automatically, including repeated BEM base/modifier relationships and repeated block/element prefixes.
    • Repeated sibling classes are also deduplicated structurally so long lists are not flooded with template-level class noise.
    • Plugin target traversal and CLI target lookup have been updated to understand the expanded node fields and keep interaction resolution behavior consistent.

Compatibility and behavior notes

  • This is a compatible patch release with no new command syntax and no protocol-breaking changes.
  • Existing eN / tN / bN workflows remain unchanged; the main improvement here is better class-level semantics in output and more reliable targeting of interactive list items.
  • class attributes in XML now carry more signal than before, but they are also intentionally deduplicated and compacted; downstream logic that depended on fully repeated template classes should adapt to the denser representation.

Full Changelog: 0.5.2...0.5.3