Commit Graph
3 Commits
Author SHA1 Message Date
DKChan 3c1e3ddf07 工程+文档(CI 合回零等待): 轮询等待件与本地回执判定退役,改按需现查 run 终局态
- 缘由(实证): ci_watch.sh 以「commit status 离开 pending」作终局判据——run 37 开跑 36 秒即写
  verdict=red,该 run 三分半后 conclusion=success(现查 API),同 commit 先红后绿;远端时代 16 条
  红回执所引 run 现查 15 条真红 1 条假红。另两条稳定假红源: 超时档(零触发批远端不建任务——现查
  90abdd4a 的 statuses=null,只要挂了轮询必等满 3000s 写红;runner 排队同形)与多路轮询重复覆写
  (fb27dc2f 三条红挤在 15 秒内)。修判据不如撤等待: 判据移到开工前一次现查,竞态与超时两类假红
  结构性消失。
- tools/ci_check.sh(新): 单次读 run 自身 status/conclusion,未 completed 与零触发一律呈报未落定
  不写红;红态列失败 job 与失败步;只呈报不落盘。退出码 0绿/1红/2未落定/3参数与令牌。
  孤立验证四形态: fb27dc2f→红(run 51 conclusion=failure) / 90abdd4a→未落定(零触发) /
  f1840fbc→未落定(run 55 queued) / 39acdcaa→绿(run 48 success)。
- tools/hooks/post-merge: 只推送不再挂后台轮询;push_failed 判定不再落 ci-status.json,改大声呈报。
- 删 tools/ci_watch.sh 与 .zcode/hooks/ci-status-banner.sh(不入 git 面,主区直改)并从 .zcode/config.json
  注销——该横幅在当前 harness 只挂 worktree-guard 的配置下本就不投递(本会话 ci-status 为 red 全程零横幅)。
- 口径同步: AGENTS.md 运行与验证首条、process-conventions §1 第3条(回执等待纪律→合回零等待纪律)与
  第4条执法分层②、§8 第8条、test-conventions §3 与 §8.7 审计证据行(中/低档证据由落盘回执改为
  可复核的现查读数=commit+run号+conclusion)、run_all_gates.sh 头注与 .gates gitignore 模板句、
  迭代技能两镜像三处(入 git 面外另记 .zcode/.qoder)。
- 待办清单条目「ci_watch 中间态误写终局红回执」整条删除(以退役方式了结,非按原判据修复)。
- 在案真红一条随本批呈报未处理: run 51(迭代 51 合回 fb27dc2f) 失败步=导入缓存刷新+跑闸,
  归因待取 job 日志——红未修不开新批的门按用户发令特批越过。
2026-11-04 06:14:44 +08:00
DKChan 0019ef1514 工程(ci远端化·阶段四五): 远端CI触发链落地——新增.gitea/workflows/ci.yml(push触发,runs-on=ci-mac,域分流经tools/ci/domain_route.sh:游戏码批=全量/文档批=--docs秒级/纯闸件批=skip,乙案语义); ci_watch.sh整体重写为远端模式(轮询Gitea commit-status API,python urllib,令牌GITEA_TOKEN或git凭据库,回执合同不变:ci-status.json+ci-history.jsonl,红态red_gates=失败job名单); post-merge钩子改推送触发(push失败落push_failed判定防静默)+后台挂ci_watch; 退役本地CI件(ci_runner.sh+post-commit钩子,git rm); 新增tools/ci/mac_setup.sh自举件(专用账户ci-runner随机密码不可登录/Godot4.7.2+gdstyle v0.4.0 darwin装/usr/local/bin+Pillow+LaunchDaemon系统级常驻,镜像路线退役后环境配方的仓库化); 依据=用户裁CI迁远端Mac host模式 2026-11-03 03:15:03 +08:00
DKChan c91bbdddee 工程(本地CI化改造批·验证模型换代): 合回后跑测试制落地——①机件四件: tools/ci_runner.sh(merge=合回验证点对master尖无条件全量/commit=仅CI红态追绿;锁mkdir+在跑尖端判定+rerun标记=跑完补跑coalesce连发触发只测最新尖端;起手--editor --quit刷类名缓存接管原合并后零复跑动作;读闸回执写ci-status.json+ci-history.jsonl红闸与关键日志行在案)+hooks/post-merge(主工作区merge落地即触发,worktree内合并不触发)+hooks/post-commit(红态追绿触发)+pre-commit换代(撤代码面拦截=主区直改全面放开,合并收尾提交MERGE_HEAD豁免,保留秒级文档闸);②guard瘦身: 合回闸回执六况校验与主区代码面Edit/commit拦截退役,留--no-verify拦截+iter数卡校验+规则闸;③run_all_gates.sh头注换代(强制验证点=合回后CI全量,手动档降开发期)+.gates/.gitignore收CI产物;④规约四份换代: AGENTS(运行验证首条/规范导航行/车道铁律/交付验收红线/改动四类)、process-conventions(§1四条重写=主区直改车道+合回后CI+worktree降为大批约定+执法三层,§3第8/9条=CI验证载体+重跑语义「同一份字节禁止第二次人手跑」)、test-conventions §4(开发期窄测+合回CI+追绿)、iter技能五处(闸域/T0/闸序列/总收口/坑速查);⑤待办条目登记。设计讨论会话内闭合零待裁点,用户已发令;收口=迭代44合回CI首跑 2026-10-30 16:48:00 +08:00