{ "projectId": 39, "generationId": "codegen_8fc6cf94f71a40058add1b003d16ce05", "language": "C++", "status": "completed", "fileIds": [ 457 ], "outputDir": "D:\\workspace\\agent\\DocumentGenerateAgent\\agents\\ai_agents\\project-files\\codegen-runs\\codegen_8fc6cf94f71a40058add1b003d16ce05", "relativeOutputDir": "codegen-runs/codegen_8fc6cf94f71a40058add1b003d16ce05", "generatedFiles": [ "CMakeLists.txt", "README.md", "events.ndjson", "include/app.hpp", "src/app.cpp", "src/main.cpp", "tests/basic_test.cpp" ], "analysisSummary": "### 业务目标\n- 构建一个支持集中式与分布式作战任务方案规划、执行监控及动态重构的软件系统(CMS),服务于联合作战指挥机构。\n- 实现从战场事件到任务生成的快速响应闭环,提升复杂对抗环境下任务决策效率与执行精度。\n- 提供人在环干预与自主执行双模式运行机制,兼顾自动化处理能力与人工控制权衡。\n- 确保系统在高并发、高安全要求场景下的稳定性、可靠性与保密性,满足军用关键级软件标准。\n\n---\n\n### 功能清单\n1. **集中式方案管理可视化** \n - 支持任务方案列表展示、排序、详情查看、多方案对比、算法过程展示、方案重构及结果可视化。\n\n2. **分布式方案管理可视化** \n - 支持跨节点任务链拓扑展示、分片聚合、一致性校验、协商过程可视化及分布式重构前后对比。\n\n3. **方案分发与驱动监控** \n - 实现任务方案自动分发、节点确认回执收集、执行状态实时监听、异常检测与告警推送。\n\n4. **战场事件处理与任务生成** \n - 接收并过滤原始事件流,进行语义转化与封装,提供事件列表展示与处置界面,触发任务草案自动生成。\n\n5. **任务模板管理与生成** \n - 基于先验知识库版本选择和参数配置生成模板实例,支持模板检索、详情查看、子任务需求树展示及智能推荐。\n\n6. **双模式交互与实时通知** \n - 支持“人在环”与“自主执行”模式切换;实现实时数据变更推送、前端增量更新、高并发下流畅渲染。\n\n7. **用户中心集成与权限控制** \n - 对接统一用户中心,实现基于角色的访问控制(RBAC),完成身份认证、权限校验、越权拦截与审计日志记录。\n\n8. **服务降级与故障隔离** \n - 在资源异常或维护指令下进入降级维护状态,关闭非核心模块,保留基础诊断与配置功能。\n\n9. **安全性与保密性保障** \n - 执行输入数据合法性校验、越权访问拦截、服务熔断、敏感数据加密传输与存储、一键销毁等安全措施。\n\n10. **运行参数热加载与适应性调整** \n - 支持动态调整事件过滤阈值、算法权重、刷新频率、线程数等参数,并热生效。\n\n---\n\n### 数据结构\n| 名称 | 类型 | 描述 |\n|------|------|------|\n| `TaskPlan` | 结构体 | 包含任务ID、名称、类型(集中/分布)、状态、创建时间、关联事件、拓扑结构、资源配额、执行约束等字段。 |\n| `EventRecord` | 结构体 | 包括事件ID、类型标识、时空坐标、载荷数据、优先级、威胁等级、接收时间、处理状态(待处理/已拒绝/已生成)。 |\n| `TemplateInstance` | 结构体 | 模板ID、适用场景、复杂度、版本号、子任务需求树、前置依赖关系、生成置信度。 |\n| `ExecutionStatus` | 结构体 | 节点ID、任务进度百分比、健康指标、资源消耗、心跳信号、异常码、最后上报时间。 |\n| `UserSession` | 结构体 | 用户ID、角色编码、权限位图、访问令牌、会话有效期、登录终端IP。 |\n| `NotificationMessage` | 结构体 | 消息ID、优先级、类型(告警/提示/确认)、内容摘要、触发时间、是否已读。 |\n| `SystemStateContext` | 结构体 | 当前运行模式(空闲/人在环/自主/降级)、上下文快照、状态一致性标记、切换时间戳。 |\n\n---\n\n### 接口或命令\n#### 外部接口\n| 接口名称 | 标识符 | 协议 | 数据格式 | 方向 | 描述 |\n|--------|-------|------|----------|------|------|\n| 用户中心认证与权限接口 | SRS-CMS_I_UC_AUTH | HTTPS + OAuth2.0 | JSON | CMS ← 统一用户中心 | 身份认证、权限同步、令牌刷新 |\n| 战场事件接入接口 | SRS-CMS_I_EVT_BUS | Kafka消息队列 | 二进制序列化 | CMS ← 战场事件总线 | 接收临机/规划事件报文 |\n| 方案分发与状态回传接口 | SRS-CMS_I_DIST_NODE | gRPC/XML+JSON混合 | 结构化数据包 | CMS → 分布式节点 | 下发任务指令,回收执行遥测 |\n| 前端显控交互接口 | SRS-CMS_I_UI_RENDER | WebSocket | 轻量级JSON | CMS ↔ 显控终端 | 实时推送列表更新、通知、渲染指令 |\n\n#### 内部接口(通过消息总线/共享内存)\n| 模块间通信 | 用途 |\n|-----------|------|\n| `event-parser → template-engine` | 将标准化事件对象传递至模板匹配引擎 |\n| `plan-manager → distribution-driver` | 发送确认后的任务方案用于分发 |\n| `monitoring-module → ui-renderer` | 推送执行状态变化与异常上下文快照 |\n| `auth-interceptor → all-modules` | 拦截请求并校验用户权限 |\n\n---\n\n### 约束\n1. **技术栈约束** \n - 编程语言限定为 Java 或 C++;禁止使用未经验证的第三方开源组件。\n - 数据库操作必须使用预编译语句防止 SQL 注入。\n - 微服务架构设计,前后端分离部署。\n\n2. **安全与保密约束** \n - 所有外部数据传输采用国密 SM4 加密;存储介质启用全盘加密。\n - 敏感信息(如令牌、密钥)禁止落盘,内存中隔离保护。\n - 日志输出自动脱敏,仅保留可追溯标识。\n\n3. **性能与资源约束** \n - CPU 使用率 ≤70%,内存占用峰值 ≤80%。\n - 前端响应延迟 ≤1.5秒,方案重构计算耗时 ≤5秒。\n - 网络带宽预留 ≥30% 余量应对突发流量。\n\n4. **国产化适配约束** \n - 运行环境适配麒麟V10 / 统信UOS操作系统,达梦DM8数据库,国产X86/ARM服务器。\n\n5. **设计实现约束** \n - 支持热更新与灰度发布,保障业务连续性。\n - 所有算法需提供可解释性输出与参数调优接口。\n - 代码注释率 ≥30%,核心算法圈复杂度合理控制。\n\n---\n\n### 测试建议\n1. **功能测试**\n - 验证各功能模块是否按需求正确执行,例如:\n - 模拟事件流入,检查任务草案是否自动生成;\n - 触发方案重构,验证前后拓扑差异是否准确呈现;\n - 切换运行模式,确认交互逻辑与通知行为符合预期。\n\n2. **性能测试**\n - 使用专用流量发生器注入百万级模拟事件,测试事件处理吞吐量与背压机制有效性;\n - 模拟大规模方案数据加载,评估前端渲染帧率与内存占用情况;\n - 测量方案重构算法在不同规模输入下的平均耗时。\n\n3. **可靠性测试**\n - 断网重连测试:验证消息积压缓冲、断线恢复与状态同步能力;\n - 节点宕机模拟:测试分发链路的多路径冗余与自动重试策略;\n - 核心服务崩溃后,验证看门狗重启与安全基线恢复机制。\n\n4. **安全性测试**\n - 使用渗透测试工具模拟越权访问、SQL注入、重放攻击等,验证拦截逻辑与审计日志完整性;\n - 检查所有外部输入是否经过格式校验、边界检查与恶意载荷过滤;\n - 验证SM4加密通道建立与密钥管理流程。\n\n5. **兼容性与可移植性测试**\n - 在不同国产CPU架构(X86/ARM)与操作系统版本上部署运行,验证功能一致性;\n - 检查容器化部署脚本在多种Kubernetes环境中能否正常启动服务。\n\n6. **用户体验测试(演示法)**\n - 组织指挥人员参与人机交互演练,评估界面布局合理性、操作流畅度与通知及时性;\n - 演示模式切换过程,确保无感知过渡与上下文保持。\n\n7. **文档审查**\n - 审查源码规范性、注释覆盖率、设计文档一致性;\n - 核对交付物清单与研制任务书要求是否完全匹配。", "eventLogFile": "D:\\workspace\\agent\\DocumentGenerateAgent\\agents\\ai_agents\\project-files\\codegen-runs\\codegen_8fc6cf94f71a40058add1b003d16ce05\\events.ndjson", "repoSettings": { "username": "root", "password": "pAssW0rd", "repoUrl": "http://47.108.255.216:3000/root/plan_execute_t1.git", "branch": "main" }, "repoUrl": "http://47.108.255.216:3000/root/plan_execute_t1.git", "branch": "main" }