更新 .cocoon-plan.md:配置热重载校验完成,465 单元测试 + 115 集成测试全过
Some checks failed
CI / build (push) Failing after 3m41s

This commit is contained in:
xfy911 2026-06-15 15:27:21 +08:00
parent f037ddaa99
commit 638e9644f1

View File

@ -48,7 +48,7 @@
- [x] **FastCGI 协议核心** — 记录编码/解码、参数序列化、响应解析、连接池基础
- [x] **FastCGI 服务器集成** — 将 FastCGI 接入 server.c 请求处理流程,对接 PHP-FPM
- [x] **反向代理连接池** — HTTP/1.1 后端连接复用,减少握手开销
- [ ] **配置热重载校验** — 新配置语法校验失败时拒绝重载,避免把服务搞坏
- [x] **配置热重载校验** — 新配置语法校验失败时拒绝重载,避免把服务搞坏
- [ ] **内存响应缓存** — 基于 LRU + TTL文件不大时直接缓存到内存避免重复磁盘 I/O
- [ ] **管理 Dashboard** — 内置 `/_status` 页面SSE 实时推送指标,像 HAProxy stats 那种
- [ ] **ACME / Let's Encrypt 自动证书** — 无需手动配置,自动签发续期
@ -67,8 +67,8 @@
## 当前状态
- **编译状态**零警告全部通过2026-06-15 06:17 验证)
- **单元测试**458 个全部通过 ✓1 个 Ignored为预期行为
- **编译状态**零警告全部通过2026-06-15 15:17 验证)
- **单元测试**465 个全部通过 ✓1 个 Ignored为预期行为
- **集成测试**115 项全部通过 ✓
- **代码覆盖率**核心模块覆盖完整Phase 4 模块覆盖良好
- **文档状态**README 完整API 文档齐全,.cocoon-plan.md 已更新
@ -88,6 +88,19 @@
## 维护记录Phase 5 — 自然扩展)
### 2026-06-15 15:17: **Phase 5 — 配置热重载校验**
- 新增 `config_validate()`: 在配置热重载前对配置进行完整校验
- 校验项覆盖:端口、工作线程、连接数、超时、日志级别范围检查
- 成对字段校验TLS 证书/密钥、Basic Auth 用户名/密码必须同时存在
- 代理规则、虚拟主机、FastCGI 规则完整性及边界校验
- `server_reload_config()` 集成校验:新配置加载后先校验,失败则拒绝重载并保留旧配置,避免坏配置搞崩服务
- 新增 22 项单元测试,覆盖 config_validate 全部场景
- 编译验证:零警告,全部通过
- 单元测试465 个全部通过 ✓443 原有 + 22 新增校验测试)
- 集成测试115 项全部通过 ✓(含 SIGHUP 热重载测试,验证旧配置保留行为)
- 提交已推送到 origin main`f037dda`
- 项目状态Phase 5 进行中,配置热重载校验已完成,下阶段目标:内存响应缓存
+ 2026-06-15 12:17: **Phase 5 — 反向代理连接池完善**
- 新增 `proxy_pool_conn_is_alive()`: 使用 `recv(MSG_PEEK | MSG_DONTWAIT)` 非阻塞检测连接是否被对端关闭
- 复用前自动剔除失效连接,避免将已关闭的连接再次用于转发请求