|
|
@@ -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。
|