Skip to content

chore: 移植上游三个可独立应用的修复 - #31

Merged
jacob-bytes merged 1 commit into
mainfrom
chore/upstream-picks
Sep 25, 2026
Merged

jacob-bytes merged 1 commit into
mainfrom
chore/upstream-picks

Conversation

@jacob-bytes

Copy link
Copy Markdown
Collaborator

方法

拿上游 36 个提交逐个 git cherry-pick -n 试过(不提交,只看能否落地),只有三个干净。

说明一处我自己的判定缺陷:脚本把"冲突"与"改动已存在/空提交"合成了同一个"失败"标签。后者其实说明我们已经有了(比如节点分组 dc6f8bb),不该算失败。

拿到的三个

提交 内容 为什么安全
c112a0b 反代在 Cloudflare 之后时按 CF-Connecting-IP 取来源地址 只动 auth.rs 一处取址逻辑
442243f 安装脚本下载 agent 二进制限时 300 秒 只动 install.sh
f65f806 打开对话框时页面不再左移半个滚动条 只动 index.css 一条规则

共同点:都不碰我们改过的 schema,也不依赖他们的新表。

其余为何不能直接挑

上游这 36 个提交是一条链 —— 后续提交的上下文里含他们自己的祖先(分组 #51、主题设置 #50 等),所以在我们的树上必然冲突。特别是:

  • 迁移号撞了:我们 SCHEMA_VERSION=7(1..7),他们 9(1..9),5/6/7 同号不同义 → 绝不能 merge,会把 schema 搞坏
  • 冲突面 14 个文件,含 api.rs / db.rs / main.rs / Admin.tsx / App.tsx

结论:剩下值得要的(agent 上报限速 385c32f、主题包 gzip 校验 fb4c4a4、安装器那一组)需要手工移植,一个提交一个 PR。

验证

cargo test 99 通过 · cargo fmt --all --check 干净 · 改动文件仅 install.sh / agent_ws.rs / auth.rs / index.css。

用 cherry-pick -n 逐个试过上游 36 个提交,只有这三个能在我们这棵树上干净落地(其余
大多与他们自己的分组/主题设置实现纠缠,改动上下文里含他们的祖先提交,需要手工移植)。

- c112a0b 反代在 Cloudflare 之后时按 CF-Connecting-IP 取来源地址
- 442243f 安装脚本下载 agent 二进制限时 300 秒
- f65f806 打开对话框时页面不再左移半个滚动条

选它们的共同点:都不碰我们改过的 schema,也不依赖他们的新表。
@jacob-bytes
jacob-bytes merged commit 346a0e4 into main Sep 25, 2026
1 check passed
@jacob-bytes
jacob-bytes deleted the chore/upstream-picks branch September 25, 2026 05:28
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