hanfuit
|
b88e1a223b
|
docs:新增远程发版脚本,Release 可用一条命令发布
Gitea 的 Release 全流程走 REST API(实测可行),不用点网页:
- docs/release/publish_release.py(纯标准库,无依赖):校验 tag → 建/更新
Release → 上传附件 → 回读自检;支持 --dry-run / --draft / --prerelease /
--expect-commit / --no-asset / --insecure
- 默认先比对本地 tag 与远端 tag 指向的提交,不一致直接拒绝 —— 2026.11.05
就是 tag 落后 12 个提交,源码包是旧代码且外表看不出来
- .url 里仍是 REPLACE_WITH_YOUR_LINK 时拒绝发版(--force 可跳过)
- 附件同名先删再传,脚本可重复执行(幂等)
- docs/release/README.md 改为「一条命令发版 + 手工兜底」两套流程,附实测记录
- 根 README 发布流程、AGENTS.md 发版清单挂上脚本用法
实测:临时 tag 走完整流程 创建 201 → 上传 201 → 下载 200(内容正确)→
重复执行后只有一个同名附件 → 删除干净(release 204 / tag 已清)。
注意 Gitea 附件字段名必须是 attachment,用 file 会 500 "http: no such file"。
|
2026-11-05 19:44:14 +08:00 |
|
hanfuit
|
0897761c47
|
docs:补充 18112 进程判读与 serve.py 需重启的规则
起因:同步 gmweb 时看到 18112 被占,先判断成「启动器在跑」、又改口成「残留 pythonw
serve.py」,两次都错 —— 实际是多调用模式下的 gmweb 子进程,进程名就叫 DNF90启动器.exe。
- 排查文档新增小节「18112 上跑的可能是启动器本身」:给出命令行三态判别表
(带 serve.py 参数 = gmweb 服务 / 只有 exe 路径且占 19527 = 主进程 /
父 pid 不存在 = 遗留服务),并附 Get-CimInstance 取证命令
- 明确推论:该进程跑的是启动那一刻的 serve.py;静态文件读盘即生效,
但路由不会,症状是「页面新版、接口旧版,按钮点了没反应」
- AGENTS.md 8.3 同步补上「改 serve.py 后必须让 18112 进程重启」的部署动作
|
2026-11-05 19:38:32 +08:00 |
|
hanfuit
|
90877233fd
|
docs:AGENTS.md 补协作约定(走分支、推前先 rebase、推完要同步)
起因:别人直接推 main(cc54603),本地未同步就分叉;同时 tag 与发布包错位。
把这些变成明文规则,避免下一个人或下一个 AI 重犯。
- 8.1 推送前先 rebase(强制):git status -sb → git pull --rebase → push 固定顺序,
禁止 push 被拒后用 reset --hard,附冲突处理与真实案例
- 8.2 多人/多 AI 协作走分支:跨文件、双人同改 gmweb/ 必须走分支 + 合并请求;
单人确定改动与纯文档可直推,但仍受 8.1 约束
- 8.3 推完不等于生效:同步 Z:/90server 与桌面补丁包 → diff -rq → 重打包 → 通知重启
- 发版清单新增:打 tag 前用 git log -1 与 ls-remote 的 ^{} 双向确认指向实际发布的提交
- 当前状态记录 tag 基线:v2026.11.05 → 3b240ec(annotated),后续提交不在该 tag 内
- 不要做的事补三条:未 pull 就 push、reset --hard 覆盖、tag 错位发 Release
|
2026-11-05 19:34:32 +08:00 |
|
hanfuit
|
3b240ec176
|
docs:新增 AGENTS.md 作为 AI / 新人接续开发的入口文件
一页纸解决「接手时不知道从哪读、哪些不能碰、改完怎么验」:
- 0 组件与端口速览;1 必读顺序(踩坑记录 P-001/P-002/P-011 列为首要)+ 按改动选文档
- 2 硬规则 R1–R9:DLL 与 exe 成对、改 DLL 要补 CRC 并重编服务端、Z 盘只是部署副本、
gmweb 只能 IE11、静态 no-store、sys.executable 陷阱、不提交产物、版本号三处一致、声明与 GPL
- 3 构建命令(服务端三个 exe / 启动器单文件 / 客户端补丁 / PVF 导出)
- 4 代码地图:server.py 按功能给出行号区间,其余给模块职责
- 5 验证方法:进程端口、启动器日志、CRC verify、diff -rq,
以及本项目一直在用的「静态服务 + 无头浏览器截图/量 rect」手法,附分场景清单
- 6 发版七项清单;7 当前状态;8 提交约定;9 不要做的事
- CLAUDE.md 作为指向 AGENTS.md 的兼容入口;根 README 顶部与文档索引、docs/README 同步挂上
|
2026-11-05 17:40:13 +08:00 |
|