一、技能重组(动作-对象命名) - 旧目录 clean/confirm/continuation/db/detect/embed/… 重组为 clean-book-text/decide-candidate/write-next-chapter/access-database/ check-content-consistency/embed-knowledge/…(git 识别为 rename,内容保持) - agents/*.md、AGENTS.md/CLAUDE.md 收编、example_skill 登记表同步新名 二、先审后入创作闭环(本次核心) 正文接受从"机械门一过就写正典"改为"机械门+语义审查双通过+用户批准+单事务原子提交", DB 级兜底,编排层跳步即被硬拒。 - candidate_cas.py + example_candidate_cas(109):持久化 CAS 状态链 - fact_delta.py + example_fact_delta/example_fact_ledger(106):结构化事实增量, 模型只提六型闭集增量+正文证据引文,仅用户批准的增量随正文同事务入账本 - projection_registry.py + example_projection_run(107):投影登记与恢复 - acceptance_state.py:接受前置实时状态重读 - lesson_registry.py + example_lesson(108):经验升格链,禁止自动升格 - DDL 105:example_candidate 增 semantic_status/semantic_report_sha256 - write_canonical.accept:语义兜底+同事务合并增量+登记投影; run_writer_pipeline/persist_writer_run/run_writer_semantic_detector/step2 接入全链 - claude_runtime:兼容新 CLI modelUsage 信息字段 三、审查修复(独立子代理四维审查后) - 事实增量 propose→approve 翻态正道,不撞唯一键 - 冻结配置探针重刷(CLI 2.1.211→2.1.231 漂移),profileSha256/adapterVersion 再登记 - 可视化合同悬空路径/五六空间矛盾、 SoT 旧技能名漂移、行尾空白清理 测试:离线 65 套 + 真实库集成 5 套(CAS/接受故障注入/事实增量/投影/经验升格)+ 回放 79 项全绿。 创作内容(docs/design、生成正文 artifacts)按"框架与创作分开"未入本提交。
4.2 KiB
4.2 KiB
AI 味案例卡合同 v1
案例卡是质量与复利领域的证据载体。它记录“某段文本被怀疑有 AI 味,或被证明不应改”的可复核观察,不承担作品事实、公共范式或生产规则的职责。
必填字段
| 字段 | 合同 |
|---|---|
schema_version |
固定 ai-flavor-case-v1 |
id |
case- 加稳定哈希前缀;同一来源位置和模式只能有一个 ID |
card_type |
固定 ai_flavor_case |
state |
shadow / canonical / rejected / archived |
label |
unclassified / sf / snf / boundary / regression |
layer |
mechanical / lexical / structural / density / semantic / unknown |
carrier |
narration / dialogue / monologue / in_text_carrier / mixed / unknown |
capture_mode |
backfill / live_feedback / synthetic / review_import |
source |
来源种类、许可、source_sha256、位置和 work_ref |
observation |
表面模式、问题判断、功能检查项、改动风险和建议动作 |
来源重验证
revalidate在使用卡片前重新读取受控来源的原始字节,计算当前source_sha256,并与卡片保存的值比较。- 全文哈希相同后还会检查
location的excerpt_sha256与surface_location;三者任一不一致,结果为card_mismatch。 - 重验证结果是独立的不可变回执,不自动修改卡片的
state。结果状态固定为:verified(来源与锚点一致)、stale(全文哈希变化)、unavailable(来源不可读取)、card_mismatch(全文相同但卡片锚点不一致)。 canonical确认、样例投影和规则候选/规则使用必须携带对应卡片的verified回执;缺回执或回执哈希不匹配时 fail-closed。- 检测命令完成时会把案例卡和重验证回执自动写入
muse-example;看板只读展示历史批次,打开页面不触发原文读取,也不写库。只有显式--offline才生成不入库的回执。
使用范围与失效
shadow:只用于人工复核、聚类和候选提示;不能进入生成上下文、不能投影样例、不能成为 blocking 规则。canonical:必须有可保存授权、人工标签/评审和verified重验证;只表示这条证据可共享,不表示规则已经 active。rejected/archived:保留审计,不参与当前消费。verified:当前来源字节、片段锚点和表面锚点均一致,可用于确认、样例投影或规则候选评审。stale/unavailable/card_mismatch:当前使用立即失效;重新取得合法来源并重验证后才恢复。历史卡和历史回执不删除。- 作用域默认是该卡的
work_ref + source_ref + source_sha256 + capture_mode;规则候选还必须满足跨作品和正反证据门。单卡、单作品或单次反馈不能扩大为全局规则。
来源规则
source_sha256是原始文件字节的 SHA-256 小写十六进制值。excerpt_sha256是保存片段 UTF-8 字节的 SHA-256;没有片段时也必须保留它,便于在受控原文环境复核。research_only/unauthorized来源必须excerpt: ""、context: "",状态只能是shadow。owned/licensed/public_domain/synthetic才能保存片段;canonical必须有可审阅片段、非unclassified标签和review记录。- 位置使用
line_start、line_end、char_start、char_end;哈希和位置不足以证明内容时,卡不能确认。
证据与规则边界
sf只表示“当前评审认为应修”,不是永远删除。snf表示同一表面形式在上下文中有功能,提醒系统不要误修。boundary表示需要任务合同或上下文裁决。regression记录一次错误修复及其后果,优先用于回归门。- 单张卡不能生成 active 规则。候选规则必须同时引用正反证据,且至少来自两个不同作品;规则状态由代码固定为
candidate。
与现有资产的关系
canonical 案例卡可以投影成四类样例,但样例必须保留 case_card_id、来源位置和许可。规则仍由 review-knowledge-cards 与质量/回放链审核;案例卡不替代 meta/schemas 的实体/范式卡。