Repository navigation
Releases: Yokhong/dsh_academic_web_proxy
Release list
v0.2.1 — Browser compatibility and task-safety fixes
v0.2.1 — Browser tool compatibility and task-safety fixes
Release source: af48326. GitHub CI: all four Ubuntu/Windows × Node 22/24 jobs passed. The attached validation reports record the earlier local preparation stage; this release note adds the hosted-CI result. npm publication is verified separately below once complete.
中文
修复
- 同时适配旧
browser_*和新dsh_browser_*;修复旧名称导致的unknown tool "browser_execute"。调用仍经过宿主工具注册表,保留当前任务、父调用、取消信号和策略检查,不在拒绝后换名称重试。 - 新工具优先;部分注册、继承作用域中被隐藏的工具和操作中途的工具变化均安全停止,不混用新旧浏览器会话。
- 下载点击前重新检查登录 / CAPTCHA,只有明确
clicked: true才报告点击;不把点击说成已保存。 - 保存语言或命名设置不再清掉代理等待 / 防循环状态;缺少
settings的请求返回错误,不静默重置配置。 - 三语状态界面分开说明工具注册、后台监测与 PDF 命名是否就绪,避免将后台不可用误读成所有工具不可用。
重要行为变化
后台桥接无法证明页面属于当前任务,因此 0.2.1 停用此类后台扫描、自动改写导航、后台元数据采集和强制展示,显示 tools-only。 使用 academic_proxy_open、academic_proxy_check、academic_proxy_download 显式操作当前任务浏览器。这是有意的安全降级,不是对旧版自动监测功能完全等价的承诺。
旧配置继续兼容。Node 最低版本仍为 22.19,DSH / SDK 最低仍为 0.2.0-rc.2;明确加入已验证 0.2.1-rc.2 预发布版本。浏览器 peer 为 0.3.x || 0.4.15,代表性工具层测试覆盖 0.3.1 和 0.4.15,不代表整个范围逐个实测。旧浏览器的全局限制与新浏览器的任务限制按上游语义保留,插件不升级旧浏览器自身的隔离能力。
PDF 命名仍为自愿启用的文件系统启发式:新临时文件消失、最终文件稳定至少两秒、PDF 可解析且与先前元数据唯一匹配才有资格命名;不覆盖已有文件,不推测元数据,不是原生下载完成事件。
验证与边界
- Windows x64:Node
22.19.0/22.23.4/24.19.0+ SDK0.2.0-rc.2,以及 Node24.19.0+ SDK0.2.1-rc.2,四组均 264/264 通过。 - 真实发布的浏览器工具定义 + 真实 SDK + 假注册表 / 载体:六组各 57/57,合计 342 次通过;没有非任务隔离桥接调用。
- 最终 npm 包在新旧 SDK 中分别隔离安装;每个安装的 30 个载荷文件与归档逐字节一致,合成 PDF 命名、两种临时扩展名、碰撞避让及内容保留通过。
- 公开源码 50 个文件;相对文档链接 69 个;有界发布扫描未发现真实个人路径、凭据签名或验证占位符,13 个凭据形式 URL 均为测试夹具。
未验证: 修复后真实 DSH / 浏览器载体、设置窗口渲染、机构登录、CAPTCHA 人工接管、真实论文下载、Linux/macOS 实际浏览器载体。Ubuntu/Windows × Node 22/24 托管 CI 已通过,但不能代替真实载体验收。没有修改用户运行配置,也没有自动安装。
English
Version 0.2.1 adapts both legacy browser_* and modern dsh_browser_* via the host tool registry, preserving caller scope, parent token, signal, and dispatch policy. It never switches families after denial or within an operation. Inherited-but-hidden modern registrations fail closed rather than selecting legacy aliases.
Final download clicks recheck login/challenge and require an explicit successful click response. Missing-settings writes are rejected; unrelated preference changes preserve proxy wait/loop state. The three-language UI distinguishes registration, automatic monitoring, and renaming readiness.
Safety-related behavior change: the legacy desktop bridge cannot prove task ownership. Its background scanning, automatic redirects, background metadata capture, and forced presentation are disabled; the production mode is tools-only. Use explicit academic proxy tools in the current task. Backward-compatible settings and tool names do not imply automatic-feature parity or stronger isolation in an older browser.
Node >=22.19 and the original DSH/SDK minimum remain supported by the tested matrix. The exact current prerelease 0.2.1-rc.2 is explicitly admitted. Browser interfaces 0.3.1 and 0.4.15 were exercised; not every declared 0.3.x version was tested.
All four local full-suite rows passed 264/264. Six published-tool-layer contract runs passed 57/57 each, with fake registry/provider services, not a real host. Two isolated installations of the final tarball passed byte comparisons and synthetic PDF rename/collision/preservation checks. All four Ubuntu/Windows × Node 22/24 hosted-CI jobs passed. Live-provider, authentication, real download, and Linux/macOS browser acceptance remain unverified. PDF renaming remains an opt-in filesystem heuristic, not a native completion event or a proof of task provenance.
Artifacts / 发布附件
- dsh-academic-web-proxy-0.2.1.tgz: npm / local installation payload; 30 files.
- dsh-academic-web-proxy-0.2.1-github-source.zip: complete clean source at archive root; 50 files.
- SHA256SUMS.txt and the accompanying validation, inventory, and audit reports: exact-byte evidence, separate from the archives to avoid circular hashes.
Use a new v0.2.1 tag pointing to the reviewed 0.2.1 source. Do not move v0.2.0 or try to overwrite npm 0.2.0.