2.8 KiB
2.8 KiB
规则管理权限状态未导出导致页面崩溃
日期:2026-07-18 文档路径:document/development/2026-07-18/dev-logs/bugs/rule-management-permission-reference-crash.md
修复记录
- 15:00:记录 bug 修复:进入规则管理时模板引用未定义的
isRuleManager,导致规则列表和操作区整页崩溃。- Git 提交检查:
git fetch --all --prune成功;upstreamorigin/main;upstream 新提交:未发现;本地 ahead 19 条,最新为07241b46 fix(docker): manage local postgres in default compose、787bc3a4 feat(platform): close AI expense value loop、242d68c3 feat(approval): add task workflow and waiver decisions、28b834ed fix(approval): replay immutable action responses、4940ebc4 feat(approval): add safe risk disposition workflow、ee88a36b feat(ai): add tenant-safe hierarchical expense learning、6bdf65bc feat(expenses): add authoritative pre-review workflow、ae3f02c3 feat(expense): add persistent zero-entry receipt association,另有 11 条。 - 原因:
useAuditViewPermissions内部已经计算isRuleManager,但未在返回对象中暴露;AuditView同时没有解构该状态,渲染权限按钮时触发未定义引用。 - 修改:权限 composable 明确返回
isRuleManager,视图层同步解构;新增权限状态导出与视图接线回归测试。 - 验证:容器内前端测试
816/816通过,Vite 生产构建成功;使用admin/admin实际进入规则管理,基础规则 8 条、风险规则列表和 MCP 服务 2 条均正常加载,页面无崩溃。 - 影响:规则管理员与系统管理员的规则操作权限可以稳定参与渲染,基础规则、风险规则和 MCP 三个页签恢复可用。
- Git 提交检查:
- 15:40:追加修复风险规则详情操作状态未向模板暴露的问题。
- Git 提交检查:
git fetch --all --prune成功;upstreamorigin/main无新提交;本地 ahead 19 条,最新包括07241b46 fix(docker): manage local postgres in default compose、787bc3a4 feat(platform): close AI expense value loop、242d68c3 feat(approval): add task workflow and waiver decisions,另有 16 条。 - 修改:
AuditView.js的setup()返回对象补齐riskRuleHasPublishableRevision、canEditRiskRuleDraft和canCreateRiskRuleRevision;audit-view-permissions.test.mjs新增模板权限暴露回归。 - 操作:在
local-x-financial-linux容器内运行规则权限、风险规则详情和员工模型定向测试,并执行 Vite 生产构建与git diff --check。 - 验证:定向前端测试 9 项全部通过,前端全量测试
820/820通过,Vite 生产构建成功,差异格式检查通过。 - 影响:已发布风险规则可正常显示“创建修订版本”,未发布草稿和待发布修订也能显示对应的编辑、发布入口。
- Git 提交检查: