系统架构

开放式规划由什么组成:六个层、覆盖其上的三条回路,以及禁止回路合并的那条规则。

三条回路划分的是权限:谁设定目标、谁执行、谁核验。架构回答的是另一个问题——它们在物理上由什么构成。哪些存储、事实从何而来、究竟签署什么、结论以什么为凭。以下是系统的构成清单,而不是技术清单:在这里技术始终是需求的结果,凡是用纸和电话就能满足的需求,都不会出现任何数字化的东西。

六个层

自下而上。每一层的存在都因为某条回路需要它,没有一层是「为将来准备」的。上层离开下层就没有意义:没有测量的计算只会给出看似合理的数字,没有计算的发布只是一个漂亮的橱窗。

L0登记册与基础数据

整座构造的地基:区域、地块、设施、机构与义务的稳定标识。没有共同的标识,任何两套数据都无法对齐,系统就变成一堆无法归并的表格。这是最枯燥的一层,也是最常见的失败根源。

存放什么
标识、边界、分类体系、对象之间的关联、每条记录的变更历史
以什么为凭
与作为源头的国家登记册核对;出现差异就记为差异,而不是悄悄抹平

L1测量

事实的来源。计量表、管网与车队遥测、卫星影像、环境传感器、事件记录仪。首要要求是:测量者不得依附于被测量者——由拿钱的一方自己计算的指标,一个合同周期内就会失真。

存放什么
带时间戳、来源标识与声明精度的原始观测数据
以什么为凭
由性质不同的独立来源重复测量;读数不一致是信号,不是可以取平均抹去的噪声

L2事件日志

按时间记录发生过什么:收到了哪些数据、作出了哪个决定、当时生效的是哪一版计算。它只能追加:更正是一条引用旧记录的新记录,而不是被改写的行。正是这一层让「当时我们知道什么」成为可回答的问题。

存放什么
只可追加的事件序列、文件版本、何人何时录入了什么
以什么为凭
哈希链;任何参与方都能验证记录没有被事后改动

L3计算

把观测变成指标:汇总、模型、预测。这一层只有一条硬性要求——可复现:外部人员拿到同样的输入数据与同一版方法,必须得到同样的结果。无法重复的计算不具备法律效力。

存放什么
带版本的方法、所用的输入数据快照、标注了方法版本的结果值
以什么为凭
外部人员依据已公开的数据与已公开的方法重新计算

L4义务与结算

合同、配额、限额与支付。执行回路就住在这里:拍卖、招标、按已交付结果付款。自动化的适用程度,恰好等于结果能被 L1 测量的程度——否则智能合约只是让基于未经核实的依据的付款变得更快。

存放什么
义务条款、已发生的事件、结算状态、条款变更历史
以什么为凭
把每一笔付款与测量记录对应;不一致会阻断付款,而不是事后补手续

L5发布

系统对外输出的一切:机器可读的开放数据,面向居民、承包方与核验方的界面。发布的是数据与方法本身,而不是关于系统的报告——否则结论无法从外部核验,L3 层也就失去了意义。

存放什么
数据集、结构定义、方法版本、发布历史
以什么为凭
外部实际使用:若无人能依据已发布的数据复现计算,就等于没有发布

回路如何落在层上

层是机制,回路是权限。二者的交叉正是架构决策所在——重要的与其说是某条回路使用哪些层,不如说是它绝不允许支配哪些层。

目标回路

L5 + L0

依据已发布的数据,以及它所决策对象的登记册开展工作。它无权接触计算层与义务层:目标以结果来表述,而不是以由谁、按什么条件来完成表述。

执行回路

L4 + L0 + 只读 L3

在目标回路划定的框架内订立义务并完成结算。它读取指标,但既不计算指标也不修改方法:能够调整计算方法,等同于能够给自己判定结果。

核验回路

L1 + L2 + L3

掌握测量、日志与计算方法。它不参与义务,也不设定目标。它唯一的职能是回答:所上报的事情是否真的发生、发生了多少。

整套架构最关键的约束:核验回路的基础设施不得依赖执行回路的基础设施。共用服务器、共用管理员或共用运维承包商,会在技术上把两条回路并成一条——哪怕纸面上它们是分开的——模型也就退化为自我报告。

何者具备法律效力

系统处理大量数据,但只有少数几种文件产生义务。有必要直接列出:其余都是辅助材料,任何争议都将围绕这五项展开。

关于目标与限额的决定
目标回路——一项公开程序,表决结果记名。由有权组织该程序的机关签署;记录全文发布,而非以摘要形式发布。
合同或配额
义务的各方。条款在履行开始之前以机器可读形式发布,而不是在履行结束之后。
测量记录
核验回路的运营方。签署测量结果时须一并签署所用方法与时间戳——未载明方法的记录无效。
计算方法的版本
核验回路。方法在周期开始前固定;周期中途更换方法会使「前后对比」失效,须按开启新周期处理。
付款指令
执行回路,但必须引用具体的测量记录。没有该引用的付款在技术上无法完成,而不只是被规章禁止。

签署权的分离不是形式。正是它把「执行者不得核验」从一句宣示变成系统的属性:要突破它,就得伪造另一方的签名,而不是在同一间办公室里达成默契。

决定技术选型的那些要求

这里的顺序与惯常相反。先说明系统必须具备的属性,然后才去寻找实现方式。凡是不能满足其中任何一条要求的技术,无论多么时新,都不会进入架构。

可复现

外部人员拿到已发布的数据与方法版本,就能得到同样的结果。这同时是对 L3 与 L5 的要求,也正是方法必须带版本的原因。

测量的独立性

被测量的一方不控制测量方——无论通过组织架构还是通过运维承包商。由此产生用不同性质的来源重复测量关键指标的要求。

日志不可篡改

过去不被改写。L2 中的哈希链由此而来——不是因为「要用区块链」,而是因为「当时知道什么」必须有答案。

可退化为人工

任一自动化层失效时,程序必须在同样的权限分离规则下以纸面方式继续。出故障就让治理停摆的架构,不适合用于基础设施。

核验成本

核验一项事实的成本,必须明显低于该事实本身。这一条排除了全国规模的端到端链上记账:在那里核验比多数被核验的业务还贵。

逐个组件的成熟度

把已经运行的与仅在设计中的混为一谈,是数字治理文本中代价最高的错误。因此成熟度按组件申明,而不是对整个系统给出一个结论。

已在运行

  • 以机器可读形式发布采购信息——Open Contracting 标准及在其基础上建成的各国系统。
  • 计量与管网遥测:L1 层在能源和交通领域已存在并运行了数十年。
  • 参与式预算作为目标回路的程序——1989 年起的实践,已被数百个城市复制。

可用现成部件搭建

  • 单个区域尺度上的哈希链日志:工程上属常规任务,难点在规章而不在密码学。
  • 计算方法的版本管理与输入数据快照的发布——工程上已解决,组织上几乎无处落地。
  • 在具备自然计量单位的狭窄领域按核实结果付款——道路工程、垃圾清运、能效改造。

尚未解决

  • 全国规模的端到端链上记账:吞吐量与核验成本是开放难题,不是时间问题。
  • 通过 DAO 设定目标:按代币权重投票复制的是股东大会,而不是公民回路。
  • 在结果没有自然计量单位的领域实现独立测量——照护、教育、文化。这里的架构是有意不予适用的。

右栏中没有任何一项是左栏各项的前提。系统可以分部分检验,而每一部分更诚实的检验场所,是出错代价不至于太高的地方。

架构不解决什么

写在这里而不是写在小字注释里:不声明边界的架构读起来就是一句承诺,而承诺是无法核验的。

它无法防止目标设定被攫取。如果目标回路的产生不民主,再完美的机制也只会更快、更精确地执行他人的意志。

它不扩大指标的适用范围。凡是结果无法归结为计量单位的领域,L3 与 L4 层根本不予部署——这是设计决定,不是疏漏。

它不替代制度。签署、规章以及对虚假数据的责任都存在于系统之外;架构让违规变得可见,而不是变得不可能。

它不会自动扩展。在一个区域上验证过的属性,到全国规模需要重新验证——首先是核验成本。

这里最关键的是什么

这套架构刻意保持克制:其中没有任何一个组件是为了「显得时新」而加入的。层只出现在某条回路需要事实、记录、计算或签署的地方,别处不出现。这让整座构造可以分部分检验——也使得抽掉其中任何一项技术,逻辑都不会垮掉。

把区块链、模型和遥测从这张图里抽走,剩下的是一个签署权同样分离的纸面版本:更慢、更贵,但逻辑不变。把回路的分离抽走,剩下的就是自动化的自我报告,而这是任何技术都无法弥补的。