52 lines
3.4 KiB
Markdown
52 lines
3.4 KiB
Markdown
---
|
||
name: 记录运行证据
|
||
description: 记录模型调用、运行登记、不可变回执、CAS revision 和受控 raw 证据。执行器或业务 Skill 需要持久化一次运行、追加失败证据、补回执引用或管理 raw 备份时使用;不负责调用模型或裁决内容质量。
|
||
disable-model-invocation: true
|
||
---
|
||
|
||
# 记录运行证据
|
||
|
||
本 Skill 服务执行适配器和业务 Skill,只负责把一次运行的输入、输出、状态与证据保存成可核验记录。受治理角色执行属于 `执行角色任务`,质量评分属于 `评估内容质量`,Gate 裁决属于 `判定质量是否合格`。
|
||
|
||
## scripts 入口
|
||
|
||
| 模块 | 职责 |
|
||
|---|---|
|
||
| `run_registry.py` | 创建和结束 `example_run`,维持运行状态与幂等边界。 |
|
||
| `persist_llm_call.py` | 把模型调用的 prompt、response、用量与 raw 指针原子登记。 |
|
||
| `agent_trace.py` | 框架派发留痕:事件账本 `example_agent_event` 写入 + raw/逐回合 llm_call 原子落库(07 §2 框架派发)。 |
|
||
| `persist_raw.py` | 将完整 raw 写入 `example_raw_lease` 与 `example_raw_content`,写前拦截凭据。 |
|
||
| `record_failed_run.py` | 为失败运行追加错误回执与隔离的质量结果。 |
|
||
| `repair_receipt_evidence.py` | 对成功回执追加 evidence revision,不更新旧回执。 |
|
||
| `file_cas.py` | 用内容哈希维护不可变 revision journal。 |
|
||
| `raw_vault.py` | 可选的仓外 raw 保险库与迁移回执,不是默认权威存储。 |
|
||
| `lesson_registry.py` | 经验升格链登记:把一次运行的 lesson/win 证据写入 `example_lesson`,并流转 `proposed → reviewing → promoted/rejected`。 |
|
||
|
||
## 复利合同
|
||
|
||
经验登记与运行证据同源:**一条经验只有绑得住 `run_id` 与候选哈希,后来的人才验证得了它**。因此 `lesson_registry` 与 `example_run` 同属本 Skill,各业务 Skill 调 `propose_lesson` 而不各自建表。
|
||
|
||
本 Skill 是模式 B 的**落点依赖**(平台底座),不自产创作效果信号:`compounding=none`,D8 不适用(模式 C)。
|
||
|
||
- `propose_lesson` 只登记 `status=proposed`,不做任何升格判断,也不把单章 n=1 结果当成普适结论。
|
||
- 状态机由 DB 触发器强制:跳过评审的自动升格被拒;`promoted` 必须指明目标类型(pattern/skill/tool)与落点;终态不可再流转。
|
||
- 升格是人的决定。`decided_by` 必填,任何调用方都不得代替人批准。
|
||
|
||
## 合同
|
||
|
||
- raw 以 PostgreSQL 为主:完整 prompt、response、oracle 和供应商响应写入受控表;仓外 vault 仅作显式备份。
|
||
- 证据只追加,不覆盖历史;内容哈希、owner、run_id 或回执绑定不完整时失败关闭。
|
||
- 密钥、token 和凭据不得进入 raw 表、回执或错误对象。
|
||
- `runtime` 等 creator/updater 值属于存量数据库审计标识,不因 Skill 名称变化而改写。
|
||
|
||
## 数据边界
|
||
|
||
- 读取运行、调用、raw 和回执当前状态,只为校验绑定与幂等。
|
||
- 写入 `example_run`、`example_llm_call`、`example_raw_lease`、`example_raw_content`、`example_run_receipt`、`example_lesson` 和相应质量失败记录。
|
||
- 不调用 Claude/New-API,不生成候选,不判断内容是否通过。
|
||
|
||
## 输出
|
||
|
||
- 面向当前任务的可执行判断、检查清单或改写建议(Markdown 结构化段落)。
|
||
- 不直接落库、不代替 `写下一章` / `决定正文候选去留` 写 Canonical。
|