文档阅读区

01 · World Model – TEVER Core (v0.5)

v0.4 的五元模型(Type/Entity/View/Event/Rule)保持语义稳定,并引入 Event Envelope v1 + Schema Registry + Event Source。
v0.5 的变化:在 v0.4 基础上,新增 Prompt Registry + LLM Gateway + AI Actions,使 LLM 成为 Core 的受控工具。


0. v0.5 目标(世界模型层)

  • 仍用五元模型作为统一语言:Type/Entity/View/Event/Rule
  • v0.4 的所有能力保持:Event Envelope v1、Schema Registry、RulePack、Alert
  • v0.5 新增:Prompt Registry、LLM Gateway、AI Actions(只读)
  • 核心原则:AI 一律"受控",模型/agent/rag 都是 Core 的 Action/Tool Provider

1. Event Envelope v1(统一事件外壳)

v0.4 已定义 EventEnvelopeV1,v0.5 保持不变。

1.1 逻辑结构(v0.4 已定义,v0.5 保持)

EventEnvelopeV1 {
  id: string;
  ts: string;
  tenantId: string;
  source: {
    sourceId: string;
    collectorId?: string;
    ip?: string;
  };
  type: string;
  schemaRef?: string;
  severity?: "debug"|"info"|"warn"|"error"|"critical";
  tags?: string[];
  subject?: {
    kind: "entity"|"external";
    typeId?: string;
    entityId?: string;
    externalRef?: { system: string; id: string };
  };
  payload: object;
  dedupKey?: string;
  trace?: { traceId?: string; spanId?: string; parentId?: string };
  signature?: { alg: string; kid: string; sig: string };
  meta?: object;
}

1.2 v0.5 新增 AI 相关事件

AI 生成事件

  • ai.insight.created - AI 洞察创建
  • ai.document_draft.created - AI 文档草稿创建
  • ai.document_draft.adopted - AI 文档草稿被采纳
  • ai.document_draft.rejected - AI 文档草稿被拒绝

AI 调用事件(由审计系统自动生成):

  • core.llm.invoked - LLM 调用(tool_call)
  • core.llm.validation_failed - LLM 输出校验失败

2. Prompt Template(Prompt 模板,v0.5 新增)

2.1 PromptTemplate 对象模型

位置:Core 的 Prompt Registry

对象模型

PromptTemplate {
  id: string;                    // 如 "project-mngt.task_decomposition@1.0.0"
  app_id: string;                // 归属 App
  name: string;                  // 模板名称
  version: string;                // 版本号(SemVer)
  template: string;              // Prompt 模板内容(支持变量 {{variable}})
  variables: string[];           // 变量列表
  output_schema: object;         // JSON Schema,用于校验输出
  status: "active"|"deprecated"; // 状态
  created_at: string;
  updated_at: string;
}

2.2 PromptPack(Prompt 包,v0.5 新增)

类似 RulePack,App 可以交付 PromptPack(prompts/promptpack.yaml),包含多个 Prompt 模板。

安装时

  • Core 解析 PromptPack
  • 注册 Prompt 模板到 Prompt Registry
  • 处理版本冲突

3. Schema Registry(事件 Schema 注册,v0.4 已有)

v0.4 已定义,v0.5 保持不变。

为每种 type 提供 JSON Schema(或 OpenAPI schema 片段)以便:

  • ingest 时校验
  • 规则编辑器能做字段提示与类型推断
  • 版本演进可控(向后兼容)

3.1 schema Entity(v0.4 已定义)

  • Type:event_schema
  • data:{ schemaId, type, version, jsonSchema, status }

4. Rule / RulePack:面向事件流的规则(v0.4 已有,v0.5 扩展)

v0.4 已定义 RulePack,v0.5 支持 AI Actions。

4.1 RulePack(v0.4 已定义)

v0.3 Rule 已支持 on_event/on_schedule/on_state。v0.4 做两点增强:

  1. 触发源扩展到 EventEnvelopeV1
  2. Condition 支持 stream 过滤 + 窗口聚合

4.2 v0.5 新增:AI Actions

Action 类型(只读):

  • invoke_llm_summary - 对 alert / event thread 做摘要、建议
  • invoke_llm_report - 日报/周报
  • invoke_llm_generate_doc - 会议纪要/PRD/里程碑草案/任务拆解输出为"草稿"

关键约束

  • 禁止:模型直接改 Task/Rule/Config
  • 允许:输出只写 ai_insights/docs_drafts,并发 ai.* 事件
  • 必须:人工确认后才能落地为真实实体

RulePack 示例(包含 AI Action)

{
  "id": "os-assistant.rulepack.v2",
  "rules": [
    {
      "id": "os-assistant.ai_alert_analysis",
      "trigger": { "type": "on_event", "eventTypes": ["alert_triggered"] },
      "condition": {
        "filters": [
          { "field": "data.severity", "op": "in", "value": ["error", "critical"] }
        ]
      },
      "action": {
        "type": "invoke_llm_summary",
        "prompt_template": "ops.alert_analysis@1.0.0",
        "context_refs": {
          "alertIds": ["{{entity_id}}"],
          "eventIds": ["{{alert.related_event_ids}}"]
        },
        "target_type": "ai_insight"
      }
    }
  ]
}

5. View:面向"事件 + 告警 + 证据链 + AI 洞察"的可视化(v0.4 已有,v0.5 扩展)

v0.4 已定义 View,v0.5 扩展支持 AI 洞察展示。

5.1 Core 内置视图(v0.4 已有)

  • Event Stream(按 source/type/severity/tags 过滤,实时/回放)
  • Alert Inbox(告警队列与状态流转)
  • Audit Trail(证据链:输入事件→命中规则→动作/工具调用)
  • Source Health(探针心跳、丢包率、延迟)
  • Search(统一检索 Events/Alerts/Audits/Projections)

5.2 v0.5 新增:AI 洞察视图

  • AI Insight 展示:在 Alert Detail 中展示 AI 生成的洞察
  • Document Draft 列表:展示所有待确认的 AI 草稿
  • Document Draft 详情:展示草稿内容,支持编辑和采纳

6. 命名、幂等与时间语义(v0.4 已定义,v0.5 保持)

v0.4 已定义,v0.5 保持不变。

6.1 eventType 命名规范(强制)

  • 统一格式:<appId>.<domain>.<verb>
  • Core 安装 App 时校验 eventTypeNamespace,防止冲突

6.2 幂等与去重(强制约定)

  • id(event_id):每条事件的唯一标识
  • dedupKey:用于"语义去重/合并"的可选键

6.3 时间字段语义(强制约定)

  • ts_event(发生时间):事件真实发生时间
  • ts_ingest(接收时间):Core 接收时间

7. Alert(告警)对象模型(v0.4 已定义,v0.5 扩展)

v0.4 已定义 Alert,v0.5 扩展支持 AI 洞察关联。

7.1 Alert 最小字段(v0.4 已定义)

Alert {
  id: string;
  tenantId: string;
  ruleId: string;
  fingerprint: string;
  status: "open"|"acked"|"closed"|"muted";
  severity: "info"|"warn"|"error"|"critical";
  title: string;
  summary?: string;
  evidence: {
    eventIds?: string[];
    aggregateRef?: string;
    timeRange?: { from: string; to: string };
  };
  assignee?: string;
  createdAt: string;
  updatedAt: string;
  ackedAt?: string;
  closedAt?: string;
  traceId?: string;
  tags?: string[];
}

7.2 v0.5 新增:AI 洞察关联

扩展字段(可选):

Alert {
  // ... v0.4 已有字段
  ai_insight_id?: string;        // 关联的 AI 洞察 ID
  ai_analysis_status?: "pending"|"completed"|"failed";  // AI 分析状态
}

8. Document Draft(文档草稿,v0.5 新增)

8.1 document_draft 对象模型

Type: document_draft

Schema

DocumentDraft {
  id: string;
  typeId: "document_draft";
  data: {
    title: string;
    content: string;              // 草稿内容
    parsed?: object;              // 解析后的结构化数据
    source: "ai";                 // 来源(固定为 "ai")
    prompt_template_id: string;   // Prompt 模板 ID
    target_type?: string;         // 目标类型(task/document/milestone 等)
    target_entity_id?: string;    // 目标实体 ID(如果已采纳)
    status: "pending"|"adopted"|"rejected";  // 状态
    related_entity_ids?: string[]; // 关联的实体 ID 列表
  };
}

8.2 生命周期

  • pendingadopted:用户采纳草稿
  • pendingrejected:用户拒绝草稿

8.3 允许的事件

  • ai.document_draft.created - 草稿创建
  • ai.document_draft.adopted - 草稿被采纳
  • ai.document_draft.rejected - 草稿被拒绝

9. AI Insight(AI 洞察,v0.5 新增)

9.1 ai_insight 对象模型

Type: ai_insight

Schema

AIInsight {
  id: string;
  typeId: "ai_insight";
  data: {
    content: string;              // 洞察内容
    parsed?: object;              // 解析后的结构化数据
    source: "ai";                 // 来源(固定为 "ai")
    prompt_template_id: string;   // Prompt 模板 ID
    related_entity_ids?: string[]; // 关联的实体 ID 列表(如 alert_id)
  };
}

9.2 生命周期

  • activearchived:归档

9.3 允许的事件

  • ai.insight.created - 洞察创建
  • ai.insight.archived - 洞察归档

10. RulePack DSL(最小规范,v0.4 已定义,v0.5 扩展)

v0.4 已定义 RulePack DSL,v0.5 扩展支持 AI Actions。

10.1 Filters(v0.4 已定义)

  • 字段路径:payload.xxxsource.sourceIdseveritytags[]
  • 操作符:eq/ne/gt/gte/lt/ltein/not_inexistsregex(可选)
  • 组合:all(AND)/ any(OR)

10.2 Aggregates(v0.4 已定义)

  • window:"5m"|"1h"|...
  • metrics:count/sum/avg/min/max/p95
  • groupBy:支持 payload.hostpayload.gpu_index

10.3 Triggers 与 Actions(v0.4 已定义,v0.5 扩展)

v0.4 Actions

  • send_notification
  • call_webhook

v0.5 新增 Actions(只读):

  • invoke_llm_summary
  • invoke_llm_report
  • invoke_llm_generate_doc

RulePack 的正式 JSON 结构与示例放在 06-app-contract.md。


11. 平台自监控(建议事件化,v0.4 已定义,v0.5 扩展)

v0.4 已定义,v0.5 扩展 AI 相关事件。

TEVER 自己也应产出事件(type 建议 core.*),以便"用 TEVER 监控 TEVER":

v0.4 已有事件

  • core.ingest.accepted/validated/rejected
  • core.rule.matched
  • core.action.succeeded/failed
  • core.agent.heartbeat.missed

v0.5 新增事件

  • core.llm.invoked - LLM 调用(tool_call)
  • core.llm.validation_failed - LLM 输出校验失败
  • core.llm.rate_limit_exceeded - LLM 限流触发

这些事件可以直接进入同一条事件流,驱动哨兵规则与面板。


文档版本: v1.0
最后更新: 2025-12-17