NAC_Blockchain/charter-std/acc/acc1644.ch

45 lines
1.4 KiB
Plaintext

// Charter 标准库 - ACC-1644 监管控制协议
// 版本: 1.0 | 宪法授权控制器操作协议(冻结/强制转移/接管)
/// ACC-1644 监管控制接口
/// 提供监管机构对资产的强制操作能力(需要宪法授权)
protocol Acc1644 {
/// 冻结分区(监管机构操作)
fn freeze(
regulator: Address, partition_id: Hash,
reason: Bytes, evidence: Bytes, receipt: Hash
) -> Result;
/// 解冻分区
fn unfreeze(
regulator: Address, partition_id: Hash,
reason: Bytes, evidence: Bytes, receipt: Hash
) -> Result;
/// 强制转移(法院命令)
fn force_transfer(
super_regulator: Address, partition_id: Hash,
from: Address, to: Address, amount: u128,
legal_basis: Hash, evidence: Bytes, receipt: Hash
) -> Result;
/// 强制赎回
fn force_redeem(
super_regulator: Address, partition_id: Hash,
account: Address, amount: u128,
legal_basis: Hash, evidence: Bytes, receipt: Hash
) -> Result;
/// 接管控制权(紧急情况)
fn take_control(
emergency_controller: Address, new_controller: Address,
duration_secs: u64, reason: Bytes, receipt: Hash
) -> Result;
/// 查询分区冻结状态
fn is_partition_frozen(partition_id: Hash) -> bool;
/// 查询控制操作历史
fn get_control_actions(offset: u32, limit: u32) -> Vec<ControlAction>;
}