7b8cc0384b
build / build (push) Successful in 1m19s
为什么:同步入口此前只会拒绝;授权、预备份、四类写入、验证与失败恢复都没有代码。
本轮把编排与授权实现出来,真实生产执行仍按授权闸口关闭。
- internal/libraryrelease:预备份 → 数据库/资源/索引/Wiki → 验证 → 失败恢复;
授权过期/目标不符/快照不符/参数变化在动生产前拒绝;恢复失败单独上报。
- 迁移 000067 library_release_authorizations(目标+快照+参数摘要+有效期,可撤销)。
- POST/GET /api/v1/library/authorizations 与 /{id}/revoke,仅管理员签发,5–1440 分钟。
- worker library.sync 接编排:先闸口再授权,阶段落库,只有编排成功才标成功。
- 生产目标适配器未配置时显式失败(不返回零值状态),预备份存储同。
- overview 返回授权状态,页面"生产保护与恢复"显示签发人与有效期。
- 验收矩阵区分"已实现·隔离测试通过"与"真实执行未授权"。
3.5 KiB
3.5 KiB
版本台账(可审计)
开发版本号由 scripts/version.py 从提交数推导(release_version 0.1.0 + commits_since_release),
不创建正式 tag。下表记录每个开发版本对应的完整 SHA、CI 结论与部署事实;历史失败不涂改。
CI = Gitea Actions 仓库级 runner,make verify 为唯一门禁(format / static-go / static-web / build-go /
build-web / tests-go / tests-web / contracts / version / security-secrets / security-deps / manifests-locked)。
| 版本 | 完整 SHA | 实现范围 | CI run | CI 结论 | 已部署本机 |
|---|---|---|---|---|---|
| 0.1.105 | 3dc854de4b |
阻止旧策略作业重放 | 148 | success | 曾部署(后被后续版本替换) |
| 0.1.107 | 864a1632e0 |
整库快照/冻结基线 | 148 | success | 否(版本记录门禁当时未过) |
| 0.1.108 | 045fc44 |
整库版本只读页 + 部署 | — | 未取得通过证据(run149 起连续失败) | 是 |
| 0.1.109 | 20fc40a147 |
归档用量口径 | 149–150 段 | failure(format 等) | 是 |
| 0.1.110 | c5e033dd0e |
修 R1/R2/R3 | 151 | failure | 是 |
| 0.1.111 | 910c0fcd76 |
页面发起封存 + 主机侧 agent | 152 | failure | 是 |
| 0.1.112 | bb64c32654 |
发布管理整库视图(后被用户打回 UI) | 153 | failure | 是 |
| 0.1.113 | 58d0483d44 |
按确认稿重做发布管理 UI | 154 | failure(format) | 是 |
| 0.1.114 | dc9e827656 |
整库版本/作业持久化 + 状态读接口 + 生产 fail-closed | 155 | failure(format + migrations 计数) | 是 |
| 0.1.115 | 7e1610da44 |
仅格式化四个文件 | 156 | failure(tests-go:迁移清单写死 65) | 否 |
| 0.1.116 | e3db157ba8 |
迁移清单跟随 000066 | 157 | success | 否(等父审后部署) |
| 0.1.117 | e313ae12f2 |
真实差异比对(librarydiff)+ 孤儿作业回收 + 验收矩阵/台账 | 158 | success | 否 |
| 0.1.118 | 3ad48ff32c |
版本抽屉分列测试封存/生产生效/本次预备份 | 159 | success | 否 |
| 0.1.119 | 12bb839d8a | 台账补记 | 160 | success | 否 |
| 0.1.120 | f91359f881 | 存储管理真实化:容量门禁、依赖保护、清理预览 | 161 | success | 否 |
| 0.1.121 | 本批提交(见交付报告) | 生产发布授权 + 同步/恢复编排 + worker 接线 + 页面授权状态 | 以 run 为准 | 见交付报告 | 否 |
旧记录 0.1.119 起为本台账自身补记:它只改文档,CI 结论以对应 run 为准(交付报告列出 run id 与结论), 不因"文档提交"免检。
说明
- 0.1.108–0.1.115 的 CI 事实是 failure/未取得通过证据,不因后续修复改写成绿; 这些版本当时部署到本机,属于"未过远端门禁即上线"的既成事实,本台账如实保留。
- 0.1.116(run157 success)是第一个通过完整远端门禁的开发版本,但发布管理模块本身尚未完成全量验收, 因此不作为最终候选;最终候选必须同时满足"CI 全绿 + 业务验收证据",并在部署前交父会话审查。
- 生产侧从未执行任何写入、恢复或清理;本机部署仅替换治理平台自身容器(api/worker/web), WeKnora(WKNFull-app)镜像与数据始终为原样。