# 设备状态视觉特效与门控:本轮实施验证 ## 当前交付 修复提交:`35e5fabfd67077647190178eaabec8939418f1a4`(当前 master;未推送)。聚合折叠或静态设备接替入口时,最高优先级状态代表的光环跟随当前入口;展开可见设备恢复逐台光环。组内状态文字与设备自身状态分开;所选入口自身已表达相同最高状态时不重复叠环。公开读回增加光环可见性、聚合显示归属和屏幕偏移。 业务源码只有 `domain/overlapDevices.js` 的聚合状态文字和 `services/cesiumEngine.js` 的聚合代表/光环门控/读回;未新增监测点级特效,不更改状态映射、阈值、设备真实坐标或后端数据。同文件并行 creditContainer 与 tileset SSE 更改已从本人未推送提交中剥离,原样留在工作区。 ## 红→绿证据 - 原最小探针:ALARM+NORMAL同坐标,特效开启、异常数1、不降级。折叠和selected NORMAL下可见光环为0,展开和selected ALARM为5,退出码1。 - 新公开接口回归的第一条:完整加载生产引擎模块、真实Cesium Entity/Property/CustomDataSource;collapsed预期5、实际0,先失败再修复转绿。 - 第二条:selected NORMAL的聚合归属/可见性读回缺失,先失败再补读回及组内文字转绿。 - 自查同状态叠加:选非代表ALARM预期5、实际10,先失败再去重转绿。 - 最终新回归 **27/27**:三动态状态×NORMAL/OFFLINE/UNKNOWN、跨帧变化、展开偏移、预览收起、selected强化、同最高状态去重、K11容量之外的ALARM、30/31边界、关闭动效、图层隐藏恢复、stop、同编码状态/位置更新、光环拾取拒绝与设备入口拾取、撤层/换点。 - 四种内存变异全部被拒绝:owner-only 17项失败;wrong-representative 2项;fake-visible 4项;skip-cleanup 1项。变异只改测试加载的内存文本,不改生产文件。结果在 [最终变异](implement-final-mutations.json)。 ## 检查结果 一次完整非浏览器检查 **41/48组通过**,逐组 exitCode 与失败输出在 [套件结果](implement-suite.json)。排除浏览器脚本(含名称不像walkthrough的t28等)、浏览器CDP helper及会改写并行生产文件的旧t20 mutations。 七组失败已核对: | 检查 | 失败事实 | 本轮处理 | | --- | --- | --- | | t06-assets | JSON import缺type attribute(Node24) | 未改资产导入 | | t11-equipment-detail | F7组件局部ref旧守卫 | 未改组件 | | t17-infrastructure-panels | MANAGEMENT_REGION_GAP导出已不存在 | 未改基础设施视图 | | t18-monitoring-panels | REGION_MAP_GAP导出已不存在 | 未改筛选/监测视图 | | t20-overview-panels | B4/C2区域与D2b载荷引用断言失败 | 未改概览契约 | | t37-area-limits | 外壳无data-area-state旧读数断言 | 未改外壳 | | t38-fog | 外壳无data-fog-chip旧读数断言 | 未改外壳/雾逻辑 | 最终去重补丁后受影响的 **16/16组**通过:[最终相关回归](implement-final-related.json)。包含领域适配/状态、定位锚定、设备层/联动/资产、重叠/持续选中/高程、模式、动效/主场景/清晰度、新组合、真实信封/联动不变量。两个业务JS的node --check通过,git diff --check通过。本项目默认JS,ADR0006不引入新的TypeScript设施;语法检查不是静态类型检查。 ## 对抗式自查 - [x] 边界:K2/K11、30/31异常、最高状态在展开容量之外、同状态代表/所选设备去重。 - [x] 异常分支:NORMAL/OFFLINE/UNKNOWN无自身动画,effects off、degraded、source.show=false、stop/撤层无可见残环。 - [x] 回归:设备身份/聚合入口、pixelOffset、拾取拒绝光环、选中强化、锚定/模式/图层相邻套件通过。 - [x] 并发与旧数据:同编码状态/位置重新同步不留旧环;关层取消帧调度;新点新设备不残留旧owner。异步定位/token规则沿既有实现并由相邻回归通过;本次不改网络竞态。 - [ ] 真实场景:尚未做GPU渲染/区域像素帧差、雾及透明管线同屏、真实交互/性能采样和维护者目视确认。 按AGENTS.md,本轮跳过build/debug、服务启动和浏览器调试/截图;用户要求跑测试仅用于上述非浏览器检查。代理Viewer/帧调度/时间以及GPU投影不等于真实页面证据。保持票open/claimed,剩余场景验收不得勾为完成。 ## 双轴审查 已完成:按维护者确认的基点 `fe3a095c28f890a44dcd4eec79004902baef8e97` 与修复提交 `35e5fabfd67077647190178eaabec8939418f1a4` 比较。并行无关文档提交通过路径范围排除,使用提交内容检查而非混入当前工作树。 ### Standards 0硬性标准违规。1低优先级判断项:两个入口重复同一标签表达式,属于possible Duplicated Code;重复很小,可在后续维护提取组标签,不阻塞修复。其余纯JS、领域/服务边界、真实Cesium对象测试均符合AGENTS/ADR0004/0006及CONTEXT,未发现应阻塞的气味。本轮未为非必要重构扩展代码。 ### Spec 0可复现新增规格缺陷、0未请求越界。最高组状态来源身份保持,展开恢复设备位置/偏移;静态设备自身不动画,同最高状态所选入口去重,阈值/K/N/拾取身份未变。明确待验收项:真实用户路径、GPU场景帧差、雾/透明管线组合、性能、人工确认;因此本票仍open。 审查者额外在内存执行提交版本27/27回归及4项检查(开关恢复、多独立组隔离、近坐标借位后恢复、同编码ALARM→WARNING→NORMAL),结果通过。其过程一次多组预期计数写错后已纠正,不作为产品缺陷。实体visible不是GPU可见像素证据。 两轴合计:Standards 0硬性问题/1可选建议,最重为标签重复维护建议;Spec 0新增代码问题/1组验收待办,最重为真实场景与人工验收未完成。