Skip to content

Commit e8d9fdc

Browse files
committed
docs(archive): archive 2026-08-24
三轮归档(v0.13.8 画布交付 + 新增代码审查): - v0.13.8 设计规格 git mv 入今日归档夹([ ] 已归档,活跃区链接同步) - 技术债滚动:昨日 6 笔 carried 保持(本批未触及对应模块;clippy 存量复核 零新增);TD-2026-08-24-A 行数刷新 703→712(canvas 注册 +7)+ 拆分计划 v0.13.7 未兑现顺延登记;B/C 保持 open;三轮即修 3 项入已偿表(6464abd) - 今日 README 归档清单 + 债务摘要;根索引加三方列
1 parent 6464abd commit e8d9fdc

6 files changed

Lines changed: 24 additions & 12 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55

66
## [Unreleased] - 2026-08-24
77

8-
### v0.13.8 知识体系画布(React Flow 节点式无限画布,2026-08-24 交付,详见 [设计规格](docs/superpowers/specs/2026-08-24-v0.13.8-knowledge-canvas-design.md) 与 [v0.13 系列](docs/versions/v0.13.md#v0138-交付记录2026-08-24))
8+
### v0.13.8 知识体系画布(React Flow 节点式无限画布,2026-08-24 交付,详见 [设计规格](docs/archive/2026-08-24/2026-08-24-v0.13.8-knowledge-canvas-design.md)([ ] 已归档)与 [v0.13 系列](docs/versions/v0.13.md#v0138-交付记录2026-08-24))
99

1010
- **画布=手动画布非自动图(REQ-029 P3 维持)**:节点位置由用户拖拽决定;首次打开无位置节点以辐射布局初始化(BFS 算法,只算一次),之后「自动排列」按钮显式触发才整体重排覆盖;连线只反映既有 parent_id(用户不能画线即建引用,§二.4/§九)
1111
- **数据层(M1)**:knowledge_nodes 补 `canvas_x/canvas_y`(REAL,NULL=未布局;新库建表内联 + 旧库 ensure_column 零破坏);新表 `knowledge_canvas_states`(system_id 1:1:视口 x/y/zoom,upsert 覆盖,切回画布恢复);概念/模型无画布列——浮动参照,每次打开重排且置 `draggable:false`(拖了不持久,禁拖防困惑)
1212
- **4 命令(M1)**:`update_node_canvas_position`(拖拽落点防抖保存)/`batch_initialize_canvas_positions`(辐射布局首批 + 自动排列覆盖;全量预校验——跨体系/重复/缺失整体拒绝,零部分写入,事务原子)/`save_canvas_viewport`/`get_canvas_viewport`(**规格列 3 条,复盘补第 4 条**——§4.5 视口恢复需要读路径,第 4 条为读写闭环补全,差异登记见 v0.13.8 交付记录);校验:id>0、坐标有限值(拒 NaN/Infinity)、zoom (0,10]
1313
- **辐射布局纯函数(M2,TDD 8 golden)**:`layoutRadial`——核心问题虚拟圆心(coreQuestion 渲染不可拖/不可选核心卡)/无核心时首根圆心;ring1=220px 每环+200px;环≥2 子节点父角度扇区(spread=60°/(子数+1));碰撞沿角度+50px 最多 2 次后下一环;孤儿/概念/模型 golden angle 确定性兜底——零随机零 React,可复现可断言
1414
- **前端(M2)**:`canvasElements` 纯转换(`q/c/m` 前缀 key 防三表 id 冲突、parent_id→smoothstep 边、links→概念/模型徽标+引用计数与树视图同口径);三自定义节点(§七 缩放分级:>0.7 全文/0.4-0.7 仅标题/<0.4 缩略卡);`KnowledgeCanvasView`(MiniMap/Controls/适配视图/自动排列工具栏;拖拽与视口防抖保存;切回 setViewport 恢复、未存 fitView 兜底;首次缺位批量初始化);KnowledgePage「🗺 画布」标签 + 树视图「🎨 画布」浮钮双入口(§4.5)——树常驻 display 切换(折叠展开保持),画布激活才挂载(首次切换语义精确;视口恢复走持久化)
1515
- **只展示+拖拽(§九 全守)**:画布上不新建/编辑节点、不手动连线、无颜色/标签自定义、无导出图片、无框选批量移动、无移动端、无 AI 建议布局
16-
- 验证:`cargo test --test app_lib_tests knowledge` **151/151 全绿**(本版新增 11:命令 8 + 数据层 3);全量 1721 passed / 3 failed(预存基线:ai_client 默认 Provider 断言旧 SiliconFlow、note_filter 两条黄金用例,与本版无关)/ 6 ignored;clippy 新文件零警告;`tsc --noEmit` 零错误;vitest **34 文件 188 用例全绿**(新增 layoutRadial 8 / canvasElements 7 / CanvasNodes 6 / KnowledgeCanvasView 9 / KnowledgePage 画布入口 2);vite build 通过;真机走查待 REQ-146 批执行
16+
- 验证:`cargo test --test app_lib_tests knowledge` **151/151 全绿**(本版新增 11:命令 8 + 数据层 3);全量 1721 passed / 3 failed(预存基线:ai_client 默认 Provider 断言旧 SiliconFlow、note_filter 两条黄金用例,与本版无关)/ 6 ignored;clippy 新文件零警告;`tsc --noEmit` 零错误;vitest **34 文件 189 用例全绿**(新增 layoutRadial 8 / canvasElements 7 / CanvasNodes 6 / KnowledgeCanvasView 10 / KnowledgePage 画布入口 2);vite build 通过;真机走查待 REQ-146 批执行;**审查轮**:新增代码七维审查高×1(重挂载拖拽位置被辐射重算覆盖)/ 中×1(框选批量移动未持久化)/ 低×1(测试死分支)全部即修 6464abd + 回归测试
1717

1818
### v0.13.7 知识体系上手路径(2026-08-24 交付,详见 [v0.13 系列](docs/versions/v0.13.md) 与 [设计规格](docs/archive/2026-08-24/2026-08-24-v0.13.7-knowledge-system-onboarding-design.md)([ ] 已归档))
1919

docs/superpowers/specs/2026-08-24-v0.13.8-knowledge-canvas-design.md renamed to docs/archive/2026-08-24/2026-08-24-v0.13.8-knowledge-canvas-design.md

File renamed without changes.

‎docs/archive/2026-08-24/README.md‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,24 @@
22

33
> 常规归档(按 SOP 6 步):昨日(2026-08-23)清单已核对滚动;本日执行 v0.13.6 交付后的新增代码审查(三段并行 + 跨切面)与修复即修批,并归档 v0.13.6 设计规格。
44
> **二轮(v0.13.7 交付)**:v0.13.7 全量 13 任务完成 + 审查 Critical 修复合入后,归档 v0.13.7 设计规格与实施计划。
5+
> **三轮(v0.13.8 画布交付)**:v0.13.8 全量 M1→M3 交付(4 提交:数据层与命令 / 前端 / 文档同步)+ 新增代码七维审查(高×1/中×1/低×1 即修 6464abd),归档 v0.13.8 设计规格。
56
67
## 归档内容
78

89
- 实施文档:[2026-08-23-v0.13.6-video-profile-classification-refinement-design.md](./2026-08-23-v0.13.6-video-profile-classification-refinement-design.md)(`[ ] 已归档`,标注于 [CHANGELOG](../../CHANGELOG.md) 与 [v0.13 系列文档](../../versions/v0.13.md))——v0.13.6 已全量实施交付(M1 修复批 + M2 形态展平 + M3 领域两层 + M4 检测链),生命周期终结
910
- 设计规格:[2026-08-24-v0.13.7-knowledge-system-onboarding-design.md](./2026-08-24-v0.13.7-knowledge-system-onboarding-design.md)(`[ ] 已归档`,标注于 [CHANGELOG](../../CHANGELOG.md) 与 [v0.13 系列文档](../../versions/v0.13.md))——v0.13.7 全量 13 任务已代码交付(触点①②③ + 示例体系 + 具象化 + 纪律裁决 + 跨页跳转),生命周期终结
1011
- 实施计划:[2026-08-24-v0.13.7-knowledge-system-onboarding.md](./2026-08-24-v0.13.7-knowledge-system-onboarding.md)(`[ ] 已归档`)——全部 13 任务执行完成 + 审查 Critical 修复合入,计划已闭环
12+
- 设计规格:[2026-08-24-v0.13.8-knowledge-canvas-design.md](./2026-08-24-v0.13.8-knowledge-canvas-design.md)(`[ ] 已归档`,标注于 [CHANGELOG](../../CHANGELOG.md) 与 [v0.13 系列文档](../../versions/v0.13.md))——v0.13.8 全量 M1→M3 已代码交付(数据层 canvas_x/y + 视口表 / 4 命令 / 辐射布局 / 画布视图与双入口),生命周期终结
1113

1214
> 判定依据(archive README):已执行/已实施的设计 spec → 终态归档;v0.13.1~5 规格仍被激活中的 v0.13.2~5(立项未实施)文档引用或系列未发布——持续活跃,排除本次归档。
1315
1416
## 技术债摘要
1517

16-
- 未偿 7 笔(6 carried + 1 open):TD-040 / TD-2026-08-19-D/F/G(carried 4 笔)+ TD-2026-08-21-C(carried)+ TD-2026-08-22-A(clippy 存量,本批复核零新增仍 carried)+ **TD-2026-08-24-A(open:lib.rs 703 / live_session_frame.rs 683 超 600 硬限预存债务,已登记豁免并承接 v0.13.7 拆分计划)**;详见 [tech-debt.md](./tech-debt.md)
17-
- 本日二轮(v0.13.7 审查)新登记:**TD-2026-08-24-B(open:sysBrief 仅查 groupLinks[0] 体系,多体系组 stale 判定不全)+ TD-2026-08-24-C(open:KnowledgePage refreshGlobal={0} 未接线死参数)**
18-
- 本日即修:新增代码审查(七维)——高×2(领域记忆兜底死代码 / ESC 出口刷新竞态重演 P0)、中×6(烘焙双表 / 多分区找 coarse / 直播语义 legacy 双轨 / 单字种子误命中 / 细目空数组语义 / 领域自动回退报错)、低×8 全部即修(提交 8464f99,共 16 项)
18+
- 未偿 9 笔(6 carried + 3 open):TD-040 / TD-2026-08-19-D/F/G(carried 4 笔)+ TD-2026-08-21-C(carried)+ TD-2026-08-22-A(clippy 存量,三轮复核本批零新增仍 carried)+ **TD-2026-08-24-A(open:lib.rs 712 / live_session_frame.rs 683 超 600 硬限预存债务,拆分计划 v0.13.7 未兑现——顺延下一窗口)** + TD-2026-08-24-B/C(open:v0.13.7 审查登记,三轮未触及);详见 [tech-debt.md](./tech-debt.md)
19+
- 三轮即修(v0.13.8 审查):高×1(重挂载拖拽位置被辐射重算覆盖——onPositionsSaved 父页合并 + 回归测试)/ 中×1(框选批量移动未持久化——elementsSelectable=false)/ 低×1(测试死分支清理),提交 6464abd;观察 3 项登记不立债(浮点尾差 / update 无体系校验以规范为准 / 双枚举保留)
20+
- 验证:cargo knowledge 151/151、全量 1721 passed(3 预存基线失败)/ 6 ignored;clippy 新文件零警告;tsc 零错误;vitest 34 文件 189 用例全绿;vite build 通过
1921

2022
## 备注
2123

2224
- 本日归档完成后即最新归档,下个归档日需先整理本日清单
23-
- 审查观察项 12 笔(不立债)登记于 tech-debt.md 观察区:单字种子守卫已修复(其延伸项)、seed_words 每次调用分配、preheat 静默 vs remember 报错(设计选择)、前端静态选项双写(既有模式)、a21af26 混合修复提交(原子性观察)、docs-check 预存 15 处断链(治理轮)
25+
- 审查观察项 12 笔(不立债)登记于 tech-debt.md 观察区:单字种子守卫已修复(其延伸项)、seed_words 每次调用分配、preheat 静默 vs remember 报错(设计选择)、前端静态选项双写(既有模式)、a21af26 混合修复提交(原子性观察)、docs-check 预存 15 处断链(治理轮)+ 三轮 3 项(浮点尾差 / update 无体系校验 / 双枚举)

‎docs/archive/2026-08-24/tech-debt.md‎

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
> 本清单为当前唯一权威债务清单,归档日滚动更新;旧归档清单仅历史追溯。
44
> 来源:2026-08-24(v0.13.6 交付后新增代码审查——三段并行 agent + 跨切面;高×2/中×6/低×8 **16 项**全部即修 8464f99;审前规格自查修订 81a83a5 + 修复批 a21af26/b043970/400fbe4/4dfa2af)
55
> **二轮(v0.13.7 交付后审查)**:七维审查新增登记 2 笔 open(TD-2026-08-24-B/C),规格与计划归档。
6+
> **三轮(v0.13.8 画布交付后审查)**:七维审查——接入/牵连/性能/冗余/规范/安全全部通过;逻辑性高×1/中×1/低×1 **全部即修 6464abd**(重挂载拖拽位置覆盖 / 框选批量移动未持久化 / 测试死分支)+ 回归测试 1 项(189 用例全绿);v0.13.8 设计规格归档。
67
78
## 未偿债务
89

@@ -13,8 +14,8 @@
1314
| TD-2026-08-19-F | detect_pause_icon 暗底+中央亮内容可能误报暂停 | 无意 | P3 | 2026-08-19 | carried |
1415
| TD-2026-08-19-G | db_ocr_search 500 会话静默截断 + 图路径不校验存在性 | 无意 | P2 | 2026-08-19 | carried |
1516
| TD-2026-08-21-C | db_sessions/db_ai_tasks 的 lock().expect 未迁移 with_conn | 无意 | P3 | 2026-08-21 | carried |
16-
| TD-2026-08-22-A | clippy --all-targets -D warnings 未绿(存量 lib 5 项 + tests 类 ~14 项;**v0.13.6 交付批 + 审查批均零新增**,经本日复核) | 无意 | P3 | 2026-08-22 | carried |
17-
TD-2026-08-24-A | lib.rs(703 行)/ live_session_frame.rs(683 行)超 600 硬限——预存债务(HEAD 即 684/669,v0.12.x~v0.13.x 增长),已登记行数豁免 + 承接拆分计划(v0.13.7:command 注册拆 app_commands.rs / 帧消费拆 live_frame_consume.rs) | 有意 | P1 | 2026-08-24 | open |
17+
| TD-2026-08-22-A | clippy --all-targets -D warnings 未绿(存量 lib 5 项 + tests 类 ~14 项;**v0.13.6/7/8 交付批 + 审查批均零新增**,三轮复核本批新文件零警告) | 无意 | P3 | 2026-08-22 | carried |
18+
| TD-2026-08-24-A | lib.rs(712 行)/ live_session_frame.rs(683 行)超 600 硬限——预存债务(HEAD 即 684/669,v0.12.x~v0.13.x 增长),已登记行数豁免 + 承接拆分计划(command 注册拆 app_commands.rs / 帧消费拆 live_frame_consume.rs;**拆分计划 v0.13.7 未兑现——顺延下一窗口**;三轮审查 +7 行注册) | 有意 | P1 | 2026-08-24 | open |
1819
| TD-2026-08-24-B | RouteInfoPopover sysBrief 仅查 groupLinks[0] 体系——多体系组其余体系的概念失效不提示(触点①允许多徽标,此处功能缺口) | 无意 | P2 | 2026-08-24 | open |
1920
| TD-2026-08-24-C | KnowledgePage KnowledgeSampleView refreshGlobal={0} 恒传死参数——checkGlobal 只在挂载执行,参数承诺的"全局创建完成后触发"从未兑现 | 无意 | P3 | 2026-08-24 | open |
2021

@@ -31,6 +32,9 @@
3132
| 审查 M5 | update_live_profile `Some([])` 与 None 语义不一致(空数组误报"需与 domain 同传")——空数组统一为无细目 | 8464f99 |
3233
| 审查 M6 | LiveProfileStrip"领域自动"回退全空触发"至少需一项"误报且还原不生效——空串 sentinel 清除语义(前后端协议级) | 8464f99 |
3334
| 审查 L1-8 | 挂名即修项:领域自动清空快照一致性(live_session_frame)/ 至少一项校验计入 fine / changeDomain 独立 try(热词失败不阻断记忆)/ chips fine_ids 与 fineSel 同步 / onProfileChange ref(闭包陈旧性)/ ALL_FORMS 自 FORM_LABELS 派生(单源)/ 测试断言健壮性(10/20 项显式断言 + ESC 用例)/ 注释过期(15→20/394→590/confidence 口径)与行数豁免登记刷新 | 8464f99 |
35+
| 审查 v0.13.8-高 | 画布拖拽/批量初始化持久化后 props 陈旧——树↔画布往返重挂载时辐射布局重算覆盖已拖走位置(违反 §4.4"位置只由用户决定")——onPositionsSaved 回传父页 applyCanvasPositions 合并 + 重挂载回归测试 | 6464abd |
36+
| 审查 v0.13.8-中 | 画布 elementsSelectable 默认开启——shift 框选 + 多节点拖拽仅主节点持久化,其余节点视觉位移回弹不一致——elementsSelectable=false + selectionKeyCode=null(§九 不暴露框选批量移动) | 6464abd |
37+
| 审查 v0.13.8-低 | KnowledgePage.test withSystemMock 画布命令分支死代码(画布视图已 mock,分支不可达)——清理 | 6464abd |
3438

3539
## 审查观察项(登记不立债)
3640

@@ -41,13 +45,17 @@
4145
| 观察 v0.13.6-3 | 前端 DOMAIN_OPTIONS/FORM_LABELS/KIND_TO_* 静态双写 Rust 表(漂移风险;84 项细目已走 list_domain_fine 单一数据源,ALL_FORMS 已派生自 FORM_LABELS) | 保持(既有模式:后端契约测试锚定;若再增类统一为命令拉取) |
4246
| 观察 v0.13.6-4 | a21af26 提交混合两处修复(knowledge 契约 + notes 刷新)——违反原子提交纪律 | 保持(本地未推送,历史重编收益低;后续拆清) |
4347
| 观察 v0.13.6-5 | docs-check 预存 15 处失效链接(v0.13.4/5 规格相对路径笔误 + v0.10.1/v0.12.0/v0.12.4 假阳性)——非本批引入 | 后续 docs-check 治理轮(与观察 v0.12.2-6 合并) |
48+
| 观察 v0.13.8-1 | 辐射初始位置带浮点尾差(cos(-90°)≈6e-17 → x≈1e-14)——RF 双精度渲染不可感知(<1/1000px),测试已取整断言;如将来做 DB 导出/比较再在 toTopLeft 取整 2 位 | 保持(低价值;拖拽即覆盖) |
49+
| 观察 v0.13.8-2 | update_node_canvas_position 无体系归属校验(契约按规格仅 nodeId+坐标;节点存在性已校验;本地应用伪造 IPC 才可跨体系写画布列,影响仅为位置无内容) | 保持(以规范为准;后续该层扩面时统一加 system 上下文) |
50+
| 观察 v0.13.8-3 | CanvasEntityKind(树实体语义)与 CanvasSelectKind(选中语义)双枚举并存——避免 "question→node" 语义在转换层被混淆;合并需改 6 处调用点 | 保持(职责不同;若后续再增实体再复盘合并) |
4451

4552
## 验证记录
4653

4754
- Rust:`cargo test --test app_lib_tests video_profile` **74 通过 / 0 失败**(新增:细目表 6 + 映射表 7 + 记忆 2 + 矩阵 4 + 审查回归 3——烘焙迁移/多分区 coarse/单字种子守卫×2);`knowledge` 140 通过;clippy --tests 本批代码**零警告**(仅预存 render_depth_block 等)
4855
- 前端:`tsc --noEmit` 零错误;vitest 24 文件 **133 通过**(新增 ESC flush 用例 1);vite build 通过
56+
- **三轮(v0.13.8 审查)**:`cargo test --test app_lib_tests knowledge` **151/151**(画布 11 新增);全量 1721 passed / 3 failed(预存基线 ai_client/note_filter×2)/ 6 ignored;clippy 新文件零警告;`tsc --noEmit` 零错误;vitest 34 文件 **189 通过**(layoutRadial 8 + canvasElements 7 + CanvasNodes 6 + KnowledgeCanvasView 10 + 页面入口 2);vite build 通过
4957

5058
## 关联
5159

52-
- 版本与需求:[v0.13 系列文档](../../versions/v0.13.md)(v0.13.6 行)
53-
- 规格:[v0.13.6 设计规格(已归档 [ ] 已归档)](./2026-08-23-v0.13.6-video-profile-classification-refinement-design.md)
60+
- 版本与需求:[v0.13 系列文档](../../versions/v0.13.md)(v0.13.6/7/8 行)
61+
- 规格:[v0.13.6 设计规格(已归档 [ ] 已归档)](./2026-08-23-v0.13.6-video-profile-classification-refinement-design.md) / [v0.13.7 设计规格(已归档 [ ] 已归档)](./2026-08-24-v0.13.7-knowledge-system-onboarding-design.md) / [v0.13.8 设计规格(已归档 [ ] 已归档)](./2026-08-24-v0.13.8-knowledge-canvas-design.md)

‎docs/archive/README.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,3 +98,4 @@ docs/archive/
9898
| 2026-08-23(六轮) | v0.12.7 会话内部 ID 不外显(587720e,9 处「会话 #N」移除,保留 display_no)+ v0.12.8 笔记列表级批量删除(4ef7e85,行内勾选+底部批量栏,与会话管理台同操作逻辑)+ 新增代码七维审查:接入/牵连/性能/冗余/安全通过,逻辑性 P2×1(勾选未随视图裁剪)+ 规范 P3×2(注释版本标签/豁免登记)即修(c66df9c,含 NoteListView 5 项单测);无文档归档(versions/ 不归档类 + 无新 spec/ADR);候选 spec 判读登记(v0.11 系列/画面要点序号/ai-platform——部分实施或待验收,保持活跃) | TD-040 + TD-D/F/G/C + TD-2026-08-22-A(carried 6 笔),共 6 笔 + 观察 v0.12.7-1、v0.12.8-1 |
9999
| 2026-08-24 | v0.13.6 交付后新增代码审查(三段并行 agent:Rust 纯函数/数据层 + Rust 命令/系统层 + 前端;跨切面:安全/规范/提交/性能):高×2/中×4/低×8 全部即修(8464f99——含领域记忆兜底死代码、ESC 刷新竞态重演 P0、烘焙双表迁移、多分区 coarse 查找、直播语义 legacy 双轨、单字 CJK 种子守卫、领域自动回退 sentinel、细目空数组语义、chips fine_ids 同步、行数豁免登记刷新)+ v0.13.6 设计规格归档([ ] 已归档,v0.13.1~5 规格保持活跃——系列未发布/被激活文档引用);Rust 74/0 + knowledge 140、vitest 133、clippy 本批零新增警告 | TD-040 + TD-D/F/G/C + TD-2026-08-22-A(carried 6 笔)+ **TD-2026-08-24-A(open:lib.rs/live_session_frame.rs 超 600 硬限,v0.13.7 拆分计划)**,共 7 笔 |
100100
| 2026-08-24(二轮) | v0.13.7 交付(15 提交:触点①②③ + 示例体系 + 具象化 + 纪律裁决 + 跨页跳转 + 文档同步 + 审查 Critical 修复)+ 新增代码七维审查:接入/牵连/性能/冗余/规范/安全全部通过,逻辑性 2 项登记 open(多体系组 stale 判定不全 / refreshGlobal 未接线);vitest 30 文件 156 用例全绿 + tsc 零错误 + vite build 通过;v0.13.7 设计规格与实施计划归档([ ] 已归档) | TD-2026-08-24-B(open P2)+ TD-2026-08-24-C(open P3)+ 继承一轮 7 笔,共 9 笔 |
101+
| 2026-08-24(三轮) | v0.13.8 画布交付(4 提交:数据层 canvas_x/y+视口表 / 4 命令 / 辐射布局+画布视图+双入口 / 文档同步)+ 新增代码七维审查:接入/牵连/性能/冗余/规范/安全全部通过,逻辑性高×1(重挂载拖拽位置被辐射重算覆盖)/ 中×1(框选批量移动未持久化)/ 低×1(测试死分支)即修 6464abd + 回归测试;cargo knowledge 151/151 + vitest 34 文件 189 用例全绿 + tsc 零错误;v0.13.8 设计规格归档([ ] 已归档) | TD-2026-08-24-A(open,拆分计划顺延)+ TD-24-B/C(open)+ 继承 6 carried,共 9 笔 |

0 commit comments

Comments
 (0)