--- title: Project commguard-next Current State type: curated permalink: main/projects/dfbf674f-e25b-4b7d-b64d-83d1a133c3bc/curated/project-commguard-next-current-state stable_id: ae2f488a-79d2-4066-aafe-3d267bbae8a9 scope: project project_id: dfbf674f-e25b-4b7d-b64d-83d1a133c3bc workspace_type: development usage_profile_id: null preference_context: development document_type: current_state revision: 4 source_memory_ids: - 27055182-7b0b-4db8-a95a-76bd28d1cf98 source_checkpoint_ids: - 20c56050-403a-4440-b88f-dba7b0d17625 source_file_ids: [] source_git_commit: null source_git_commits: [] source_agent_sync_ids: [] model_connection: Sub2API model_name: openai/gpt-oss-20b source_count: 22 source_revisions: memory:27d64c67-c11f-4544-8d13-df1ebc9a7a34: '1' memory:826f9ea5-2c6d-423b-9bc5-fbfe9ae1f173: '1' memory:e014ec8b-372e-44b9-b45e-d905b666743b: '1' source_dispositions: processed: 22 unchanged: 0 unsupported: 0 skipped: 0 cited_source_ids: - curated_baseline:ae2f488a-79d2-4066-aafe-3d267bbae8a9 - memory:e014ec8b-372e-44b9-b45e-d905b666743b - memory:826f9ea5-2c6d-423b-9bc5-fbfe9ae1f173 - project:dfbf674f-e25b-4b7d-b64d-83d1a133c3bc - memory:27d64c67-c11f-4544-8d13-df1ebc9a7a34 - global_guidance_document:d3a20d44-6001-4c88-8772-65dbfac75e6e - global_guidance_document:e4fc35f2-1606-4b79-9c1e-367edeea97d0 - global_guidance_document:6973450e-6ecc-48e3-8cdd-4d7d7707d843 - global_guidance_memory:9988effa-80c9-4062-97a2-8a5f40e3856a - global_guidance_memory:ac8bb556-947d-43a1-87d9-bfe7e8da310b - global_guidance_memory:2406be77-e6ce-4572-890e-18747c968f55 - global_guidance_memory:25332e63-48d0-4daa-8c08-d676bb2d310d - global_guidance_memory:7429c22e-50ff-458a-97c0-423c679904c7 - global_guidance_memory:1194be51-ee29-47e1-8957-ec2888007db6 - global_guidance_memory:bf88c265-4749-4c50-85bc-4bae25298cd5 - global_guidance_memory:3f91189b-11a1-45bb-8357-4f413dc1609d - global_guidance_memory:105b328f-4bda-4641-90a7-7282ef156316 - global_guidance_memory:5ed86f53-b53e-4534-8e51-d3a010069d5e job_cited_source_ids: - curated_baseline:ae2f488a-79d2-4066-aafe-3d267bbae8a9 conflicts: [] supersedes: - summary: New commit + push policy supersedes older default commit only current_source_ids: - global_guidance_document:e4fc35f2-1606-4b79-9c1e-367edeea97d0 superseded_source_ids: - global_guidance_document:d3a20d44-6001-4c88-8772-65dbfac75e6e preferences: [] source_cursor: 709 source_hash: 8e3b44b8ce51f954d19c8183cd4784963759cfeac42fd4e0cbca3ee197276f05 prompt_version: 2026-08-12.3 schema_version: '3' curation_job_id: 0c93e23d-8511-49dc-9106-2f9cdecf5f1b created_at: '2026-09-18T01:24:34.016856+00:00' updated_at: '2026-09-18T03:27:23.309003+00:00' tags: - commguard-next - development --- Current current_state:\n\n项目 **commguard-next** 已在 2026‑09‑18 建立并进入开发阶段。以下为核心状态概要:\n\n- **基础设施**:依赖已通过 `pip install -e .[dev]` 成功安装。全部 **67 条 pytest** 都已通过,确保基础功能正常。\n- **关键修复**:\n - `monitor` 空扫描超时问题已修。\n - `remote` getattr 包装问题已调整。\n - `parser` 空 PRB 行已跳过且不中断。\n - `PATCH` 任务拒绝未知字段已处理。\n- **文档与日志**:已生成 `docs/project‑layout.md` 与 README 连接,并在 `.gitignore` 中添加 `logs/`。\n- **运行环境**:本机 8765 端口已有实例运行,`/health` 端点指向 `data/`。\n- **记忆与版本管理**:\n - 所有项目记忆统一放在 `aidocs/project_context.md`,该文件始终加入 `.gitignore` 并**不提交**。\n - MemRelay 为主记忆存储;若 MemRelay 不可访问,则直接写入 `aidocs/`,不产生本地复制。\n - 采用 **功能完成即提交并按远端状态推送** 的工作流;每次提交后若存在远端,则执行 `git fetch \u0026\u0026 git rebase` 再推送。\n- **凭证与安全**:\n - 所有凭证均通过 Vaultwarden 读取;若匹配唯一则自动使用,若无或多重匹配则提示用户。\n - 特色远端采集凭证已注入:\n - **条目名**: *commguard SFTPGo 采集(网优日常性能报表)*\n - **lookup_key**: `commguard‑sftpgo‑jmomcuser1`\n - **主机**: `188.5.127.115`\n - **端口**: FTP 15021, SFTP 15022\n - **账号**: `jmomcuser1`\n - **远端目录**: `/网优日常优化数据文档/日常性能报表/2026年/保障项目/`\n- **交付快照**:\n - 2026‑09‑18 01:04:04 UTC: 开发者提交 Checkpoint,完成环境搭建、依赖安装、单元测试、问题修复、文档生成与日志排除,标记为「完成」。\n- **未完成工作**:\n - 清理 `data/staging` 及同事残留文件。\n - 深度阅读 `monitor` 告警状态机代码。\n - 审查 `remote`、`parser`、`PATCH` 等模块的稳定性。\n - 检查 `sources` 的远端采集实现与 API 路由层次。\n - 确保 Vaultwarden 中所有凭证已正确配置,必要时自动调用。\n- **语言与交流**:项目所有文档、提交信息及用户交互文本均使用中文,符合全局沟通偏好。