姚章浩
517d5f862d
feat(library): 首次发布接上目标权威基线与整库空判定
目标非空又没有生效版本时,首次发布以前只能停在"权威版本未知"。现在有了
真实入口:管理员发起 baseline 作业,worker 在维护隔离下把目标整库捕获成
归档快照,再用同一套 Verify 证明目标与快照逐类一致,最后登记
production_effective(证据写明 origin=target_baseline、快照 ID、逐表行数、
目标索引映射)。不写目标内容、不清空目标、不手写版本。
同时修两处会误导人的判定:
- productionScopeEmpty 原来只数 knowledges,"文档删了但分块/Wiki/资源还在"
的目标会被当成空库;改用适配层同一份表清单与范围过滤逐表计数。
- 概览里的"测试封存候选"原来取该 scope 最新一份归档,而归档里还有生产
预备份与目标基线快照;改为只认版本登记里 kind=test_sealed 的那一份。
迁移 075 放开 kind='baseline' 并把它并入 sync/restore 的写互斥索引;
worker 重启时用同一作业 id 接管未完成的基线窗口。维护接口补 capability,
页面才能区分"未运行维护"与"维护能力没接线"。
验证:go build ./... / go vet ./... 通过;新增用例覆盖管理员校验、已有生效
版本拒绝、目标读不到时零作业零版本、候选来自登记、缺项文案指向基线入口、
capability 逐项缺失;反向自检(把候选改回按最新归档取、把文案改回旧句、
去掉管理员判断)三项均按预期变红后复原。
2026-10-29 18:16:21 +08:00
..
2026-09-30 10:54:07 +08:00
2026-10-08 15:41:13 +08:00
2026-10-27 10:42:30 +08:00
2026-10-09 13:50:23 +08:00
2026-10-09 14:12:10 +08:00
2026-10-10 16:46:39 +08:00
2026-10-12 00:10:31 +08:00
2026-10-26 18:36:11 +08:00
2026-10-14 12:59:52 +08:00
2026-10-27 10:42:30 +08:00
2026-10-27 09:56:19 +08:00
2026-09-30 10:54:07 +08:00
2026-10-28 15:11:27 +08:00
2026-10-28 19:11:37 +08:00
2026-10-29 18:16:21 +08:00
2026-10-29 18:16:21 +08:00
2026-10-29 13:01:37 +08:00
2026-10-29 13:01:37 +08:00
2026-10-29 06:55:13 +08:00
2026-10-29 07:13:18 +08:00
2026-10-29 13:01:37 +08:00
2026-10-29 13:01:37 +08:00
2026-10-28 17:53:43 +08:00
2026-10-29 18:16:21 +08:00
2026-10-28 21:52:14 +08:00
2026-10-29 06:28:29 +08:00
2026-10-29 13:01:37 +08:00
2026-10-28 21:52:14 +08:00
2026-10-29 13:01:37 +08:00
2026-10-28 21:52:14 +08:00
2026-10-29 04:45:34 +08:00
2026-10-27 12:14:19 +08:00
2026-10-27 12:14:19 +08:00
2026-10-19 14:29:49 +08:00
2026-10-08 17:26:26 +08:00
2026-10-08 15:41:13 +08:00
2026-10-08 15:41:13 +08:00
2026-10-10 15:48:30 +08:00
2026-10-19 14:29:49 +08:00
2026-10-19 14:29:49 +08:00
2026-10-17 19:02:13 +08:00
2026-10-19 14:29:49 +08:00
2026-10-19 14:29:49 +08:00
2026-10-25 12:45:31 +08:00
2026-10-19 19:01:36 +08:00
2026-10-19 19:01:36 +08:00
2026-10-20 08:18:03 +08:00
2026-10-20 08:18:03 +08:00
2026-10-19 08:49:18 +08:00
2026-10-19 19:01:36 +08:00
2026-10-18 19:10:47 +08:00
2026-10-18 19:10:47 +08:00
2026-10-18 19:10:47 +08:00
2026-10-17 19:59:33 +08:00
2026-10-18 21:50:29 +08:00
2026-10-17 09:04:19 +08:00
2026-10-17 09:04:19 +08:00
2026-10-17 09:04:19 +08:00
2026-10-25 12:45:31 +08:00
2026-10-17 11:39:38 +08:00
2026-10-17 17:36:07 +08:00
2026-10-17 17:36:07 +08:00
2026-10-17 22:37:26 +08:00
2026-10-18 21:50:29 +08:00
2026-10-18 21:50:29 +08:00
2026-10-25 12:45:31 +08:00
2026-10-25 12:45:31 +08:00
2026-10-18 15:45:09 +08:00
2026-10-18 02:00:31 +08:00
2026-10-20 08:18:03 +08:00
2026-10-18 21:50:29 +08:00
2026-10-20 05:44:02 +08:00
2026-10-26 16:03:52 +08:00
2026-10-10 15:29:31 +08:00
2026-10-08 15:41:13 +08:00
2026-10-08 15:41:13 +08:00
2026-10-29 13:01:37 +08:00
2026-10-29 18:16:21 +08:00
2026-09-30 10:54:07 +08:00
2026-10-27 10:42:30 +08:00
2026-10-27 10:42:30 +08:00
2026-10-26 17:23:27 +08:00
2026-10-26 17:22:09 +08:00
2026-10-14 12:36:32 +08:00
2026-10-14 12:36:32 +08:00
2026-10-10 12:10:46 +08:00
2026-10-10 12:10:46 +08:00
2026-09-30 10:54:07 +08:00
2026-10-10 10:55:03 +08:00
2026-09-30 10:54:07 +08:00
2026-09-30 10:54:07 +08:00
2026-10-18 18:11:49 +08:00
2026-10-18 18:11:49 +08:00