谁会遇到 :负责把上游开源引擎的更新并进我们产品的人(agent),间接是 owner。遇到什么 :每天自动跑的「同步上游」任务从 7 月 22 日起天天失败,至今没有任何人收到通知;9 月初上游是靠人手工追平的,自动任务仍在每天报错。为什么是问题 :一个天天失败、没人看的自动任务等于没有;而且哪天它被修好真正跑通,会走到一段曾经会悄悄删掉我们自有改动的步骤,必须先确认那道保护还在。不做会怎样 :不影响用户,上游更新只能继续靠人想起来手工并。
Refs #976
现象
sync-upstream.yml 的 cron(0 6 * * *)每天照常起 run,但自 2026-07-22 起连续失败在 merge 步 ,从未走到 apply_alpha_frontend_delta。最近一次(run 31778673158)的失败原文:
CONFLICT (content): Merge conflict in packages/desktop/src/main/index.ts
##[error]Unexpected merge conflicts — the only-add discipline was broken:
packages/desktop/src/main/index.ts
##[error]Process completed with exit code 1.
gh run list --workflow=sync-upstream.yml --limit 60 ⇒ 21 success / 39 failure,最后一次 success = 2026-07-22T08:06:35Z。
后果(两层)
上游引擎已 20+ 天没进 alpha。 (2026-09-16 订正:此句已过时 —— alpha-code#1248 已于 2026-09-07 手工追平上游)
它同时是 #976 那条数据丢失路径的临时保险丝 :sync 的还原步(rm -rf packages/app packages/ui → checkout $PIN -- → git apply SOT 补丁)会静默删掉补丁里没有的改动;今天没出事,只是因为这个 job 根本没跑到那一步。修好它,那条风险立刻转正 —— 所以两票要互相 ref。[REQ-125][CODE] packages/{app,ui} 的非测试源码改动没有任何闸门校验它已重生进 SOT 补丁 #976 的闸门(PR fix(gates): assert packages/{app,ui} == pinned upstream + SOT patch (#976) #993 )已把「树与补丁不一致」变成合并前就红,但它守的是未来的提交 ,不解决这条 sync 本身。
处置
解掉 packages/desktop/src/main/index.ts 的冲突(那正是 only-add 纪律要求的人工动作),让 sync 恢复;恢复前先确认 bash scripts/assert-frontend-patch-roundtrip.sh 在 alpha 上是绿的。
P1。
谁会遇到:负责把上游开源引擎的更新并进我们产品的人(agent),间接是 owner。遇到什么:每天自动跑的「同步上游」任务从 7 月 22 日起天天失败,至今没有任何人收到通知;9 月初上游是靠人手工追平的,自动任务仍在每天报错。为什么是问题:一个天天失败、没人看的自动任务等于没有;而且哪天它被修好真正跑通,会走到一段曾经会悄悄删掉我们自有改动的步骤,必须先确认那道保护还在。不做会怎样:不影响用户,上游更新只能继续靠人想起来手工并。
Refs #976
现象
sync-upstream.yml的 cron(0 6 * * *)每天照常起 run,但自 2026-07-22 起连续失败在 merge 步,从未走到apply_alpha_frontend_delta。最近一次(run 31778673158)的失败原文:gh run list --workflow=sync-upstream.yml --limit 60⇒ 21 success / 39 failure,最后一次 success =2026-07-22T08:06:35Z。后果(两层)
alpha-code#1248已于 2026-09-07 手工追平上游)#976那条数据丢失路径的临时保险丝:sync 的还原步(rm -rf packages/app packages/ui→checkout $PIN --→git applySOT 补丁)会静默删掉补丁里没有的改动;今天没出事,只是因为这个 job 根本没跑到那一步。修好它,那条风险立刻转正 —— 所以两票要互相 ref。[REQ-125][CODE] packages/{app,ui} 的非测试源码改动没有任何闸门校验它已重生进 SOT 补丁 #976 的闸门(PR fix(gates): assert packages/{app,ui} == pinned upstream + SOT patch (#976) #993)已把「树与补丁不一致」变成合并前就红,但它守的是未来的提交,不解决这条 sync 本身。处置
解掉
packages/desktop/src/main/index.ts的冲突(那正是 only-add 纪律要求的人工动作),让 sync 恢复;恢复前先确认bash scripts/assert-frontend-patch-roundtrip.sh在 alpha 上是绿的。P1。