# NAC 公链宪法增补条款 - ACC-20C 兼容层合规规则 # 版本: 1.0 # 路径: protocol/nac-constitution/clauses/acc20c_clauses.cnnl # 关联文档: ACC-20C 兼容层协议, Issue #78 (ACC-20C 部署) program NacAcc20cClauses name: "NAC公链 ACC-20C 兼容层宪法条款" version: "1.0.0" description: "4条 ACC-20C 专属宪法条款(A53-A56),替代 PermissionProxy,将合规检查提升至协议层。" # ============================================================ # 第八章:ACC-20C 兼容层条款(A53-A56) # ============================================================ # --- 战术级条款 (Tactical Tier) --- clause A53_Acc20cWrapCompliance name: "ACC-20C 资产包装合规强制" tier: Tactical clause_index: 201 description: "调用 acc20c_wrapper.wrap 函数时,CEE 必须强制验证: 1. 调用者(msg.sender)必须通过 GIDS 的 KYC/AML 验证。 2. 底层 ACC-20 资产未被列入任何司法辖区的黑名单。 3. 调用者必须质押足额的 XTZH 作为合规保证金。" predicate: tx.target_interface == "IAcc20C" and tx.target_function == "wrap" implies (gids.is_kyc_verified(tx.origin) == true and asset.is_blacklisted(tx.params.acc20_contract, tx.params.acc20_token_id) == false and xtzh.has_sufficient_collateral(tx.origin, asset.valuation(tx.params.acc20_contract, tx.params.acc20_token_id)) == true) obligation: cee.verify_gids_kyc per_tx and cee.verify_asset_blacklist per_tx and cee.verify_xtzh_collateral per_tx violation_action: reject_transaction test: A53_test_wrap_compliance references: ["ACC-20C 协议文档 §4.1", "XTZH 价值稳定机制 §3.2"] clause A54_Acc20cUnwrapCompliance name: "ACC-20C 资产解包合规强制" tier: Tactical clause_index: 202 description: "调用 acc20c_wrapper.unwrap 函数时,CEE 必须强制验证: 1. 资产的解包冷却期(unlock_timestamp)已过。 2. 资产未处于任何司法冻结状态。" predicate: tx.target_interface == "IAcc20C" and tx.target_function == "unwrap" implies (block.timestamp >= asset.wrapped(tx.params.wrapper_token_id).unlock_timestamp and asset.is_judicially_frozen(tx.params.wrapper_token_id) == false) obligation: cee.verify_asset_unlock_period per_tx violation_action: reject_transaction test: A54_test_unwrap_compliance references: ["ACC-20C 协议文档 §4.2"] clause A55_Acc20cTransferCompliance name: "ACC-20C 资产转移辖区合规强制" tier: Tactical clause_index: 203 description: "调用 acc20c_wrapper.transfer 函数时,CEE 必须强制验证: 1. 交易的发送方(from)和接收方(to)都必须满足底层 RWA 资产所绑定的司法辖区规则。 2. CEE 需调用多辖区规则引擎进行交叉验证。" predicate: tx.target_interface == "IAcc20C" and tx.target_function == "transfer" implies jurisdiction.can_transfer( asset.underlying_rwa(tx.params.wrapper_token_id), gids.get_jurisdiction(tx.origin), gids.get_jurisdiction(tx.params.to) ) == true obligation: cee.verify_cross_jurisdiction_transfer_rules per_tx violation_action: reject_transaction test: A55_test_transfer_compliance references: ["ACC-20C 协议文档 §2.1", "多辖区节点共享白皮书 §4.3"] clause A56_Acc20cAdminFreeze name: "ACC-20C 资产司法冻结合规" tier: Tactical clause_index: 204 description: "只有获得宪法法院授权的地址(ConstitutionalCourt)才能调用 acc20c_wrapper.freeze_asset 函数。 此操作必须附带有效的链上司法裁决文书哈希。" predicate: tx.target_interface == "IAcc20C" and tx.target_function == "freeze_asset" implies (tx.origin == constitution.get_address("ConstitutionalCourt") and tx.has_valid_judicial_warrant() == true) obligation: cee.verify_judicial_warrant per_tx violation_action: reject_transaction test: A56_test_admin_freeze_compliance references: ["NAC 公链宪法 §C12.3"]