执行工作台 execution.constraintlab.io

交付物 B:元协议设计稿(草案 v0.2)

状态:草稿,未生效。本文档是设计稿,按 P-06,未经批准不得发布为正式版本。 建议归宿:定稿后以 P-01 v2.0.0 发布(吸收并扩展现行 P-01,MAJOR 变更,走 P-06 批准流程)。替代方案(新设 P-00)见交付物 E-2。 阅读对象:不了解项目背景的人。读完应能回答:这个体系是什么、由什么组成、怎么运转、边界在哪、怎么判断好坏。


第一章 体系定义

1.1 正式定义

数据产品体系(Constraint Lab 数据产品体系)是一套以"结构化、可溯源、可持续维护的数据产品"为产出的生产系统。它不是若干网站的集合,也不是一个工作台或一批脚本的集合,而是一个包含**规则(协议)、管理(控制)、操作(执行)、产品(模块)**四种职能的完整生产组织。

一句话:这个体系生产的数据产品,每一条事实都能回答"从哪来、谁验证的、什么状态、谁负责";支撑它运转的规则、任务、状态各有唯一归属。

1.2 目标与核心目标

目标 含义 反面(体系要避免的)
数据可信 每条数据有来源、验证状态、质量标记 靠"脚本跑成功了"背书数据
职责有主 每条规则、每个任务、每份数据有唯一所有者 "大家都能改""没人负责"
低成本扩张 新增数据产品 = 定义规则 + 注册 + 接入,不重建基础设施 每个新站复制一套后台/脚本/调度
人机分工明确 重复劳动自动化,判断性决策留给人 全自动发布,或全人工苦力
可审计 任何一次数据变更可追溯到任务、代码版本、规则依据 "不知道这数据哪来的"

1.3 体系管理的对象

体系管理五类对象:数据产品(五个,将新增)、数据资产(各产品的 data/ 与来源)、任务(采集/校验/审核/发布等运行单元)、规则(全局协议→项目协议→模块契约)、公共能力(控制与执行的通用机制)。

1.4 输入—处理—输出—反馈

输入:   外部信息源(官网/文献/公开数据) + 所有者的决策与规则 + 人工录入
处理:   采集 → 结构化 → 校验闸 → 人工审核 → 发布(协议层定义规则,
         控制层决定时机,执行层实际操作,模块层定义业务语义)
输出:   面向人的网站 + 面向 AI 的 API/MCP + 面向所有者的状态看板
反馈:   健康探测、质量校验、任务结果、问题工单 → 回到"处理"与"规则"两层

1.5 体系 ≠ 网站 ≠ 仓库 ≠ 任务

1.6 成功标准与基本约束

成功 = 第 1.2 节五个目标同时成立,且第 1.4 节循环在无人工干预下能维持"采集→校验"段、在有人工节点处有明确待办。基本约束:不虚构能力(没实现的不说有);单一事实来源;变化可追溯(见第九章治理)。


第二章 体系组成与职责

九类组成部分。"必须检查"≠"必须建成独立服务"——每类都可以由现有系统承载。

2.1 元协议与全局规则

2.2 专项协议、项目协议、模块契约与决策记录

2.3 控制层(当前由 Data Workbench 承载)

2.4 执行能力

2.5 数据产品(模块层主体)

2.6 数据、来源、证据、业务规则与质量状态

2.7 对外访问能力(API/MCP)

2.8 监测、验证、审核、发布、反馈与维护机制

2.9 决策者(人)


第三章 四层架构的正式定义

权威定义 = P-02(v1.0.0 正式生效)。本章不复述其全文,只做三点元协议级澄清与现状对照。

3.1 依赖方向与反馈回路

协议层 ──约束──→ 控制层 ──任务指令──→ 执行层 ──操作──→ 模块层
   ▲                                                    │
   └──────修订提议(实践反馈)                              │
                                                          ▼
        控制层 ←──结果/状态/异常反馈──────────────────────┘

3.2 逻辑分层 ≠ 物理部署

四层是职责透镜。当前物理映射(现状事实):

层 当前承载 是否分离
协议层 Protocol System(独立仓+独立站) 已分离
控制层 data-workbench(进程内 items/site-status/…) 与执行同进程
执行层 data-workbench 内核 + 各项目 scripts/ + CI 同进程 + 分布在五仓
模块层 五个产品仓库 独立

元协议立场:不因分层而强制拆分部署;也不因当前同进程而否认层间边界。控制/执行是否分离由专门 ADR 决策(见治理冲突 C2 的处理),本文档只规定:无论物理上怎么部署,控制职责不得执行任务,执行职责不得决策任务——这是逻辑边界,与部署无关。

3.3 各层"做什么/不做什么"一句话版


第四章 体系运行机制:一个数据产品的生命周期

九个环节,标注实现程度:【已实现并验证】/【部分实现】/【仅目标机制】。

# 环节 机制 程度
1 项目定义与注册 按 P-03 模板写项目协议 → 登记注册索引 → 声明依赖的全局能力 注册机制【已实现并验证】(协议侧);注册动作【仅目标】(0/5)
2 来源与业务规则定义 项目内 sources 登记表 + Zod schema + 校验闸 【已实现并验证】(五站各自实现)
3 任务创建/调度/执行 workbench TASKS + scheduler + spawn;接入 = project.config.json + adapter 机制【已实现并验证】(CN 实跑);四站【部分实现】(配置在、链路断)
4 采集→校验→差异识别 collect→inbox→六/十闸校验→sourceMonitoring 变更检测 【已实现并验证】(CN);PW 发布段从未走通
5 结果记录/异常/人工审核 RunStore 记录 + classifyFailure + items 六态 + review-server 【部分实现】:记录在,但结果无结构化信封;失败闭环靠人主动看
6 发布与对外服务 guarded-unverified 发布护栏 + CF 部署 + API/MCP 【部分实现】:护栏代码经 28 项 E2E,生产真实发布未执行;机器入口仅 CN
7 状态/质量/结果监测 site-status 6h 探测 + 构建闸 + 校验闸 【已实现并验证】(五站探测)
8 失败恢复/反馈/维护 /retry 路由 + notify + items 后续处理 【部分实现】:恢复机制在,闭环实践依赖人
9 项目与协议演进 P-06 版本流程 + ADR + 项目协议独立版本化 机制【已实现并验证】;项目侧无从演进(未注册)

新项目接入的标准路径(元协议规定,各环节细节由专项协议细化): 定义项目协议(P-03 模板)→ 声明数据模型与来源规则 → 在 workbench 登记项目配置 → 首个任务以 read-only 类型试运行 → 结果经人工审核 → 逐步放开调度与 mutating 任务 → 定期复审项目协议。


第五章 核心概念与对象关系

5.1 概念表

概念 定义 归属层 关键关系
项目 已注册(或待注册)的数据产品整体,含其全部资产与规则 模块层 拥有数据实体、业务规则、来源清单
数据实体 项目数据模型中的一个可寻址单元(如一条签证记录) 模块层 由项目 schema 定义;有数据状态标记
数据来源 实体事实的外部出处,登记于来源表并记录 lastChecked 模块层 采集任务的操作对象
业务规则 项目对数据语义、证据等级、发布条件的判定逻辑 模块层 实现为校验闸;定义归项目协议
任务 一类可重复执行的操作定义(如 source-run) 执行层(定义)/控制层(授权) 由项目注册到执行机制
任务运行实例 任务的一次具体执行(run),有 id、状态、日志 执行层 产出执行结果
执行结果 运行实例的产物:退出码、日志、结构化信封(目标态) 执行层 反馈给控制层
证据 判断所依据的可查证材料:运行记录、校验输出、来源链接 跨层 items 关闭必须附证据(workbench 已实现)
数据质量状态 校验闸与人工审核对数据的判定 模块层 独立于任务执行状态
审核与发布状态 数据从 inbox→正式→发布 模块层+控制层 由人工节点驱动
异常/失败/恢复 运行中断(失败)、业务不合格(异常)、重试/人工介入(恢复) 执行层记录/控制层处置 三者语义不同,不得混用
协议/版本/变更记录 规则文本及其演化轨迹 协议层 P-06 管版本

5.2 五组不可混淆的区分(硬性条款)

  1. 任务执行成功 ≠ 数据质量合格。 退出码 0 只说明程序正常结束;数据判定由校验闸与人工审核独立给出。
  2. 数据采集成功 ≠ 已通过审核/允许发布。 采集产物一律先入待审区(inbox/changes)。
  3. 项目启用(enabled)≠ 管线接通。 当前四站 enabled 而零运行记录即为实证——状态必须区分"配置启用"与"有运行证据"。
  4. 页面构建成功 ≠ API/MCP/生产运行正常。 构建闸只覆盖静态产物;服务可用性由健康探测独立判定。
  5. 缺失 / 未找到规则 / 信息不足 / 验证失败是四种不同状态,必须分别表达,不得合并为"失败"。此原则直接约束未来结果信封的字段设计。

5.3 对象关系图

项目 ──拥有──→ 数据实体 ←──定义── 业务规则
 │                ↑
 │                │产出
任务 ──运行──→ 运行实例 ──产出──→ 执行结果 ──附──→ 证据
 │                                  │
 └─授权自 控制层                      ▼
                              数据质量状态 / 审核发布状态 / 异常记录
                                    │
                                    ▼
                          items 工单(证据关闭)→ 健康状态

第六章 全局规则与项目自治边界

继承 P-01 §6 框架,按元协议需要细化:

6.1 必须全局统一(项目不得放宽)

  1. 四层职责边界(P-02)与本章 5.2 五组区分。
  2. 任务生命周期的共同概念:任务/运行实例/结果/证据的定义(第五章)。
  3. 结果可追溯性:任何改数据的任务必须留下可查证运行记录,记录必须含执行时代码版本(目标态;现状缺 gitSha,属待补)。
  4. 状态报告的基本义务:控制层能问"某项目最近任务跑得怎样、数据质量如何、有什么待处理",且答案有证据。
  5. 证据要求:items 关闭需证据;高风险操作需人工批准。
  6. 变更管理:协议变更走 P-06;架构决策走 ADR。
  7. 单一事实来源:同一规则只在一处正文定义(见第九章)。

6.2 项目自治(全局不指定)

技术栈、目录结构、内部校验闸数量与语义、数据字段、证据等级档位、发布条件、内部审核粒度、采集源选择、页面设计。

6.3 中间地带(需要决策的灰色区)


第七章 系统健康与验收标准

7.1 原则:状态必须由证据支撑,禁止单点绿色即判健康

一个绿色状态只证明一件事成立。判定"项目健康"需要下表多层证据同时成立。

7.2 三级健康矩阵

级别 判定对象 必要证据(全部满足才可称"正常")
任务级 一次运行实例 退出码 + 完整日志 + 结果信封(目标态)+ 执行时 gitSha
项目级 一个数据产品 ① 已注册(项目协议正式生效)② 调度任务有近期成功记录 ③ 校验闸通过 ④ 待审积压低于阈值 ⑤ 人工节点无逾期 ⑥ 线上站点健康探测通过 ⑦ (若有)API/MCP 端点可用
体系级 整个数据产品体系 ① 协议站可访问且版本与仓库一致 ② 全部注册项目的项目级健康 ③ workbench 自身健康(进程/磁盘/state 完整性)④ 无超期未处理 items ⑤ 密钥与凭据无泄露记录

7.3 状态与验收的关系


第八章 协议体系与演进治理

8.1 协议族结构

元协议(本文件,体系总定义)
 ├─ 全局专项协议:P-02 四层 / P-03 项目定义 / P-04 数据与AI / P-05 模块契约
 │                / P-06 版本演化 / P-07 任务与执行(候选,待立项)
 ├─ 项目协议 ×N(P-03 模板)
 │    └─ 模块契约 ×N(P-05 模板)
 └─ ADR 决策记录(跨层不可逆决策)

8.2 变更路由规则(改什么文件)

变化 更新位置
体系定义、四层边界、核心概念、全局/项目权限分界 元协议
某类横切事务的规则(任务执行、数据要求、模块契约格式) 对应专项协议
单项目的身份/资产/管线/验收 项目协议
单模块 I/O 模块契约
不可逆架构取舍(拆分、新建系统、废弃机制) ADR
实现细节(代码、配置、部署参数) 各项目仓库,不需要协议变更

8.3 单一事实来源规则

  1. 同一规则只在一处正文定义,其他位置只允许引用。
  2. 引用必须带版本(如"依 P-02 v1.0.0 §4"),被引用文件升级导致语义变化时,引用方有义务复审。
  3. 元协议与 P-01 的重叠由归宿决策消除(见 E-2):无论合并还是编号并列,体系总定义的正文只存在一份。
  4. 项目内部文档(如 workbench 的"六层"表述)不得与全局协议冲突;冲突时以全局协议为准或走 P-06 提案。

8.4 兼容、废弃与迁移

遵循 P-06 全文,元协议补充两条:


第九章 现状 / 目标 / 待建设 对照

能力 现状(有证据) 目标(本元协议定义) 差距 = 待建设
全局协议 P-01~P-06 生效 元协议统摄 + P-07 任务执行 P-07 立项;P-01 归宿决策
项目注册 机制在,0/5 5/5 注册 5 份项目协议
任务接口 spawn + 退出码 统一信封 + gitSha + Schema 校验 信封落地(先 CN)
控制↔执行接口 进程内约定 协议化 HTTP 契约 P-07 + 少量代码
执行承载 workbench 同进程内核 可独立承载(不预设时间) ADR-003 决策 → 再实施
四站接入 enabled 零运行 各站 ≥1 任务有信封记录 配置 + 试点
发布闭环 guarded-unverified 生产真实发布有完整证据链 首次真实发布演练
机器可验证协议 0 信封/注册信息 Schema 化 随 P-07

第十章 与现有协议的关系声明

  1. 本元协议不废除任何现行协议;P-02/P-03/P-04/P-05/P-06 原文继续有效,本文件通过引用与之衔接。
  2. 本元协议与 P-01 的关系(吸收升级 or 并列编号)是待决策项,定稿时消除重叠(治理规则 8.3.3)。
  3. 本文档当前为草稿:按 P-06 §6,可视为"实验性规则"对待——项目可参考反馈,不构成强制约束;转正需走批准流程。

(完)