This commit is contained in:
@@ -311,3 +311,15 @@ R_h = S_h / N_h × 100% # N_h=0时为null
|
||||
事实保留期本次采用72小时(第8节2小时是原建议),以保证迟到修改能替换原贡献、不会在删除事实后把旧桶重建成局部样本;分钟7天、快照30天、关闭告警90天。新增表不存短信正文/手机号。需要以真实峰值容量预算再优化事实压缩/冷热分层;当前不得据此宣称500TPS下预算达标。真实短信压测未获授权,只使用隔离数据库样本验证统计和查询成本。
|
||||
|
||||
纳管范围使用不可变版本,按窗口评估时刻解析;以后移除/重新加入不改写旧统计。当前API规则按type+scope通过POST完整保存(version乐观锁),不另外提供重复的PUT更新入口。新Worker健康异常通过发送监控数据延迟和预警中心不可用说明展示;监控性能指标接Prometheus和真实峰值对照尚未验收。
|
||||
|
||||
## 13. 整体兜底规则管理交互改造(2026-09-06)
|
||||
|
||||
状态:用户已授权实施、提交、推送并分别发布测试和预生产。替代第5.3节配置操作方式,统计口径、整套覆盖顺序和下一周期生效规则保持。
|
||||
|
||||
- 阈值设置分“通用规则”和“个性化规则”页签。后者为可搜索、分页的规则列表,展示企业/应用/签名名称、覆盖类型、阈值摘要、状态、生效时间,提供新增覆盖、编辑和恢复继承;不以内部ID作为主要展示。
|
||||
- 新增覆盖默认应用级;支持应用、签名、应用×签名。应用选择器直接搜索“企业·应用”;签名级先选企业,组合级签名限定该应用。搜索和分页放入对应下拉框,选中持续显示名称;上级变化清空下级,未保存变更先确认。
|
||||
- 编辑器与列表在同一弹窗切换,已有规则范围锁定;新增重复范围提示编辑已有规则。新规则按实际继承来源预填整套配置,没有来源则保持空值,不从原型填阈值。异步加载失败阻止提交、提供重试;迟到请求不能覆盖已修改草稿。
|
||||
- 表单分适用范围、告警阈值、触发与恢复三组;保存按钮防重、字段就近校验、失败保留草稿、409允许显式重新加载。保存成功返回列表并保留筛选,显示真实版本及下一周期生效时间。切换页签、返回列表、关闭和刷新保护未保存内容。
|
||||
- 停用仍保留该层覆盖;恢复继承移除该层覆盖,使用数据库已保存配置和version,不受编辑草稿必填校验干扰。确认说明剩余规则匹配顺序,具体应用×签名可查看准确匹配链;没有下层规则明确不告警,更具体范围仍按自身规则匹配。恢复仍通过版本记录/审计事务生效,不物理删除历史。
|
||||
- 新增受既有管理员授权保护的规则管理分页、对象远程搜索、编辑上下文和恢复继承API;保留原rules/options/effective-rule接口兼容其他使用者。返回名称及对象状态、当前生效版本/待生效版本/服务器时间;历史已删除对象保留名称或明确占位,不进入新增选项。使用参数绑定、分页上限和确定性排序;新增查询不进入发送热路径,不改变表结构、Redis或Worker计算。
|
||||
- 样式归sending-monitor组件目录,由所有者import,不修改历史CSS模块或公共Select。验收覆盖真实API/PG持久化、三种范围及跨企业校验、继承/停用差异、重复/并发409、异步及失败、三尺寸和历史对象;发布仅重建前后端并重启API,其他服务按实际兼容检查保留。預生产缺少有效登录入口时如实保留登录后验收缺口,不擅自新增账号。
|
||||
|
||||
@@ -5178,3 +5178,12 @@ npm run verify:phase8
|
||||
- SMR-027:运行概况三尺寸首次进入、刷新和跨tab切换,三个最近列表均不存在;真实GET /admin/operations/monitor仅含byStatus,状态卡片/通道表/基础设施入口可用,独立记录页面保留。
|
||||
- SMR-028:真实Prisma加入、移除、重新加入及规则保存,版本和审计持久化;同版本并发仅一次成功,另一次409;不存在通道404,非法enabled/version400;审计失败回滚当前行和版本行。真实PG隔离schema验证,不用mock掩盖void返回类型。
|
||||
- SMR-029:测试环境人工生成并标注“测试演示”的三类监控已恢复/已关闭告警,列表、筛选、详情和历史曲线来自真实API/PG;演示阈值仅存在历史快照,不写业务规则或发送短信,不能用该数据证明自动告警链路或真实投递成功。
|
||||
|
||||
### SMR-030~035 整体兜底规则管理(2026-09-06)
|
||||
|
||||
- SMR-030:通用/个性化页签、名称列表、搜索/类型筛选/分页,已配置及空态、失败重试;实际接口有界分页,不能用ID代替名称或失败显示空列表。
|
||||
- SMR-031:新增应用、签名、应用×签名三种覆盖;企业应用可按企业/应用名远程搜索,签名限定企业/应用;选中名称持续显示,上级变化清除下级,不可跨企业保存。已删除对象不进新增选项,历史覆盖仍显示名称与状态。
|
||||
- SMR-032:已有范围提示编辑已有规则,编辑锁定范围;新增预填整套继承值、无来源为空;异步加载期间不可保存,迟到响应不覆盖草稿;字段校验、保存失败、409、未保存离开保护正常。
|
||||
- SMR-033:列表与编辑器区分当前生效版本和下一周期待生效版本,展示真实生效时间;应用×签名>签名>应用>通用,停用保留覆盖,不等于恢复继承。
|
||||
- SMR-034:恢复继承使用数据库保存配置与version,说明无下层规则/更具体规则的影响;新版本、历史版本与审计原子提交,并发同版本仅一次成功;审计失败完整回滚,历史对象删除后仍可移除覆盖。
|
||||
- SMR-035:1600×1000、1366×768、390×844检查列表、新增、编辑、搜索下拉及恢复确认;保存后回列表保留筛选,单层弹窗Footer可见,表格内部滚动;真实API/PG验收与组件测试分别记录,不发送短信。
|
||||
|
||||
@@ -4657,3 +4657,13 @@ git diff --check
|
||||
- 告警真实API总数6,恢复/关闭筛选各3;三尺寸列表和详情、6点历史曲线通过,console error/pageerror均0,无整页横向溢出。截图复核监控通道窄屏及告警详情清晰可操作。人工造数只证明真实API/数据库展示,不冒充自然产生的监控告警或真实投递验收。动态业务/规则/余额/通道表摘要造数前后一致,短信仍119509;未发送、补发、重投、重新入队短信。
|
||||
- 最终前端100项、API639项、真实Prisma配置12项、类型/构建/格式/ESLint/结构/安全/部署门禁通过;未修改CSS或Gateway,不重跑无关Go链路测试。线上主JS index-UxUuzIeW.js摘要3da1b28cfa2997d2d93e374fdd5a575ed629814d6ce33a32bd7b1d0f2b68329f,主CSS仍index-Oaoh-Ppy.css,HTTP下载与运行产物一致。队列三个Stream pending/lag均0,last-delivered和entries-read与上一轮基线相同;监控水位complete=true、pendingReceipts0。
|
||||
- 证据目录:本机%TEMP%/cmpp-monitor-fix-20260906的before.json、after.json、runtime/joined/alerts/alert-detail三尺寸截图、前后端测试/构建/质量日志及受限测试脚本;脚本内无认证秘密,持久管理员正常退出后保留。原规则空态正常不等于配置保存正常,本次以真实服务写入/并发/回滚验证补足覆盖。未执行短信发送、真实高峰压测或预生产验收。
|
||||
|
||||
## 2026-09-06 整体兜底规则管理改造(发布前)
|
||||
|
||||
- 用户授权按已确认方案实施、提交、推送及测试/预生产部署。起始main/HEAD/实时origin/main及两环境标记均0e3424c,分叉0/0;8份已有修改文档及3份未跟踪草稿保护。本轮文档只提交精确追加段落,不夹带原修改或上轮未提交发布记录。
|
||||
- 只读证据:同版本测试页面选择企业后搜索结果仍为“请选择”,已选仅显示内部ID;通用、新增、编辑和继承混在同一表单。风控规则提供独立列表/新增应用覆盖及“企业·应用”选择,真实GET均200,测试规则0。原型和说明见sending-monitor-redesign-plan-20260906.md第13节;截图/请求在本机%TEMP%/cmpp-monitor-rule-review-20260906。
|
||||
- 实现:整体兜底独立规则管理,通用/个性化页签、名称及阈值列表、搜索分页、新增三种覆盖、对象联动、重复检测与锁定编辑、继承预填、当前/待生效区分、字段校验、草稿保护和保存回列表。后端新增名称/对象分页/编辑上下文接口与恢复继承入口,沿用管理员权限、乐观锁、整套覆盖及周期版本。历史已删除企业/应用/签名不可新增配置,可恢复继承;签名软删除字段为auditStatus。无数据库迁移、Gateway/Worker计算或队列契约变更。
|
||||
- 样式仅在MonitorRuleManager.css,由同目录所有者直接import,登记严格roots;未改公共Select、历史CSS模块或Stylelint例外。门禁首次提示新文件未登记所有者,补充css-ownership.json后通过,不重算历史摘要。
|
||||
- 本地前端21套105项、API60套639项、前后端TypeScript/生产构建、增量格式/ESLint、Stylelint、CSS治理及其用例、安全/部署/包体门禁通过。首次辅助函数拆分漏导入及测试定位类型错误经类型/全量检查发现并修复,最终全量重跑通过。
|
||||
- 测试机真实Prisma/service隔离schema15项通过:跨企业名称搜索、20+3分页、签名联动、非法查询、三种范围、重复范围版本、当前/待生效、继承优先级、停用保留覆盖、恢复并发409、软删除历史、审计失败回滚。使用全新隔离Tenant/Application/Signature样本,public业务写入0,结束精确删除自己的schema;未发送短信。脚本tools/testing/verify-monitor-rule-management-postgres.mjs可重复执行。
|
||||
- 本机证据目录%TEMP%/cmpp-rule-manager-20260906保存原修改备份、前后端测试/构建/门禁日志。真实登录后页面及两环境发布尚待执行,不能用上述单测和隔离集成结论代替;预生产仍需现有有效管理员安全入口,不擅自重建或重置账号。
|
||||
|
||||
Reference in New Issue
Block a user