| engineer-zhou |
周岩 |
工程师 |
安静专注,擅长长时间处理复杂调试任务,有"慢思考"习惯 |
9年系统编程经验,主要在 Linux 内核驱动和用户态高性能服务。
熟悉 epoll/io_uring、Boost.Asio、协程 (C++20 coroutines)。
偏好:先用 strace/perf 量化,再改代码。
|
数据驱动,每次结论都附 benchmark |
| 异步 IO / 协程 |
| 性能 profiling |
| Linux 系统调用 |
| 网络协议 (HTTP/2, WebSocket) |
|
| 在 Windows 平台不如 Linux 熟练 |
| 有时陷入过度优化 |
|
| date |
event |
rating |
| 2026-05-27 |
入职 dstalk 团队 |
ongoing |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W12.1 - context_plugin 三处 bug 修复 (W11.1 audit) |
修复项: (1) C++ 异常穿越 ABI: trim_impl/context_count_tokens/context_trim/on_init 包裹 try/catch, 异常时 int 返回 -1, size_t 返回 0. (2) strdup null check: 引入 strdup_message_fields() + free_msg_strs() 辅助函数, 两处循环逐一检查返回值, OOM 时回滚已分配字段. (3) g_max_tokens 死变量: 选项A — trim_impl max_tokens==0 时用全局值; 结果组装前按 ceil(g_max_tokens/100) 裁剪消息数(粗略 ~100 token/msg).
编译 0 error 0 warning, ctest 4/4 pass.
|
completed |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W5.1 - network_plugin SSE 改 buffer_body |
do_post_stream response parser: http::string_body -> http::buffer_body.
消除 parser 完整 body + fragment + result_body 三份冗余。
编译 0 error 0 warning, smoke test 通过.
峰值内存: -67% (~360KB -> ~120KB), 无额外拷贝.
留待真实 API 压测验证 end-to-end.
|
good |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W14.1 - network_plugin TLS/DNS/exception 三修复 (W13.3 audit) |
修复 W13.3 审计三个问题:
(1) TLS 证书验证 (CVSS 7.4): HttpClientCtx 构造添加 set_verify_mode(verify_peer);
handshake 前 SSL_set1_host 启用 hostname 验证; SNI/hostname-fail / handshake-fail
均 host_log(ERROR).
(2) DNS resolve 超时: 用 steady_timer + async_wait + resolver.cancel() 实现 10s 超时,
超时/失败均返回明确错误码.
(3) catch(...) 兜底: 在 catch(const std::exception&) 后追加 catch(...),
非 std 异常不再穿越 C ABI (对齐 plugin-abi.md §8).
编译 0 error 0 warning, ctest 4/4 pass.
无新增依赖. Windows 上 set_default_verify_paths 可能找不到系统 CA, 已加 TODO
建议设置 SSL_CERT_FILE 或 bundle cacert.pem.
|
completed |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W16.5 - W13.3 网络审计报告补充 Findings Summary |
审计报告 W13.3-network-audit.md 末尾新增 Findings Summary 小节,列出 3 个发现:
F-13.3-1 (CRITICAL) TLS 证书验证、F-13.3-2 (HIGH) DNS 解析无超时、
F-13.3-3 (MEDIUM) 缺 catch(...) 兜底。3 条全部录入 findings-registry.md Open 分区。
格式对齐 WORKFLOW.md §14.6 / §14.2 字段定义。
|
completed |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W20.6 - session_plugin auto-save on_shutdown + auto-load on_init |
on_shutdown 中清空 g_history 前调用 session_save() 自动保存到默认路径。
on_init 注册服务后调用 session_load() 自动恢复(文件不存在静默失败)。
默认路径:Windows %APPDATA%/dstalk/session.json,Linux ~/.dstalk/session.json。
使用 _dupenv_s/getenv 获取平台标准目录。
编译 0 error 0 warning,ctest 5/5 pass。
无新增依赖,不涉及多会话管理。
|
completed |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W21.4 - session auto-save 失败告警 + 当前目录 fallback |
on_shutdown 中 session_save 返回值检查:失败时 DSTALK_LOG_WARN + 尝试 ./dstalk_session_backup.json fallback。
fallback 也失败时 DSTALK_LOG_ERROR,但不崩溃。
编译 0 error,ctest 8/8 pass。
|
done |
|
| date |
event |
detail |
rating |
| 2026-05-27 |
W22.5 - get_default_session_path() 加 mkdir 保障 + 静态缓存 |
get_default_session_path() 改为 static 缓存(lambda 立即求值,C++11 线程安全静态初始化)。
计算路径后 std::filesystem::create_directories 确保目录存在。
mkdir 失败时 g_host->log(WARN) + 返回 "./session.json" fallback。
编译 0 error 0 warning,ctest 8/8 pass。
|
completed |
|
|
|