Wave 8: tech-debt audits, core unit tests, CLI pipe input (W11.1-W11.7)
- W11.1 context_plugin audit (architect-huang): 3 findings on ABI exception safety, strdup null checks, dead g_max_tokens variable. Rating: B. - W11.2 config audit (engineer-chen): identified 74-line TOML parser duplication between config_plugin and config_store, dual-store data isolation, dangling c_str() risk. Rating: C. - W11.3 event_bus + service_registry unit tests (qa-liu): 12 cases total, ctest coverage 2 -> 4 targets, 100% pass. - W11.4 CLI stdin pipe mode (engineer-zhao): isatty detection, single-shot inference path with exit codes 0/1/2/3. - W11.6 scripts/refresh_status.py (engineer-li): 431-line generator that scans 16 profile.md + 5 group.md to regenerate STATUS.md. - W11.7 destructive testing (qa-xu): 10 input scenarios PASS, found bin copy mismatch (BUG-1) plus 3 minor UX bugs for follow-up. Verified: cmake build 0 error, ctest 4/4 pass. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -21,14 +21,16 @@ performance_log:
|
||||
event: "入职 dstalk 团队"
|
||||
rating: ongoing
|
||||
- date: 2026-05-27
|
||||
event: "W9.8 修复 plugin_loader initialize_all() 首插件失败即终止缺陷"
|
||||
event: "W11.1 审计 context_plugin.cpp (289行,零Wave覆盖)"
|
||||
detail: |
|
||||
将 initialize_all() 从 fail-fast 改为 fail-continue:
|
||||
- 单插件 init 失败不再返回 -1,而是 log error + 标记失败 + 继续初始化其他插件
|
||||
- 依赖了 failed 插件的插件自动跳过,log warning
|
||||
- 拓扑序不变(Kahn 算法未修改)
|
||||
- 返回值语义: 0=全部成功, >0=失败插件数, <0=严重错误(循环依赖/host_api null)
|
||||
- 编译 0 error, smoke test 100% pass
|
||||
context_plugin 首次审计, 聚焦跨 DLL 堆合规 / ABI 契约 / 内存泄漏 / 并发安全:
|
||||
- 堆纪律: 完全合规 (0 处裸 malloc/free/strdup/new/delete), 无需迁移。所有跨边界分配使用 host->alloc/strdup。
|
||||
- ABI: 基本合规, 但违反 §5.3 (trim_impl 内 std::vector/std::string 可抛异常穿越 C ABI 边界→std::terminate)
|
||||
- 内存: 正常路径干净; OOM 路径 g_host->strdup 返回值未检查 (L138-141/L219-222), 8 处调用无 null guard
|
||||
- 并发: g_host 在 on_shutdown 与 trim_impl 间无同步访问, 隐式时序依赖 (评级 C)
|
||||
- Top3: (1) C++异常穿越ABI边界[严重] (2) strdup返回值未检查+泄漏[高] (3) g_max_tokens设置但无读取点→set_max_tokens是死API[中]
|
||||
- 综合评级: B (堆纪律A, ABI B, 内存B, 并发C)
|
||||
审计报告写入 agents/audits/W11.1-context-audit.md
|
||||
rating: completed
|
||||
current_groups: []
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user