瀏覽代碼

docs(cockpit): close pipe modeling feature with evidence boundary (#32)

Kazerin 5 天之前
父節點
當前提交
16a446d4cb
共有 2 個文件被更改,包括 52 次插入 和 3 次删除
  1. 15 1
      .scratch/cockpit-real-data-wayfinding/issues/32-32.md
  2. 37 2
      .scratch/cockpit-real-data-wayfinding/map.md

+ 15 - 1
.scratch/cockpit-real-data-wayfinding/issues/32-32.md

@@ -3,7 +3,7 @@
 # 32: 管线构件 glTF 素材与实例化渲染(样条/角/阀门/支管四类)
 
 Type: task
-Status: claimed
+Status: resolved
 Label: ready-for-agent
 Category: frontend-execution
 
@@ -47,6 +47,16 @@ Category: frontend-execution
 
 ## 进度
 
+**最终状态:resolved(2026-10-15)。** 用户确认“基本没有问题,可以尝试收口”,据此完成功能交付收口、关闭票据并完成关闭report。该确认不转化为缺失的性能或故障画面测试证据。
+
+- 实施:四类glTF/GPU实例化、明示虚拟埋深及示意放大、地面近景保留2D导引、缺径显示默认DN160/400/800/800;源径/双侧推算与显示默认分开。排水按network_level 0污水/1雨水、缺失按0,非排水忽略,旧数据库不改。
+- 已交付:前端`e518ba0`、`aa529db`;后端`a96091ce`、`1d1461a5`、`7150d431`;几何23/23、Cockpit489/489和相关领域/Cesium适配器回归通过;此前真实近景画面及本轮诊断记录均保留。
+- 保留后续事项:最后一次运行接口检查缺少networkLevel键,部署/重载7150d431后需复验字段与真实等级1数据;没有在本次关闭时重新请求接口,不能将历史环境结论当作今日运行状态。旧数据/新数据导入由用户管理。
+- 未取得完整通过证据:4K正常桌面平均FPS≥30、浏览器模板404及四类最终完整画面;最终构建受共享依赖缺失阻断。按用户确认关闭功能票,以上仅作为记录在案的后续复验,不标成已通过。本次只做票据/地图收尾,按项目规则未新增build/debug或截图。
+- 证据入口:[模式及network_level修复记录](../verify/artifacts/t32/view-mode-network-level-fix.md)、[真实近景记录](../verify/artifacts/t32/visibility-fix-and-evidence.md)、[帧率限制记录](../verify/artifacts/t32/visibility-performance.json)。
+
+### 实施与验证历史(以下未完成状态为当时记录,以最终状态为准)
+
 - 已认领 @me、完整读票并 report。ready-for-agent,无 needs-triage、无阻塞;父 map 允许执行。本轮保留其他任务工作树,提交仅选择本票增量。
 - 用户裁定(2026-10-13补充):低多边形标准示意;地表采样减虚拟埋深2m(非实测);已知管径按mm→m。缺管径允许在同业、端点完全重合且无分叉的连续链上,以两侧不同已知管段为锚点,按缺失段路径中点距离线性插值,保留两侧code/diameterMm、标记interpolated;单侧/无锚点/同一锚点闭环/分叉不补,不吸附邻近端点、不回写。路径不平滑/不生成安装拓扑;未知构件尺寸约1m、固定朝向明示近似;沿用地下视图。原4K平均FPS≥30与构建/回归/浏览器授权保留。
 - 已实施:四类五模板(样条、弯头、阀门、三通、十字);EXT_mesh_gpu_instancing、ENU空间批次、稳定外部bin跨批共享几何;readyEvent后替换备用表达,初始/后续资源或地表失败降级、30s冷却后刷新重试;稳定批不重建,跨首次dynamic import和模型异步的清层代次守卫;已有信息面板展示虚拟埋深/近似与降级原因。
@@ -96,5 +106,9 @@ Labels: ready-for-agent
 
 **注意**:远端基底在我会话前就已前进(含「移动端-工单管理」等提交),所以分叉**不是我造成的**;我只是在远端新基底上多加了 1 个提交。你们推 `a96091ce` 时本来也需要先变基。
 
+### local — 2026-10-15T01:40:04.117Z
+按用户“基本没有问题,可以收口”要求关闭本票。已完成:地面视图近景始终保留2D导引;管线视图ready模型近景导引按600m规则显示;network_level仅对DRAINAGE生效,0/旧空值为污水、1为雨水,非排水忽略;缺径显示默认DN160燃气/DN400供水/DN800排水,visual-default不改源径;异步模式切换、模型失败和元数据替换回归通过。前端提交aa529db,后端提交7150d431;Geometry 23/23、Cockpit 489/489通过。当前运行后端实例尚未部署networkLevel字段,真实旧接口2729条排水均无该键,重启/部署后新等级数据即可显示雨水;4K FPS/浏览器404完整门槛按真实边界保留记录。
+
+
 
 ## Answer

+ 37 - 2
.scratch/cockpit-real-data-wayfinding/map.md

@@ -50,16 +50,33 @@ Labels: wayfinder:map
 - [x] [25: 前端执行票 —— 去除 Cesium ion 署名与 Data attribution 控件](issues/25-25-cesium-ion-data-attribution.md) — 署名已移出画面,数据来源署名并入外壳既有状态面板;浏览器验收 0 报错、0 条 ion 请求
 - [x] [后端执行票 —— 设施总数三处口径不一致(5278 / 5276 / 5273)](issues/31-5278-5276-5273.md) — 已实施、测试、真实复验并关闭;提交 `96834794` 已推 origin/master,现场三端 facilityCount 均 5283
 - [x] [24: 前端执行票 —— 设施点位与管线真实几何图层接线](issues/24-24.md) — 四条验收全过:真实 5268 条管线绘制、图层显隐正确、无地图位置清单自洽(5287/5281/6)、设施总数三端一致 5283
-- [ ] [32: 管线构件 glTF 素材与实例化渲染(样条/角/阀门/支管四类)](issues/32-32.md) — 由票 24 收口派生:构件目前是可辨识符号,非 glTF 管道模型
+- [x] [32: 管线构件 glTF 素材与实例化渲染(样条/角/阀门/支管四类)](issues/32-32.md) — 用户确认功能收口;glTF实例化、地面近景保线、network_level分色及缺径默认DN已交付;未完成的部署/性能复验见票面最终状态。
 - [x] [34: 坐标自动准入(取消人工校核前置)与主场景区边界冲突](issues/34-coordinate-auto-admission.md) — 已实施、独立复核并关闭;真实接口 12/15 与 5269/5272、零 `UNVERIFIED`,区外口径裁定 A。原编号 32 与 glTF 素材票重号,已改号 34
 - [x] [27: 前端执行票 —— 监测点台账分母渲染 undefined](issues/27-27-undefined.md) — 已修复并关闭:空态 `section.data` 为 null 使守卫漏判 `undefined`,改用 `numberish()` 收口;离线 8/8 + 真实浏览器正反证成对取得
 - [x] [26: 诊断票 —— 主场景等待后画面抽搐的根因定位](issues/26-26.md) — 已诊断收口:根因=30s freshness tick 的全量分页重载使 `syncPipeLayer` 每批重赋值 5000+ 实体几何;修复归票 33
-- [ ] [33: 前端执行票 —— 每 30s 刷新触发全管线重同步的画面抽搐修复](issues/33-33-jitter-fix.md) — 按票 26 修复建议实施真 diff + 防抖 + 标记差量;真机回归判据已锚定票 26 探针
+- [x] [33: 前端执行票 —— 每 30s 刷新触发全管线重同步的画面抽搐修复](issues/33-33-jitter-fix.md) — 已实施并关闭(维护者目视终判);**改动尚未提交**(工作树混有并行在制品,入库须单独裁剪),详见 Decisions so far
+- [ ] [37: 前端执行票 —— 共用长文本省略方法 + 监测概览设备类型分布筛选与降序排序](issues/37-shared-ellipsis-and-type-filter.md) — 已实施、离线闸门 28/28(含 4 处变异有牙)+ 既有闸门回归;**改动未提交**(混有并行在制品),浏览器走查待用户明确要求;38/39/40 依赖的省略方法(`domain/ellipsis.js` + `EllipsisText.vue`)已就位,详见票面实施记录
+- [ ] [38: 前端执行票 —— 基础设施面板调整(基础档案同行 / 删除规模 / 运行信息定位修复 / 管理信息片区×行业图表)](issues/38-infrastructure-panel-adjustments.md)
+- [ ] [39: 前端执行票 —— 运行监测面板图表化(监测概览读数 / 监测分布分节)](issues/39-monitoring-charts.md)
+- [ ] [40: 前端执行票 —— 运行概况与监测点台账卡片化 + 定位修复](issues/40-operation-ledger-cards.md)
+- [x] [41: 后端执行票 —— 预警设置端点改为预警自身生命周期统计](issues/41-warning-settings-endpoint-rework.md) — 已实施、测试、第二实例真实复验并推送关闭;预警族改预警自身生命周期(WarningWorkflow 六态/等级/行业/片区分布 + 已解除率),报警族保留工单口径并存 `alarm_status` 生命周期;契约测试 24/24、全量 498/498、真实分布四组和恒等于 total;提交 `b047a60d` 已推 origin/master;基线卡片 [warning-settings-lifecycle](handoff/baselines/warning-settings-lifecycle.md)
+- [x] [42: 前端执行票 —— 预警设置面板消费预警自身生命周期契约](issues/42-42.md) — 已实施、守卫、mock 同构并收口(提交 `0cd16ac` 本地未推送,推送需维护者裁剪协调,见票面);预警族工单口径 null 保真 + 四分布块,报警族工单口径与 `alarm_status` 分布并存,态势总览改预警已解除率;t42 守卫全绿、t20 守卫随契约更新(6 条既有红经 HEAD 基线对照与本票无涉);真实走查归票 17 部署窗口
+- [x] [35: 后端执行票 —— 监测三端点 createdAt 真实契约缺失](issues/35-createdat.md) — 已实施、测试、真实复验并关闭;新增单一口径来源 `CockpitCreatedAt`,三端点信封级 + 逐对象 `createdAt` 齐备,`t18-real-audit` 140/143 → **143/143**;提交 `05c23774` 已推 origin/master
+- [x] [36: 前端执行票 —— 调色后处理着色器编译失败使地图停止渲染](issues/36-untitled.md) — **已修复、提交并关闭**:限定提交 `850c6c6`(shader 一行 `varying`→`in vec2` + t49 闸门 GLSL3 反向锁定与截断哨兵,哨牙经变异测试证实);纯提交内容 worktree 复跑 t49/t38 全绿、GLSL1 零残留、真机零 shader 错误、CDP 交互探针 9/9(四模式/定位/跨刷新周期,引擎恒 ready、`mapGrade=on`)。未推送——分支 16 个未推送提交多为并行在制品,不代推。根因=GLSL1 `varying` vs Cesium WebGL2 `#version 300 es`(引入 `e2529b5`);诊断期曾与[票 49](../cockpit-shell-panel-layout/issues/49-3d-glsl.md) 判重(同修法一致),维护者指令后固化提交收口。
 
 > **tracker 重号已修(2026-10-12)**:坐标自动准入票原编号 32 与 [32-32.md](issues/32-32.md)(管线构件 glTF 素材)重号,已改号为 **[34](issues/34-coordinate-auto-admission.md)**,全 effort 票号唯一性恢复。
 
 ## Decisions so far
 
+- [管线构件 glTF 素材与实例化渲染(样条/角/阀门/支管四类)](issues/32-32.md) — 2026-10-15按用户“基本没有问题,可以收口”确认关闭功能票:四类示意件/GPU实例化、地面近景保线、排水network_level分色和缺径默认DN交付(前端`aa529db`、后端`7150d431`);部署字段、4K FPS及浏览器故障画面的未验证边界留在票面最终状态,不声称全门槛通过。
+
+- [42: 前端执行票 —— 预警设置面板消费预警自身生命周期契约](issues/42-42.md) — **已实施、守卫、mock 同构并关闭(2026-10-14,提交 `0cd16ac` 本地未推送)**。前端适配后端 `b047a60d` 两族口径分叉:`toOverviewWarningSettings` 对预警族工单口径字段 **null 保真**(不再补 8 根假零条、`numberish` 不数 0),四组生命周期分布直读透传(`sum(桶)==total` 自洽);视图拆 `warningFamilyBlocks`(KPI=总数+已解除率,四分布块,零工单词汇)与 `alarmFamilyBlocks`(工单口径 + `alarm_status` 分布并存);态势总览处置率 KPI 改**预警已解除率**(hint 写明分子分母,判据复用票 20 单源)。mock 同构(含 UNKNOWN/UNASSIGNED 显式桶、空场景全铺计数 0)。**守卫**:新增 t42 契约脚本(基线卡片 §4.2 真实值过领域+视图两层);t20 守卫随契约更新(B3c→报警族、B3e/B3f/C4d 新增、M4 锚点重定位、M14 新增——已用领域层直证变异必被 B3e 抓住)。**验证**:t42 全绿;t20 **60/66**,6 条红经 HEAD 临时 worktree 基线对照证实为**既有失败**(57/63 同样 6 条,与本票 diff 零交集)。**入库纪律**:工作树混有票 37–40 孤儿在飞批次,经 git plumbing 只暂存本票 hunks,孤儿批次字节未动;提交版先在 HEAD worktree 过语法+t42 全量断言。**未推送**(本地领先远端 19 提交,多为并行在制品,不代推)。遗留:真实走查归票 17 部署窗口;预警族 KPI 行混用 alarm_status 与工单两种口径属后端契约语义问题,建议维护者裁定。
+
+- [36: 前端执行票 —— 调色后处理着色器编译失败使地图停止渲染](issues/36-untitled.md) — **已修复、提交并关闭(2026-10-14,实施提交 `850c6c6`)**。**根因**:调色后处理 `GRADE_FRAGMENT_SHADER` 用 GLSL1 的 `varying`,而 Cesium 1.145 在 WebGL2 下对全部 shader 前置 `#version 300 es`(GLSL ES 3.00 删除 `varying`)→ 编译失败即整帧 `Rendering has stopped`(黑屏);引入提交 `e2529b5`(同文件雾 shader 早在 `8db64fc` 已迁 `in vec2`,调色漏迁),触发条件=调色默认启用且部署 config 显式启用。**修复(限定 2 文件 +12/−4)**:片元输入一行 `in vec2`(采用票 49 已验证修法——诊断期曾判重,维护者 /implement 指令后固化提交);t49 闸门从「把 bug 当规格」(原断言 `varying` 正确)反向锁定为 GLSL3 断言 + GLSL1 拒绝 + **截断哨兵**(`void main` 存在性,防提取正则被杂散反引号静默截断 fail-open——变异注入反引号闸门转红、还原转绿,证明哨兵有牙)。**验证三面**:纯提交内容(临时 worktree)复跑 t49/t38 全绿 + GLSL1 零残留;真机 dev 实例连续渲染零 shader 错误;CDP 无头交互探针 **9/9**(`verify/artifacts/t36/probe-acceptance.mjs`:四模式切换/真实对象定位/跨 freshness 周期静置 35s+30s,引擎恒 `ready`、`mapGrade=on`、零 pageerror、帧形态无周期尖峰——绕开浏览器会话 5 上限,复用票 26/33 的 cdp-driver 模式)。**未推送**:前端分支 16 个未推送提交多为其他会话在制品,不代推;缺陷本不在 `origin/master`(无调色处理级),随分支统一推送上线。**方法论**:限定提交用「HEAD blob + 单行替换 → hash-object 写 index」精确暂存,不触碰工作树 229 行并行改动;提交自洽性用临时 worktree 在纯提交内容上复跑闸门证明,而非只信工作树绿。
+
+- [41: 后端执行票 —— 预警设置端点改为预警自身生命周期统计](issues/41-warning-settings-endpoint-rework.md) — **已实施、测试、第二实例真实复验并关闭(2026-10-14)**。**口径裁定(维护者本会话)**:预警不走工单流程 → 预警族只给预警自身生命周期(`WarningWorkflow` 六态/等级/行业/片区分布 + 已解除÷总数,工单口径六字段一律显式 `null` 不用 0 冒充);**报警族保留工单口径**(报警靠工单闭环)并并存 `alarm_status` 自身生命周期。**诊断修正**:票面的 `dispatch_user` 故障已过期,复测为 `dept_id`(实体声明已删列),真实根因是运行构建落后库结构——上游 `94bb7e4d` 已删该列,故本票基于 `origin/master` 独立 worktree 实施,未动共享工作树的并行在制品。**验证**:契约 24/24、全量 `Cockpit*Test` **498/498**(变基后复跑);第二实例(8399,同库同 Redis)实测 `code=200` 且预警族四组分布和恒等于 total(31)、报警族 66 自洽;对照共享实例 8301(上游构建)仍回旧契约,证明新契约出自本票。提交 **`b047a60d`** 已推 `origin/master`(`05c23774..b047a60d`)。前端消费侧(读新分布块 + mock 同步)另立票。基线卡片 [06 预警设置生命周期](handoff/baselines/warning-settings-lifecycle.md)。
+
+- [35: 后端执行票 —— 监测三端点 createdAt 真实契约缺失](issues/35-createdat.md) — **已实施、测试、真实复验并关闭(2026-10-14)**,解除了票 18 阶段收口的最后一项技术阻断。**根因**:字段从未实现(cockpit 包 `createdAt` 零命中、`git log -S createdAt` 零提交),已排除「部署滞后」「Jackson NON_NULL 省略」「字段名/落点不同」(反证:同响应 `district`/`reason`/`longitude` 等 null 均显式序列化)。**实现**:新增单一口径来源 `cockpit/foundation/CockpitCreatedAt`——只做 `create_time` → `createdAt` 格式化与跨来源 max,**不读时钟**,故「拿响应时间冒充数据时间」在结构上不可达;按规格 08 补齐三端点信封级 + `distribution` 点位/未关联设备 marker + `situation` 异常设备逐对象。**口径**(维护者 2026-10-14 裁定 Q3):`situation` 信封取异常设备来源表 `create_time` max(与逐对象同源可复算),事件时间仍由趋势桶 `bucketStart` 承载。**验证**:`Cockpit*Test` **507/507**(新增契约 18 项);真实只读三端点 `createdAt` 齐备、均 ≠ `updatedAt`,`distribution` 6/6 点位 + 9/9 设备、`situation` 8/8 异常设备逐对象齐备且信封 == 逐对象 max(自洽复算);权威审计 `t18-real-audit` **140/143 → 143/143**;前端三面板「数据时间」由 `—` 变真实值。**源表核对**(Kingbase JDBC 直连,非只看响应自证):`monitor_point` 六点位 `create_time` 全 NULL、`21119740` NULL 而另两台为 `15:15:12`/`15:15:47`——逐对象 `null` 属**数据真实缺失**,非映射缺口。提交 `05c23774` 已推 `origin/master`(`5a821872..05c23774`)。**并行在制品纪律**:只裁剪本票 20 个文件提交,变基推送时临时 stash 并行会话 #32 几何在制品并**按字节还原**(5 文件 `git hash-object` 逐一 IDENTICAL)、分支 tip 复位,未代表他人提交或推送。
 - [24: 前端执行票 —— 设施点位与管线真实几何图层接线](issues/24-24.md) — 真实设施与管线几何已接上图并四条验收全过:权威读取路径定为**后端驾驶舱自建几何读模型**(复用业务 GIS 端点会撞 ADR 0005 免鉴权边界且只覆盖供水),渲染层定为 **Cesium**(实测栈内零 three/Tres,规模仅数千段);程序化建模按**燃气出全套构件、其余行业如实降级**(只有燃气有 `point_type` 构件属性,管段无共享端点拓扑故不推断角/支管)。真机实测真实 5268 条管线绘制、无地图位置清单与徽标自洽(5287/5281/6)、设施总数三端一致 5283。过程中逮到并修掉两个真缺陷:**取数失败被显示成"没有管线"**(失败交 `null` 而非空数组)、**`loaded.total` 漏加不可图数**。构件 glTF 素材另立[票 32](issues/32-32.md)。
 - [34: 坐标自动准入(取消人工校核前置)与主场景区边界冲突](issues/34-coordinate-auto-admission.md) — **取消人工校核前置**:`coordinateVerified` 不再参与判定,改「结构合法 + 落在 `map.primaryArea.bounds` 内」自动准入,新增原因码 `OUTSIDE_PRIMARY_AREA`,判定顺序「结构错误优先于区外」。**根因**是判据第一道 `if (!coordinateVerified)` 恒拦下全部真实数据,而全后端既无校核列也无校核入口(管理端 `E:\city-life-line` 零引用已复核)——前端「只认 renderable」是正确行为。真实接口闭环:`map-snapshot` **0/15 → 12/15**、`unverifiedCount` **15 → 0**;`infrastructure/geometry` **0/5272 → 5269/5272**;5 端点扫描零 `UNVERIFIED` 残留;5272 条几何跨界 **0** 条。**区外口径裁定 A(严格主场景区)**:接受框外不上图/不可定位,ADR 0009 的框外定位例外经产品路径已不可达(相机层实现保留),并写入「准入矩形后端是常量、限位侧是配置,改一处必须改两处」的同源警告。独立复核补记:修复提交曾只在本机未推送(从远端部署会静默回退),经核对已由并行会话变基推送至 `origin/master`(`f33ef570`/`d81c977b`,patch-id 与旧哈希逐位相同)。**遗留**:3 条脏几何(`YL-YJ-001/002`=`1212,1212`、`GD-001`=`12,12`)属业务侧订正。原编号 32 与 glTF 素材票重号,已改号 34。
 - [23: 前端执行票 —— 地图快照分页 token 与 pointStatus 八桶契约对齐](issues/23-23-token-pointstatus.md) — 前端交付(缺 token 停住翻页、`toStatusDistribution` 八桶完整性校验——缺/重/非法/负/非整数桶一律 `available:false` 不补 0、`statusFilterQuery` 白名单丢弃 `BOGUS` 不发脏值)在 #29 关闭后完成两项真实验收收口:状态栏与饼图显示真实八桶(EMPTY=6、UNASSOCIATED=7 其余 0,同源),多选筛选使点数 13→1(ALARM)→2(+WARNING),全局计数不随筛选变化;`BOGUS`/`ALARM,BOGUS` 两端 400 `INVALID_REQUEST`,分页 token 跨页保留。前端源码本轮未改(仅既有 `mapSummary.js` 防护),重跑 [t23-map-contract](verify/t23-map-contract.mjs) 11/11 过;真实浏览器验收证据取自 #29 同环境会话,本会话未重跑(构建/浏览器按项目规则未被要求)。
@@ -100,6 +117,8 @@ Labels: wayfinder:map
 - [19: 后端执行票 —— 预警/事件族故障根因(部署时序错位,非缺列)](issues/19-19-early-warning-warning-name.md) — **已按证据收口(验收四条全过)**:根因是部署时序错位(旧构建 `d8a6b03` 仍读已被 `927fad2` 删除的 `early_warning.warning_name` 列),无需新代码;票 30/31 现场复验的「后端重启」已把实例带过该提交——实测 PID 27208(2026-10-12 20:13:30 启动),`HEAD=origin/master=d81c977b`、`927fad2` 为其祖先。带参探测 10 个受影响端点全部 HTTP 200+业务 `code=200`,报警字段真实(`eventName`/`level`/阈值/坐标);**`warningName` 随新契约整体移除**(5 个事件族响应 0 次出现),事件名统一由 `eventName` 携带。**t18 真实审计 140/143**(票 22 时代 33 败),`events-*`/`warning-*` 失败清零,余 3 项均为基线卡已记的 `monitoring-createdAt` 后端缺口(不属本票);141 次请求零 5xx。**新事实核对推翻了立票预判**:预警事件并未失去坐标——6/6 经**设备回联**携带有效坐标(`VALID/renderable=true`),删的只是 `early_warning` 表自有经纬度列;「无坐标预警呈现」担忧未触发(前端无锚点纪律仍兜底将来真无坐标情形)。**票 26 的最后一道阻塞(#19+#22)已全部解除,#26 成为通往阶段收口 #18 的唯一前沿票。**
 - [26: 诊断票 —— 主场景等待后画面抽搐的根因定位](issues/26-26.md) — **已诊断收口(修复归新票 33)**:「等待一段时间后整个画面抽搐」=每 30s 的 freshness tick(`DEFAULT_REFRESH_SECONDS=30`)触发 `mapStore.refresh()` 全量分页重载(8 批、auto-batch 120ms),**每批到达**都经 `summary.objects` watcher → `applyMarkers()` 做两件事——标记层 `entities.removeAll()` 整层重建 + **管线层 `syncPipeLayer` 名义 upsert 实为全量重赋值**(`existing.polyline = spec.polyline` 等,Cesium 属性订阅 → 5000+ 贴地折线几何失效重 tessellate);`modeLayerPlan` 每次 `pipelines.slice()` 新数组引用使 `deep:false` watcher 也拦不住。**证据**:CDP 无头探针两轮复跑——静置 p50=16.7ms,30s/60s 窗口 p95 冲 400-666ms、长任务(~175ms)与 `map-snapshot` 响应 ±500ms 精确对齐;相机/雾/交接/区域状态机全程 0 翻转(**排除票面候选四族**)、WS 0 帧、0 报错。**消融 A**(15s 后拦 `map-snapshot`)周期性 stall 消失(p95 回 16.7ms);消融 B(缓存回放)因探针补丁干扰**作废不采信**(已如实记录)。修复建议四条(`syncPipeLayer` 真 diff / 计划层引用记忆或 debounce / 标记差量 / 不改刷新语义)与真机回归判据已写入[票 33](issues/33-33-jitter-fix.md),33 已接入票 18 阻塞链。
 
+- [33: 前端执行票 —— 每 30s 刷新触发全管线重同步的画面抽搐修复](issues/33-33-jitter-fix.md) — **已实施并关闭(维护者目视终判「目前没有再见过抽搐问题了」)**。按票 26 四条建议全做且**未动刷新语义**:`syncPipeLayer` 领域输入内容指纹先行比对(未变零属性写入、连 spec 构建都跳过,返回 `added/updated/removed/unchanged` 可观察计数);`modeLayerPlan` 去 `slice()` 原样引用;`MapCanvas` 批间 120ms 领先+落尾合并;`syncPointMarkers` 去 `removeAll()` 改 id+指纹增删改。**证据三层**:离线闸门 [t33-jitter-diff](verify/t33-jitter-diff.mjs) 15/15(引用身份断言证零重赋值——还原旧写法必转红);真机 dev server + real 后端**同环境修复前后对照**(基线复现成簇 685–1080ms 纯 snapshot 长任务、tick 增量 +33ms;带修复 **tick 增量 −0.1ms**,刷新窗 p95 216.7 ≈ 静置 216.8ms,0 pageErrors);t47/t48 离线 6/6。**方法论(本票最重要的一条)**:票面绝对阈值 (a)±500ms / (b)p95≤33ms 在当前**无 GPU 软渲染 + 票 35 的 v8 白模持续流送**环境物理不可达(静置底噪 p50≈200ms;票 26 的 16.7ms 基线属 v6 素材时代)——环境底噪污染绝对毫秒判据时,用**同环境 A/B 对照 + 病灶专属口径(tick 增量/成簇形态/纯 snapshot 簇)**定性,不拿绝对阈值假装通过也不因它否掉真修复;阈值本身维持原样供 GPU 真机复跑。⚠ **关闭≠已入库**:改动仍在工作树(混有票 32/35 并行在制品,`MapCanvas.vue`/`cesiumEngine.js` 尤甚;`cesiumPipeLayer.js` 已确认与票 32 的 `onModelChange`/`layerVersions` 共存未互相覆盖),入库须单独裁剪 4 源文件 + `verify/t33*` + `verify/artifacts/t33/`。浏览器层 t47 走查需临时翻 mock 配置(归并行会话在用,本会话未动)未跑,归票 47 自己的 mock 窗口。
+
 ## Not yet specified
 
 - 首批真实接线完成后,基础设施四个面板各自需要哪些真实适配器、`district`/`ownership_unit` 的筛选与展示边界,以及井盖(`MANHOLE`)跨端是否已可用。
@@ -118,6 +137,22 @@ Labels: wayfinder:map
 
 ## Current status
 
+**2026-10-14 票 42 已收口(前端消费票 41 的新契约)**:[42 预警设置面板消费预警自身生命周期契约](issues/42-42.md) 实施、守卫、mock 同构并关闭(提交 `0cd16ac` 本地未推送——本地领先远端 19 提交多为并行在制品,不代推)。预警族工单口径 **null 保真**(不补假零条)+ 四组生命周期分布块;报警族工单口径与 `alarm_status` 分布并存;态势总览 KPI 改**预警已解除率**。新增 t42 契约守卫(基线卡片 §4.2 真实值过领域+视图两层);t20 守卫随契约更新(B3c→报警族、B3e/B3f/C4d 新增、M4 重定位、M14 新增)。t20 闸门 60/66:**6 条红(B4/C2/D2b/D3/E2/F3)经 HEAD 基线对照证实为既有失败**(与本票 diff 零交集);变异闸与 t50 因并行会话清空 `node_modules/@babel/*`(16:03)暂无法跑,恢复后建议复跑。**真实走查前置=共享实例滚动部署 `b047a60d` + 维护者授权浏览器验收,归票 17。**
+
+**2026-10-14 票 41 已收口并另立前端票 42**:[41 预警设置端点改为预警自身生命周期统计](issues/41-warning-settings-endpoint-rework.md) 按维护者本会话裁定实施 —— 预警族只给预警自身生命周期(`WarningWorkflow` 六态/等级/行业/片区分布 + 已解除÷总数,工单口径六字段显式 `null` 不用 0 冒充),**报警族保留工单口径**(报警靠工单闭环)并并存 `alarm_status` 生命周期;诊断修正了票面根因(`dispatch_user` → `dept_id`,实为构建落后库结构,上游 `94bb7e4d` 已修)。基于 `origin/master` 独立 worktree 实施,未动共享工作树的并行在制品;契约 24/24、全量 **498/498**、第二实例(8399,同库)实测 `code=200` 且分布四组和恒等于 total;提交 **`b047a60d`** 已推 `origin/master`。前端消费侧由 **[42](issues/42-42.md)** 承接并已收口(见上条)。
+
+**2026-10-14 票 35 已关闭、票 36 已修复关闭(票 18 两项技术阻断均已处置)**:票 35(监测三端点 `createdAt`)实施并真实复验通过 —— 新增单一口径来源 `CockpitCreatedAt`(不读时钟,结构上无法用响应时间冒充数据时间),三端点信封级 + `distribution`/`situation` 逐对象 `createdAt` 齐备,`map-snapshot` 与 archive 未新增该字段;`Cockpit*Test` **507/507**(新增契约 18 项),真实只读复验字段齐备、信封 == 逐对象 max(自洽复算)、均 ≠ `updatedAt`,`t18-real-audit` **140/143 → 143/143**,前端三面板「数据时间」由 `—` 变真实值;提交 `05c23774` 已推 `origin/master`。票 36(调色 shader 编译失败)已修复收口:根因是自有调色 shader 用 GLSL1 `varying` 而 Cesium 1.145 在 WebGL2 下前置 `#version 300 es`(引入 `e2529b5`),限定提交 `850c6c6` 一行 `in vec2` + t49 闸门反向锁定(含截断哨兵,变异验证),纯提交内容与真机/CDP 探针三面验证全绿——诊断期曾与[票 49](../cockpit-shell-panel-layout/issues/49-3d-glsl.md) 判重,维护者指令后固化提交收口;**未推送**(分支 16 个未推送提交多为并行在制品,不代推)。**票 18 保持 claimed/ready-for-human/open,是否收口仍取决于真人业务验收。**
+
+**2026-10-13 新增维护者界面/语义反馈分批执行票 37–41(5 张)**:维护者就「总体概览-预警设置一直数据加载失败」等 9 条反馈定夺后,按「分批立执行票」拆为:
+
+- **[37 共用长文本省略方法 + 监测概览设备类型分布筛选与降序](issues/37-shared-ellipsis-and-type-filter.md)**(`ready-for-agent`,无前置)——超长文本省略成 `…`、hover 显示完整的**共用方法**,在共享渲染层所有可能溢出处统一使用;设备类型分布降序 + 可点筛选(复用 `panel-action` 接缝)。**38/39/40 依赖本票的省略方法**。已获用户授权完成真实页面走查:KPI 图标、类型分布降序、堆叠段共享浮层均有可见证据;t50 当前 24 passed / 1 skipped(Pinia 动态断言因缺少 `@babel/parser` 而诚实失败退出),仍待补跑类型点击正反证与长文本 hover。
+- **[38 基础设施面板调整](issues/38-infrastructure-panel-adjustments.md)**(`ready-for-agent`)——基础档案设施总数与规模同行;**删除「规模」读数**(实测 `totals.scale = null` 无数据,`facilityTypes[].scale` 实为长度单位 `"km"`,长度已由 `lengthKm` 承载);运行信息定位修复(三种「点不动」必须给可见反馈,「没反应」是缺陷);管理信息片区×行业改分类柱状图 + 紧凑卡片。
+- **[39 运行监测面板图表化](issues/39-monitoring-charts.md)**(`ready-for-agent`)——监测概览纯文字读数改卡片/图表块(四态照实呈现、不合成「故障」);监测分布加明确子标题分节(图与数据指代对象不清)。
+- **[40 运行概况与监测点台账卡片化 + 定位修复](issues/40-operation-ledger-cards.md)**(`ready-for-agent`)——异常设备清单与台账设备改卡片形态;两处定位修复(复用 `domain/mapLocate.js` 既有接缝)。
+- **[41 后端执行票 —— 预警设置端点改为预警自身生命周期统计](issues/41-warning-settings-endpoint-rework.md)** — **已收口(2026-10-14,见 Decisions so far 与下方 2026-10-14 条目)**;其前端消费侧由 [42 预警设置面板消费预警自身生命周期契约](issues/42-42.md)(`ready-for-agent`,`Blocked by: 41` 已满足)承接。
+
+**关于「预警设置数据加载失败」的根因(已实测定位;2026-10-14 票 41 诊断修正)**:不是前端缺陷。`/overview/warning-settings` 实测 **HTTP 200 + body `code=500`**。票 41 收口时复测:报错列已从 `dispatch_user` 漂移为 `dept_id`(实体声明了库中已删列),真实根因是**运行构建落后库结构**(上游 `94bb7e4d` 已删该列,共享实例重启后 8301 的 500 已随之消除);工单依赖的故障面也比「单点」大(`events/handling-efficiency`、`/work-orders/{code}/timeline` 同因 500)。语义层面的修复(预警族自身生命周期)即票 41,已交付;前端消费归票 42。
+
 **2026-10-12 后端执行票 31 已关闭(设施总数三处口径不一致)**:[31 设施总数三处口径不一致(5278/5276/5273)](issues/31-5278-5276-5273.md) 根因是三个适配器各选不同设施表集合(非管网求和算法差异);新增唯一设施目录 `CockpitFacilityCatalog`(六类合法设施并集),概览与管理信息改为投影同一目录,未知/缺码显式进 `excluded`,并修正未来日期设施漏入片区分布。提交 `96834794` 已推 `origin/master`;`Cockpit*Test` 469/469(变基后复跑 465/465)、新增跨端点契约 2/2;后端重启后现场三端 `facilityCount` 均 **5283**、行业拆分 GAS537/WATER_SUPPLY1006/DRAINAGE3737/MANHOLE3 三端一致、片区合计 5283、三端 `excluded` 全 0。
 
 **6/6 决策票已解决 + 4 张规格子票 + 后端执行票 11/12/13 全部收口并复验通过(滚动复验票 17 亦收口)+ 后端票 20 已收口并完成现场复验与审查补齐 + 前端票 14/15/16 已收口。** 决策 01–06 收口;规格 [07](issues/07-map-status-filter-spec.md)/[08](issues/08-monitoring-created-at-spec.md)/[09](issues/09-real-lifecycle-spec.md)/[10](issues/10-business-semantics-spec.md) 为 `ready-for-agent`;执行票 **11/12/13 已 resolved 且真实环境复验全部通过**(基线卡片 02/03/04 均至 ③)、**17 已 resolved**(三切片滚动复验完成)、**20 已 resolved(主修复740d896现场管网总量5268;补齐29d1ae2、合并0a6b108已推,管网专项29/29;基线卡片05至③,报警旁路失败单独记录)**、14/15/16 已收口,18(前端真实接口联调与阶段收口)进行中——票 18 真实数据口径核对暴露的设施总数缺口已拆为后端票 20。