Skip to content

feat: 增加经纬度随机扰动 - #70

Open
YeTianXingShi wants to merge 1 commit into
Yu9191:mainfrom
YeTianXingShi:feat/random-coordinate-jitter
Open

feat: 增加经纬度随机扰动#70
YeTianXingShi wants to merge 1 commit into
Yu9191:mainfrom
YeTianXingShi:feat/random-coordinate-jitter

Conversation

@YeTianXingShi

Copy link
Copy Markdown

变更

  • 新增 randomRadius 参数,默认在目标坐标周围 30 米内随机扰动
  • 每次 WLOC 响应只生成一次偏移,确保同一响应内 WiFi/基站坐标一致
  • 支持设置为 0 关闭扰动,并同步 Surge、Loon、Stash、Shadowrocket 配置与文档
  • 添加 protobuf 响应级测试,覆盖扰动范围、关闭开关及持久化坐标

验证

  • node --test tests/wloc-random.test.js
  • node --check dist/wloc.js
  • git diff --check

@Yu9191

Yu9191 commented Aug 8, 2026

Copy link
Copy Markdown
Owner

感谢!randomRadius 这个功能很有用,但有两个问题需要调整:

  1. QX 用户无法设置参数 Quantumult X 的 script-response-body 不支持 argument,QX 用户没有入口修改 randomRadius,只能被迫接受默认值,连关闭的途径都没有。

  2. 建议通过选点页面 + $persistentStore 统一设置 在选点页面加一个 randomRadius 输入框,保存时写入 $persistentStore。这样所有平台(包括 QX)都能统一设置,不依赖各平台的 argument 机制。wloc-settings.js 的保存逻辑需要改成合并式(只更新传入的字段),这样现有的快捷指令不传 randomRadius 时不会把已设的值冲掉。

  3. 默认值建议改为 0(opt-in) 默认开启 30m 扰动会让不知情的用户困惑,建议默认关闭,想用的用户在选点页面手动开启。

  4. PR 只提交了 dist/ 构建产物 src/ 下的源码改动没有包含在 diff 里,无法审查实际逻辑。请补充 src/ 的改动。

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