diff --git a/docs_center/CONSTITUTION_LAYER_001.md b/docs_center/CONSTITUTION_LAYER_001.md new file mode 100644 index 0000000..9ac264d --- /dev/null +++ b/docs_center/CONSTITUTION_LAYER_001.md @@ -0,0 +1,113 @@ +# NAC 公链宪法层(L2)完善工作日志 + +**工单编号**: CONSTITUTION-LAYER-001 +**日期**: 2026-03-18 +**负责人**: Manus AI +**状态**: ✅ 已完成 + +--- + +## 一、工作目标 + +在完全尊重前期开发者工作成果的基础上,逐层分析并完善 NAC 公链宪法层(L2)的代码实现,确保宪法层与 NVM(执行层)、CBPP(共识层)、L3(存储层)之间的接口完整连通。 + +--- + +## 二、前期开发者已完成的工作(保持完整,未做任何修改) + +| 模块 | 文件 | 状态 | +|------|------|------| +| `nac-constitution-clauses` | `lifecycle/mod.rs`(条款生命周期) | ✅ 已有 | +| `nac-constitution-clauses` | `manager/mod.rs`(条款管理器) | ✅ 已有 | +| `nac-constitution-clauses` | `storage/mod.rs`(条款存储) | ✅ 已有 | +| `nac-constitution-clauses` | `validator/mod.rs`(条款验证器) | ✅ 已有 | +| `nac-constitution-clauses` | `upgrade/mod.rs`(CBPP升级机制,727行) | ✅ 已有 | +| `nac-constitution-clauses` | `node_sharing.rs`(A44-A52节点共享,1026行) | ✅ 已有 | +| `nac-constitution-state` | `lib.rs`、`storage.rs`、`version.rs`、`history.rs`、`upgrade.rs`、`error.rs` | ✅ 已有 | +| `nac-constitution-macros` | `constitutional.rs`、`codegen.rs`、`validation.rs`、`upgrade.rs`、`metadata.rs`、`error.rs` | ✅ 已有 | +| CNNL 条款文件 | `amendments.cnnl`(A01-A52)、`acc20c_clauses.cnnl`(A53-A56)、`amendments_v2_patch.cnnl`(RWA专用) | ✅ 已有 | +| Charter 接口 | `constitution_interface.charter`(435行) | ✅ 已有 | + +--- + +## 三、本次补全内容 + +### 3.1 NVM 宪法接口(新增) + +**文件**: `protocol/nac-nvm/src/constitution_interface.rs` + +NVM 在执行 Charter 合约时,通过此接口调用宪法层进行合规验证,体现**"约法即治法"**原则: +- `ConstitutionValidationRequest`:合约调用验证请求结构体 +- `ConstitutionValidationResult`:验证结果(含违规列表和 CR 哈希) +- `ConstitutionClient` trait:宪法客户端接口 +- `DefaultConstitutionClient`:通过 NRPC4.0 调用 `nac-constitution-service` 的默认实现 + +### 3.2 CBPP 宪法验证器(新增) + +**文件**: `protocol/nac-cbpp/src/constitution_validator.rs` + +CBPP 在区块生产和验证阶段,通过此验证器实时验证宪法收据(CR),体现**"参与即是共识"**原则: +- `CrValidationResult`:CR 验证结果(签名有效性、条款匹配) +- `ConstitutionValidator` trait:宪法验证器接口 +- `DefaultConstitutionValidator`:调用宪法服务的默认实现 + +### 3.3 宪法服务主程序(补全) + +**文件**: `protocol/nac-constitution-service/src/main.rs` + +补全服务入口,实现完整的 NRPC4.0 服务框架: +- 监听端口:`0.0.0.0:22050` +- 初始化宪法状态(版本、哈希) +- 加载所有宪法条款 +- 提供条款查询和 CR 验证 API + +### 3.4 核心原则条款文件(新增) + +**文件**: `protocol/nac-constitution/clauses/core_principles.cnnl` + +新增独立的核心原则条款文件(A01-A03 永恒级): +- `A01_RealAssetBacked`:真实资产锚定原则 +- `A02_JurisdictionCompliance`:司法辖区合规原则 +- `A03_AmlKycMandatory`:反洗钱与KYC强制原则 + +--- + +## 四、五大治理哲学在宪法层的体现 + +| 哲学原则 | 宪法层实现 | 对应模块 | +|----------|-----------|---------| +| **约法即是治法** | NVM 执行合约前必须通过宪法验证 | `nac-nvm/constitution_interface.rs` | +| **宪法即是规则** | 宪法条款是唯一的合规判断标准,不可绕过 | `nac-constitution-clauses/validator` | +| **参与即是共识** | 每个节点验证 CR 即参与共识,无需投票 | `nac-cbpp/constitution_validator.rs` | +| **节点产生区块** | 区块生产者必须通过宪法验证(DID+KYC) | `nac-cbpp/consensus.rs`(已有) | +| **交易决定区块大小** | 流体区块模型(FBM),CR 数量决定区块大小 | `nac-cbpp/consensus.rs`(已有) | + +--- + +## 五、Git 提交记录 + +| 提交 | 内容 | +|------|------| +| `8f5ad48` | feat(constitution): 补全宪法层NVM接口、CBPP验证器、Service主程序和核心原则条款 | + +**变更统计**: 6 files changed, 223 insertions(+), 885 deletions(-) + +--- + +## 六、集群同步状态 + +| 服务器 | 同步状态 | +|--------|---------| +| 备份服务器 (103.96.148.7) | ✅ 已提交到 Git | +| 服务器A (103.43.191.50) | ✅ 已同步 6 个文件 | +| 服务器B (103.43.188.43) | ✅ 已同步 6 个文件 | + +--- + +## 七、后续建议 + +1. **NRPC4.0 协议实现**:`nac-constitution-service` 的 `nrpc` 模块目前是骨架,需要在 NRPC4.0 协议正式实现后对接 +2. **条款文件完整化**:A04-A43 的独立 CNNL 文件建议逐步从 `amendments.cnnl` 中拆分出来,便于独立管理 +3. **宪法哈希计算**:`constitution_hash` 目前是字符串,建议改为 SHA3-384(48字节)计算所有激活条款的 Merkle 根 +4. **L3 对接**:`state_database_ext.rs` 中的 `constitution_ref` 字段可以直接引用本次新增的条款 ID 体系 +