Skip to content

Latest commit

 

History

History
172 lines (130 loc) · 4.3 KB

File metadata and controls

172 lines (130 loc) · 4.3 KB

DeepOrigo 1.2 Conversational Project Runtime

1. 目标

Conversational Project Runtime把一个自然语言入口同时用于:

日常对话
帮助与能力说明
项目问询
项目选择
需求追加
需求追加并实现
原有工程执行

核心原则是:解释不执行,问询不写入,明确执行才进入Harness。

2. 交互安全路由

用户消息
├─ 问候、感谢、身份介绍、一般问答 → chat,只读
├─ 怎么用、怎么生成、怎么追加 → help,只读
├─ 这个项目有哪些需求/怎么运行 → project_question,只读
├─ 追加项目需求 → 修订Blueprint与工程证明
├─ 追加并实现项目需求 → 修订后进入受控编码
├─ 生成项目 → Requirement-to-Project Runtime
└─ 明确修改、修复、开发、发布 → 原有CHART/Harness执行链

普通问号、解释性问题和日常表达不会被当成代码任务。

3. 项目上下文

系统在.deeporigo/conversation/default.json保存最近200条对话和当前项目ID。生成或选择项目后,后续可以直接使用:

这个项目有哪些需求?
它的架构是什么?
刚才生成的项目怎么运行?
下一步应该做什么?

切换项目:

选择项目 PRJ-xxxxxxxxxxxxxxxx
选择项目 reconciliation-service

4. 项目问询范围

支持以下主题:

  • 项目概况与状态;
  • SPEC/EARS需求及追加历史;
  • 架构、模块、实体与接口;
  • 商业问题、目标用户、收入假设和成果指标;
  • 运行、测试和构建命令;
  • 生成文件、代码入口和目录;
  • CI、测试、Manifest与质量状态;
  • CHART、风险、审批和Harness门禁;
  • 下一步实施建议。

回答引用Blueprint摘要和Manifest Root Hash,避免把项目外信息伪装成事实。

5. 需求追加

只登记与固化需求:

追加项目需求:订单完成时记录审计日志

指定项目:

追加项目需求 PRJ-xxxxxxxxxxxxxxxx:增加批量导入

登记后继续受控实现:

追加并实现项目需求:增加OAuth登录、RBAC和审计日志

每次追加生成:

  • ProjectRequirementRevision;
  • 独立的REQ-Rxx-xxx需求ID;
  • 更新后的docs/SPEC-EARS.md;
  • 更新后的docs/TRACEABILITY.md;
  • docs/REQUIREMENT-REVISIONS.md;
  • src/project-requirements.ts;
  • test/project-requirements.test.ts;
  • 更新后的Blueprint摘要;
  • 全文件Root Hash和签名Manifest。

6. 原子追加协议

验证当前项目Manifest
→ 复制到临时修订目录
→ 编译增量EARS
→ 更新文档与代码注册表
→ 运行生成项目自动化测试
→ 重建逐文件哈希和签名Manifest
→ 再次验证完整性
→ 原项目重命名为临时备份
→ 修订目录原子切换为正式目录
→ 删除临时备份

任一环节失败都会删除临时修订目录并保留原项目。

7. 帮助对话

帮助
帮助 生成项目
帮助 追加需求
帮助 项目问询
怎么用
你能做什么?

帮助回复提供可直接复制的下一句话,不要求记住参数。

8. 日常对话

你好
你是谁?
谢谢

离线模式使用确定性回复;配置模型后可以生成更自然的对话,但系统提示强制禁止声称已经执行文件、代码、部署或网络操作。

9. 对话历史

查看对话历史
清空对话历史

清空只删除聊天上下文,不删除项目、工程会话、审批、制品或证据。

10. SDK

import {
  ConversationalProjectRuntime,
  ConversationStore,
  RequirementProjectGenerator
} from "deeporigo";

const answer = await agent.askProject("这个项目有哪些需求?");
const chat = await agent.converse("你好");
const appended = await agent.appendGeneratedProjectRequirement({
  requirement: "增加审计日志",
  implement: false
});

11. 边界

  • 项目问答只基于已保存Blueprint、Manifest和项目记录;
  • 日常对话不替代事实检索;
  • “追加需求”生成需求代码注册表和证明,但业务行为实现需要“追加并实现”或后续开发会话;
  • 离线模式下受控开发只执行安全扫描,不会伪造复杂代码实现;
  • 生产写入、部署和策略放宽继续受Policy、审批和Capability约束。