2026-07-22 第十九阶段摄取、数据、多模态与实时合同深审记录

阶段结论

本阶段把学习路线中最容易被误写成“只要模型能读/能答就完成”的上游链路,收敛为可检查的工程合同:文件与来源进入系统时有边界;数据、标注和合成样本能说明版本与发布关系;媒体证据、OCR 与检索不会越过对象级授权;实时语音在断线后不会借“已重连”跳过副作用核对。

覆盖 文档解析、知识库构建、数据清洗、数据标注、数据合成、多模态 AI、OCR、语音识别、语音合成 与 实时多模态交互。

本阶段不证明什么

标准库夹具、SQLite 和静态网页构建证明的是教学合同、链接和当前内容的一致性;它们不证明恶意文件隔离、真实 OCR/多模态模型质量、身份提供方、向量库物理删除、外部工具 receipt、浏览器/电话媒体栈、供应商保留政策或法律义务已经在生产环境通过验证。

多 Agent 分工与主 Agent 复核

主 Agent 先固定“稳定资产/来源版本、对象级授权、派生产物、证据支持、发布身份、可行动输入、删除传播”的跨课边界,再划分三组不重叠范围:

  1. 文档解析与知识库构建:文件预算、解析/OCR 边界、版本、outbox、ACL 与撤权;
  2. 数据清洗、标注与合成:schema/manifest、冻结 split、裁决、provenance 与发布;
  3. 多模态 AI 与 OCR:媒体证据、来源完整性、OCR—RAG 投影、C2PA 与安全;

主 Agent 独立审阅语音识别、语音合成与实时交互,修正状态机与代码合同;随后逐项复核跨课术语、链接、测试数和来源边界。各 Agent 只修改各自目录,没有 stage、commit、push、回退用户文件或修改生成站点目录。

关键改动

摄取与知识库:先有受控 canonical,再有可检索投影

  • 文档解析不再只在 stat() 后相信文件大小;教学解析器实际最多读取预算加一字节,文件在检查后增长时会拒绝而非全量读入。课程同时补充双扩展名、路径段、解码后校验、Unicode 规范化、TOCTOU 与“OCR 不是恶意 PDF 隔离”的边界。
  • 知识库 outbox worker 现在核对 event 与 tenant/document/revision 身份,只有仍为当前、未删除 revision 的 upsert 才物化搜索投影;过期 upsert 会消费但不让旧内容重新可检索。查询还复算 canonical 内容/来源/build hash 和 ACL,候选窗口、ACL 组数与请求组数都有 fail-closed 上限。
  • 目录新增“版本发布 → outbox → 搜索投影 → 撤权/删除”原创 Mermaid 总览;删除、旧 revision、缓存/副本和物理清除仍被明确区分。

数据质量:把账本事实、评测 oracle 与发布证据分开

  • 数据清洗区分 schema、数据契约与发布 manifest,并要求先冻结 group_id → family_id / split,再拟合任何学习型统计量,避免家族泄漏与事后划分。
  • 数据标注明确 final_label 是经裁决的标注账本事实;它必须通过 guideline_version → rubric_version 的冻结映射投影为评测 expected_label、工具 oracle 或 rubric,不能混成同一个字段。裁决、指南更新、桥接样本和重标流程已可视化。
  • 数据合成项目从“provenance 字段存在”升级为验证 generator type/version、条件对应的 template ID、变量映射和真实数据声明;项目回归从 40 增至 43 项。release_id 现在关联 suite、dataset、rubric、grader、harness、逐 case 结果与批准,而不是把数据集版本当发布身份。

多模态与 OCR:引用存在不等于证据支持,更不等于获权

  • 媒体与 OCR 课程统一保留 asset_id、source_revision、派生处理版本、坐标/时间范围、分类和对象级授权;evidence_bound 只表示指针可解析且当前可读,evidence_supported 才表示证据实际蕴含 claim。
  • C2PA 被明确限定为内容 provenance/integrity 信号,不能升级成事实真实性、说话人身份或业务授权。来源撤权/删除采用“在线 fail closed,再确认 OCR/ASR 文本、chunk、Embedding、索引、缓存、评测副本和备份”等层级传播的表述。
  • OCR 教学审计器不再把“空参考、非空预测”的 CER/WER 伪报为 1.0,而是返回 null 并要求单独分析该切片;多模态路由器写报告失败会返回 2 且不打印半份报告。

语音与实时交互:观察、可行动输入与副作用恢复三分

  • ASR 课程区分 partial、provisional_final 与 committed;可修订转写不能直接触发写工具,只有独立 turn.commit 或用户确认可提升为行动输入。并修正 diarization 与声源分离的术语边界。
  • TTS SSML 课程改用 W3C 所说的合法 XML prolog / namespaced speak 形式,不再把 XML 声明误写成所有接入形态的唯一要求。
  • 实时状态图将重连后的路径改为 Reconciling;教学模拟器也新增门禁:存在旧写调用待核对时,恢复后拒绝新工作,只允许 receipt/result、再次断线或超时,所有结论可审计后才回到 Listening。项目回归从 24 增至 25 项。

跨课程术语与责任边界

术语本阶段的稳定含义不可错误替代
asset_id / source_revision媒体或文档对象及其当前可读取版本内容真实性、授权或 RAG 完整对象身份
source_lineage_id合成/数据工程中的抽象来源引用tenant_id + document_id + source sequence/revision + generation + ACL/tombstone 的 RAG 合同
final_label / expected_label前者是标注裁决,后者是经版本化投影的评测期望模型输出、自由文本 rubric 或未裁决初标
evidence_bound / evidence_supported前者是可解析授权指针,后者是人工/受控 grader 判断的证据蕴含schema 合法、模型自我声明或来源 hash
release_id一次可审计评测/发布证据集合的身份数据集版本、模型别名或单次 demo
authorization / ACL服务端按当前对象、主体和策略得出的可处理/可读取结论文件名、EXIF、来源标签或用户自报字段
撤权/删除传播在线立即阻断,随后逐层核对派生物与保留策略“删了原件/一个向量”或 hash 消失
turn / response / call实时输入、一次输出尝试、工具意图/结果的独立关联域transport connection、transcript partial 或播放队列

核心来源与材料边界

本轮新增讲解、Mermaid 图、测试和教学代码均为原创;第三方资料仅以链接、事实边界和少量术语说明引用,未加入不明再分发许可的完整材料。动态/规范结论优先核验一手资料:

验证证据

检查本阶段结果
文档解析 / 知识库构建27 / 41 项;normal 与 -O、均在 -B -W error 通过
数据清洗 / 数据标注 / 数据合成10 / 10 / 43 项;normal 与 -O、均在 -B -W error 通过
多模态 AI / OCR58 / 74 项;normal 与 -O、均在 -B -W error 通过
语音识别 / 语音合成 / 实时多模态交互63 / 63 / 25 项;normal 与 -O、均在 -B -W error 通过
统一专项回归上述 10 组共 414 项/模式,warnings-as-errors 通过,未生成本轮 .pyc
最终网站单元测试.website npm test:47/47 通过
最终公开构建913 个源 Markdown、573 个全文、340 个 fail-closed stub、229 个资源;916 个 staged Markdown、2462 个 HTML 页面、2815 个 public files;broken local links、敏感泄露、表格 wikilink、交互 checkbox 与 KaTeX 错误均为 0

两份 docs/文档解析/examples/__pycache__/inspect_documents.cpython-311*.pyc 经只读核验早于本轮、未跟踪且被忽略;本轮 -B 运行未更新它们,故按保留既有本机状态原则未删除。

后续队列

  1. 用受控恶意样本、真实解析器/OCR、对象级身份、连接器撤权、消息总线和搜索引擎完成集成与压力验证;不能把当前教学 SQLite 投影升级为生产删除证明。
  2. 继续逐页复核本阶段数据课程中尚未触及、仍保留早期 source_checked 的内容;按页面证据更新,不批量改日期。
  3. 为真实语音/多模态上线补设备、网络、媒体、供应商保留政策、受限 smoke test 与人工复核流程;离线事件模拟器不验证 codec、echo、NAT 或真实副作用 receipt。
  4. 在 Obsidian 桌面端抽查本阶段新增 Mermaid、长表格、callout 和移动端阅读体验;Quartz 构建不替代本地阅读视图验证。

本记录只覆盖第十九阶段,不表示长期 /goal 已完成。