RuView 主动感知与可编程感知控制面:基于 ADR-280 的 SensingTask、AoI 调度与受治理执行的完整实现解析

发布时间:2026/9/9 13:23:10
RuView 主动感知与可编程感知控制面:基于 ADR-280 的 SensingTask、AoI 调度与受治理执行的完整实现解析 RuView 主动感知与可编程感知控制面基于 ADR-280 的 SensingTask、AoI 调度与受治理执行的完整实现解析【免费下载链接】RuViewπ RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.项目地址: https://gitcode.com/GitHub_Trending/wi/RuView本篇技术指南以 RuView 仓库中已接受并实现的设计文档 ADR-280 为核心骨架剖析其从「被动感知」转向「可编程感知programmable perception」的完整技术方案。你将看到一个证据感知型传感任务SensingTask、带隐私上限的传感动作SensingAction、基于信息年龄age-of-information的空间刷新调度器、在时间/相位/几何三重校验下 fail-closed 的相干分布式孔径融合门、被当作受治理执行器对待的可编程射频环境RIS/可动天线以及经过泄漏校验的任务充分表示TaskSufficientRepresentation。读完后你能掌握这套控制面的每个契约在 v2/crates/ruview-unified/src/control.rs 中的真实字段、校验分支与对应测试并能解释它为何与 ETSI ISAC 数据面词汇对齐。一、从被动感知到可编程感知要解决的问题ADR-280 所记录的核心转变不是“再修一个感知算法”而是把「感知什么、何时感知、用什么模态、以多高保真度感知」本身变成系统的可控决策系统自主选择感知动作去消解不确定性必要时通过改变射频环境或移动感知 Agent 来主动获取证据。与之同时文档点名了新兴系统里最典型的一类失败模式——隐藏的同步与标定依赖共享时钟、已知天线姿态、稳定相位被静默假设一旦被打破就自信地给出错误结论。ADR-280 的立场是这两件事都必须归属控制面且在捕获开始之前、以 fail-closed 的方式处理。这条设计线属于 RuView v2「统一射频空间世界模型」决策族本 ADR 的父级是 ADR-273它扩展 ADR-277边缘感知控制面本 ADR 中的每个契约都与之组合隐私类 P0–P5 复用 ADR-262 的阶梯定义而 ADR-148 所描述的ruview-swarm移动 Agent 则是感知动作的消费方。实现集中在 v2 workspace 的ruview-unifiedcrate类型导出见 lib.rspub mod control;。二、证据纪律PROOF discipline每个断言都是一个具名测试ADR-280 继承了 ADR-273 §0 的证据分级体系。文档明确把 ESI-Bench 的 act-to-uncover 形式化、LuLIS 的 256 相干射频链分布式孔径、ETSI 的 cooperative-ISAC 与 AI/数据处理工作项、信息年龄数字孪生调度、语义/任务充分通信架构等全部归为 EXTERNAL-UNVERIFIED外部未验证——它们只能作为设计动机不能被当作本项目结果。反过来文档要求任何关于“我们自己行为”的断言都必须是一个具名测试。这个纪律直接决定了本文后续每个结论都可以回溯到 control.rs 内嵌测试模块中的具体#[test]以及 e2e_acceptance.rs 与 security_boundaries.rs 两条端到端/边界套件。三、证据感知型传感任务SensingTask在捕获之前就完成准入3.1 契约字段SensingTaskcontrol.rs是一个采用 ETSI ISAC 词汇的证据感知任务契约覆盖目的purpose、目标区域target_area: SpatialZone、可用模态modalities: VecRfModality、请求空间分辨率、延迟上限、最低置信度、raw 与 result 保留时间、授权消费者、同意引用consent reference。其关键设计是这些约束在捕获开始前被强制执行而不是事后作为元数据附加。从字段可以看出它的“证据感知”含义minimum_confidence: f64规定了置信度下限低于该下限的结果将变成“不作决策no decision”raw_retention_seconds与result_retention_seconds分别约束 P0 级原始数据与结果的本地保留窗口authorized_consumers声明哪些主体可以消费结果consent_reference则在目的需要时承载同意凭证。3.2 模态枚举任务的modalities直接使用 crate 级统一模态枚举RfModality定义于 tensor.rs包括WifiCsi802.11 每子载波频响、WifiCir时延域信道冲激响应、WifiBfReport802.11 波束成形反馈、CellularSrs5G NR 上行探测参考信号O-RAN ISAC 路径、FmcwRadar/FmcwRangeAzimuth/FmcwDopplerAzimuth、UwbCir、BleCs蓝牙信道探测以及SyntheticADR-276 合成世界产物必须带诚实标签。这说明SensingTask并不是 WiFi 专用契约而是多模态感知的统一准入入口。3.3 admit_taskfail-closed 准入函数admit_taskcontrol.rs是任务的唯一准入入口与 ADR-277 的PolicyEngine组合所有分支一律拒绝优先。其校验顺序与规则值得逐条记录raw 导出字段存在但永远被拒绝raw_export_allowed字段保留在契约中仅为 ISAC 词汇兼容但一旦为true直接返回PolicyDenied——因为 ADR-277 §2.1 通过类型结构raw RF 不可表示只有BoundedEvent可导出已经封死了 raw 导出的可能配置文件开关不能重新打开它。输入合理性校验minimum_confidence必须有限且在[0,1]requested_resolution_m必须有限且大于 0maximum_latency_ms必须大于 0modalities至少声明一个模态。身份目的双重门槛当purpose SensingPurpose::IdentityRecognition且没有consent_reference时在进入区域检查之前就被拒绝engine.authorize尚未执行。最终交给策略引擎engine.authorize(task.target_area.id, task.purpose)即未知区域、未授权目的均在此被拒绝。测试task_admission_is_fail_closedcontrol.rs验证了全部四条路径合法 Presence 任务通过任何 raw_exporttrue 被拒区域未授予的目的被拒Identity 无同意被拒。注意测试夹具中给出了一个可复现的合法任务模板control.rs分辨率 0.5 m、延迟上限 100 ms、最低置信度 0.8、raw 保留 60 s、result 保留 3600 s、消费者ha-bridge——可作为集成方构造任务时的取值参考。四、感知动作SensingAction与信息目标InformationGoal动作被定义为一类针对明确假设的、刻意的取证行为。文档给出的典型假设表述是“东侧走廊里有一个人静止站立或两个人距离很近”。ADR-280 对动作的界定是它必须受延迟、能量约束并且被一个**隐私上限privacy ceiling即 P0–P5 阶梯**所限制。对应实现中InformationGoalcontrol.rs携带人类可读的hypothesis、当前不确定性current_uncertainty[0,1]、目标不确定性target_uncertainty必须低于当前值、以及期望信息增益expected_information_gain启发式单位。SensingActioncontrol.rs在目标之上补充目标区域target_region、要用的模态modality、延迟预算maximum_latency_ms、能量预算energy_budget_j焦耳以及本动作允许产出的最高隐私类privacy_ceiling。动作正是规划器下文第五节、MetaHarness Agent、以及 swarm 无人机共同消费的统一“取证请求”形态。五、信息年龄调度器ActiveSensingPlanner刷新“旧的”而不是“全部的”5.1 空间孪生何时知道自己过时了一个空间孪生只有知道自己哪些部分过期了才真正有用。对每个区域SpatialStateFreshnesscontrol.rs维护五类状态最近观测时间last_observed_ns、期望变化率expected_change_rate、不确定度增长率uncertainty_growth_rate每秒、业务关键度权重business_criticality、以及感知该区域的成本sensing_cost。代码层还提供了两个#[must_use]计算函数uncertainty_at(now_ns)control.rs按uncertainty_growth_rate × 龄期累积不确定度并封顶在 1.0priority(now_ns)control.rs即 ADR 文档中的核心调度公式priority uncertainty(age) × change_rate × criticality ÷ cost其中uncertainty(age)正是由增长率与龄期累积而来代码分母对sensing_cost取max(1e-9)防除零。5.2 规划器每周期只发射“最高优先且超过阈值”的动作ActiveSensingPlannercontrol.rs暴露priority_threshold低于此优先级不值得在本周期感知、upsert_region注册/替换区域、mark_observed将某区域置为刚被观测以及核心的next_action(now_ns, modality)——它遍历所有区域过滤掉低于阈值的项选出最高优先级者产出具体SensingAction若没有值得感知的区域则返回None每周期至多一个动作。生成的SensingAction以aoi-region-now命名并自动把privacy_ceiling设为 P2匿名存在/占用级别可见规划器产出的动作本身就带有隐私上限的约束。5.3 两个可复现的测量/排序测试ADR-280 特意区分“架构估算”与“实测”排序正确性由planner_prioritizes_stale_critical_regionscontrol.rs单独证明三个区域emergency-exit 高变化率高关键度、server-room 中等等、storage 低等在同样 10 秒陈旧度下最高优先级是 emergency-exit观察它之后下一个被选中的是 server-room。流量削减 ≥70% 门禁由planner_reduces_sensing_traffic_versus_uniform_refreshcontrol.rs度量20 个区域、100 个调度 tick、只有一个 hot 区域变化率 1.0、关键度 5.0其余为冷区域。均匀刷新需要 20×1002000 次观测而 AoI 规划器只对 hot 区域持续感知仿真得到100 次观测、约 95% 的感知流量削减100/2000同时 hot 区域保持被观测测试的硬性断言是削减率≥ 70%。文档特别提醒这一数字来自合成场景测量对“变化有多集中”敏感不可简单外推。这也印证了 ADR-280 状态栏中“含一个已测量的 ≥70% 流量削减门禁”的说法其完整证据链都在该内嵌测试内。六、相干分布式孔径融合之前先证明兼容性否则降级为不相干处理这是针对“隐藏同步/标定依赖”失败模式的直接解药。CoherentSensorGroupcontrol.rs的立场是除非一个组能够证明彼此兼容否则不允许相干融合。组成员必须逐一满足每个成员都必须上报其同步状态MemberSyncState含member_id、相对组基准的时钟误差time_error_ns、相位误差phase_error_rad、以及标定基线几何的哈希geometry_hash时钟误差与相位误差必须落在组的容差范围内maximum_time_error_ns、maximum_phase_error_rad几何哈希必须与组的baseline_geometry_hash一致未知上报者同样被拒绝即使合法成员全部通过混入的非成员也导致整体拒绝。can_fuse返回带类型错误的Result对NaN/±inf也做了防护。测试coherent_fusion_fails_closedcontrol.rs精确枚举了文档所称的五条拒绝路径缺员少报一个成员、时钟漂移400 ns 超过 50 ns 容差、相位漂移1.0 rad 超过 0.2 rad、几何在标定后发生变化哈希从0xBEEF变为0xDEAD、非成员注入。文档指出这正是建筑级 WiFi 孔径即 LuLIS 方向的安全网同步条件不满足时系统退化为不相干处理而不是输出“自信的胡话”。七、可编程射频环境 受治理的执行器RIS、可移动天线、流体天线改变的是“哪些房间和人可被观测”因此其状态变更必须像感知一样受治理。实现分为三块ActuatorKindcontrol.rsRis、MovableAntenna、FluidAntenna。FieldActuatorcontrol.rs记录actuator_id、类型、建筑系下的位姿pose_m、支持的状态集supported_states: VecString、以及被它改变可观测性的affected_zone_id。request_actuationcontrol.rs是获得ActuationReceipt的唯一途径ActuationReceipt没有公开构造器见 control.rs。它校验两层执行器确实支持该状态且受影响区域在 ADR-277 引擎下授予了该目的。这样每一笔改变可观测性的执行比如为一个未获授权的目的去转向波束都会被策略引擎拒绝并留下审计轨迹。审计收据ActuationReceipt携带requested_state/applied_state、应用时间applied_ns、控制器身份controller_id、授权目的purpose——这正是 RIS 治理所需的“请求了什么、实际应用了什么、何时、谁、为何”的审计要求。测试actuation_requires_policy_authorizationcontrol.rs验证受权目的 支持的状态 → 返回收据不支持的状态如对只支持beam-east/beam-west的 RIS 请求beam-up→ 拒绝目的未在受影响区域授予用 Vitals 请求 Presence 场景的转向→ 拒绝。八、任务充分表示语义压缩必须通过泄漏校验“传输占用不确定性而不是传输 CSI”这类语义压缩要成立前提是压缩必须保持任务作用域task-scoped足以支撑匿名占用的表示不能偷偷保留身份信息。TaskSufficientRepresentationcontrol.rs携带task_id、源帧的source_receipts血缘、压缩后的semantic_state、声明的信息界information_bound_bits、显式排除的信息类别列表excluded_information如identity、vitals、trajectory-history以及表示的隐私类privacy_class。validate_representationcontrol.rs按目的实施隐私类上限 必须排除项的双重强制这张表是使用本模块时最需要对照的目的SensingPurpose隐私类上限必须显式排除的信息类Presence/ChannelDiagnostics≤ P2identity、vitalsActivity/Localization≤ P3identityVitals/PoseTracking≤ P4identityIdentityRecognition P5最高级无强制排除项任何表示只要privacy_class ceiling、遗漏了必须排除的信息类、或source_receipts为空无血缘的孤儿表示都会被返回带类型的策略错误。这里可以看到 P0–P5 阶梯定义见 control.rs的完整含义P0 为 raw 信号永不离开信任边界、P1 为高度聚合非个人信息、P2 为匿名存在/占用级、P3 为行为推断级、P4 为派生个人推断级、P5 为身份绑定级。测试覆盖很完整task_sufficient_representation_is_leakage_checkedcontrol.rs验证 Presence 场景下“正确排除→通过 / 忘排除 identity→拒绝 / 超过 P2 上限→拒绝 / 无血缘→拒绝”而task_sufficient_representation_covers_every_purpose_branchcontrol.rs专门补齐了其余目的分支Activity/Localization 的 P3、Vitals/PoseTracking 的 P4、IdentityRecognition 的 P5防止某个分支的缺陷在测试盲区中潜伏。九、与 ADR-277 策略引擎的边界分工本 ADR 的多数准入/授权最终都落到 policy.rs 的PolicyEngine。理解分工有助于正确组合两个 ADRSensingPurpose枚举policy.rsPresence/Activity/Vitals/Localization/PoseTracking/IdentityRecognition/ChannelDiagnostics是两者的共享词汇PrivacyZone声明区域授予的目的集、事件保留时长retention_s、以及身份的显式启用开关identity_explicitly_enabledengine.authorizepolicy.rs对未知区域、未授权目的、以及“未显式启用”的身份识别一律拒绝。需要强调的边界规则是ADR-277 §2.1 已把 raw RF 导出做成类型上不可表示——唯一可导出类型BoundedEvent只承载类型化判定Presence/ActivityClass/RespirationBpm/Location/AnomalyScore没有任何变体能携带 RF 样本TrustBoundary::export是唯一出口且没有序列化RfTensor的对外 API。因此本 ADR 中raw_export_allowed字段的“永远拒绝”不是靠一张配置表而是与结构层面的不可表示性共同闭合。身份同时被双重门槛保护必须在区域allowed_purposes里且必须identity_explicitly_enabledtrue。十、标准对齐与开放性ADR-280 把“词汇对齐”称为最强的战略接缝本文出现的 sensing task/service/entity、measurement configuration、sensing data/result/consumer/purpose、retention、result exposure 等刻意采用新兴 ETSI ISAC 数据面词汇使本 crate 有望成为 ISAC 数据处理的开放参考实现候选而非又一套并行方言。因此在使用本模块时尽量沿用这些标准术语来命名业务对象。文档同时明确充电/移动性管理charging/mobility management在出现蜂窝部署之前明确不在范围之内——这也是无需在契约中预留相关字段的原因。十一、后果与诚实的未实现范围实现带来的可验证后果MetaHarness/OaK 风格的 Agent 获得了一个类型化表面读新鲜度freshness、规划动作、接收收据——空间记忆与 Agent 规划在此汇合而无需触碰 raw RFP4 级别的分布式孔径工作直接继承了一道已经 fail-closed 的融合门端到端验收管线e2e_acceptance.rs确认“每个导出的输出都携带不确定度、来源、模型版本与目的并且只经由策略信任边界离开”边界加硬套件security_boundaries.rs则用 proptest 对任意值含经f64::from_bits走私的 NaN/±inf驱动每个校验构造器与授权门断言“合法对象或带类型错误绝不 panic、绝不宽松默认”。ADR-280 同时诚实记录了三项未实现内容使用本模块时不应假设它们存在信息增益information gain的估算由调用方提供——规划器当前使用的是陈旧度启发式而非互信息RIS 驱动、真实的多 AP 相干性测量属于硬件相关路线图项OTFS 波形控制同样属于未来路线图。如需在仓库内复现上述测试与基准可进入 v2 workspace 执行cargo test -p ruview-unified单元与验收测试与cargo bench -p ruview-unifiedcriterion 基准见 unified_bench.rs。控制面实现与 7 个内嵌测试全部位于 control.rs与本 ADR 章节一一对应可作为逐条核对设计的唯一事实来源。【免费下载链接】RuViewπ RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.项目地址: https://gitcode.com/GitHub_Trending/wi/RuView创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考