Skip to content

deploy 回退误判的 Tailscale 入网步骤,pre-flight SSH 加 host key 诊断 - #253

Merged
zj1123581321 merged 1 commit into
mainfrom
card/VideoTranscriptAPI-261015-diag
Oct 16, 2026
Merged

zj1123581321 merged 1 commit into
mainfrom
card/VideoTranscriptAPI-261015-diag

Conversation

@zj1123581321

Copy link
Copy Markdown
Collaborator

背景

第 13 轮(7e264917)把 run 38834509231 的 Host key verification failed. 根因判成「runner 不在 tailnet」,给 pre-flight / verify 前置了 Tailscale github-action 入网步骤。这是误判:

  • fleet runner 宿主自带 tailscaled,经宿主路由直达 n305(100.68.21.80)——runner 内不需要也不存在本地 tailscaled;
  • run 38840253574 实测该步骤必败:failed to connect to local tailscaled;
  • live-recorder 历次部署的 ship 同名步骤带 if: inputs.runner == 'hosted',runner=self 下始终跳过,tailscale/github-action 在 fleet 形态从未实跑过。

改动

  1. 回退:完整移除 7e26491 引入的两处「Connect to Tailscale」step(pre-flight + verify-busy-lock-inode,14 行含注释)。ship 的 TS_AUTHKEY secret 传递保留(ci-templates hosted 分支仍消费)。
  2. 诊断(拿 Host key verification failed. 真因:known_hosts 为空?key 不匹配?条目格式?):
    • pre-flight SSH 对账 step:SSH_OPTS 追加 -v;ssh 调用包 if !,失败路径先 dump 诊断块再 exit 1:
      • known_hosts 条目数(wc -l)
      • ssh-keygen -lf ~/.ssh/known_hosts(本地录入指纹)
      • ssh-keyscan -T 10 100.68.21.80 | ssh-keygen -lf -(远端实际指纹,与本地逐条对比即可定位空/不匹配/格式问题)
      • ls -la ~/.ssh/
    • verify job 三个 SSH step(identity / inode / rollback)SSH_OPTS 同步追加 -v;诊断块只放 pre-flight 一处,避免重复噪音。
    • 诊断输出全部为公钥指纹与文件列表,不含私钥;注释 # TEMP DIAGNOSTIC (run 38834509231 ...) 标记,根因确认后由后续轮次移除。
    • 未用 StrictHostKeyChecking=no / accept-new 弱化校验。

验收

  • grep -c "tailscale" .github/workflows/deploy.yml => 0
  • grep -c "TEMP DIAGNOSTIC" .github/workflows/deploy.yml => 1
  • uv run python -c "import yaml; yaml.safe_load(open('.github/workflows/deploy.yml')); print('ok')" => ok
  • workflow 全部 6 个 run 块 bash -n 语法通过
  • diff 13+/19-(32 行,target 40 内);零测试耦合(不触 src/、tests/、docker/**)

Fixes #249(部分:诊断手段落地,secret 值处置待诊断结论出来后由主脑定)

Task-Id: VideoTranscriptAPI-20261015-10
Dispatch-Id: dlg-20261016-022949-437fdb

第 13 轮根因误判:fleet runner 宿主自带 tailscaled、经宿主路由直达 n305,
github-action 在 runner 内找本地 tailscaled 必败(run 38840253574 实测);
live-recorder ship 同名步骤带 if: runner=='hosted' 在 self 下从未实跑。
回退 7e26491 的 14 行。run 38834509231 Host key verification failed 真因
另查:pre-flight SSH 对账加 -v + 失败路径 dump known_hosts/远端指纹
(TEMP DIAGNOSTIC,根因确认后移除);verify 三个 SSH step 同步加 -v。

Dispatch-Id: dlg-20261016-022949-437fdb
Task-Id: VideoTranscriptAPI-20261015-10
Fixes-Issue: #249
Agent-Executor: glm-pi
Agent-Model: glm-5.3-flash
Agent-Effort: high
@github-actions

Copy link
Copy Markdown

Required Gate v2 — 状态面板

当前状态:pass · 可合并

当前裁决:code_pass / primary_pass

PR 累计主审轮(影子):1/5 · collecting

历史可能不完整:1 个制品处理失败:URLError;1 个历史重建预算耗尽

Gate 历史(v1;来源为持久化 gate_terminal 制品)

Run Attempt Head 状态 PR 累计主审轮(影子) 收件人动作
38841560336 1 42b5d46 pass 1/5 · collecting 可合并

历史行按 run_id + run_attempt 去重并只增不删;删除本评论后可由 gate_terminal 制品重建。

@zj1123581321
zj1123581321 merged commit 8f429b3 into main Oct 16, 2026
13 checks passed
@zj1123581321
zj1123581321 deleted the card/VideoTranscriptAPI-261015-diag branch October 16, 2026 03:00
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.

服务侧部署忙锁:上线前自动部署可打断在飞转写任务(deferred gate finding reliability-deploy-during-active-task)

1 participant