fullstack
30fa745135
fix(cma): 工作台跨实体治本 · DAMA 回查收口 — 审计可归属 + 通知日志口径
DAMA 独立回查 dama-recheck-workbench-entity-isolation-20260922 的 §4b/§5 两处待办:
1. POST /api/cma/tenant/switch 审计行原来不可归属:
- user_id=None → 改为注入会话用户(user=Depends(require_auth_401))
- target_type/target_id 从 system_config/None 对齐为 entity/<entity_id>,
与 /auth/switch-entity 的 switch_entity 共用目标维度 ⇒ 按账套可过滤,零 DDL
- action 字面 switch_tenant_state 保留不合并(与会话级 switch_entity 语义不同),
口径登记 docs/audit-and-notification-caliber-20260922.md
2. /api/cma/notifications/logs 增加 policy/note 口径字段,前端发送记录表
empty-text 提示同一口径 —— 避免「B2 上线后 e1/e2 均 0 条」被当成页面故障
(现库 8 行历史记录全为 alert_id IS NULL 的 OKR 复盘提醒,无账套归属)
回归:tests/test_workbench_entity_isolation_20260922.py 22/22;全量 1370 passed;前端 vite build 通过
2026-09-22 11:21:24 +08:00
..
2026-05-28 17:32:22 +08:00
2026-09-21 15:13:27 +08:00
2026-09-07 10:22:24 +08:00
2026-09-18 21:04:30 +08:00
2026-09-19 10:42:09 +08:00
2026-09-19 08:35:25 +08:00
2026-09-22 11:06:02 +08:00
2026-07-29 18:25:08 +08:00
2026-09-12 10:07:20 +08:00
2026-09-17 00:10:07 +08:00
2026-08-23 18:20:29 +08:00
2026-09-22 11:06:02 +08:00
2026-09-19 10:42:09 +08:00
2026-08-28 00:31:31 +08:00
2026-09-21 09:37:38 +08:00
2026-09-03 18:08:27 +08:00
2026-08-11 11:29:39 +08:00
2026-09-21 09:37:38 +08:00
2026-09-21 10:36:02 +08:00
2026-08-28 18:03:47 +08:00
2026-09-11 17:13:07 +08:00
2026-09-22 11:06:02 +08:00
2026-09-18 00:34:04 +08:00
2026-09-18 18:42:38 +08:00
2026-09-21 09:37:38 +08:00
2026-09-21 14:56:43 +08:00
2026-08-26 07:51:39 +08:00
2026-09-21 10:36:02 +08:00
2026-09-08 11:19:38 +08:00
2026-08-28 18:03:47 +08:00
2026-09-19 11:12:31 +08:00
2026-09-21 09:37:38 +08:00
2026-07-19 10:07:46 +08:00
2026-09-21 14:56:43 +08:00
2026-09-15 18:12:05 +08:00
2026-08-11 11:29:39 +08:00
2026-09-03 23:09:58 +08:00
2026-09-03 23:00:15 +08:00
2026-08-27 15:51:19 +08:00
2026-09-21 09:37:38 +08:00
2026-09-21 10:36:02 +08:00
2026-07-22 18:22:48 +08:00
2026-09-16 14:48:06 +08:00
2026-09-22 11:21:24 +08:00
2026-08-26 23:45:20 +08:00
2026-09-22 11:06:02 +08:00
2026-09-18 20:03:55 +08:00
2026-08-27 10:59:56 +08:00
2026-05-28 17:32:22 +08:00
2026-09-14 16:41:15 +08:00
2026-09-21 10:36:02 +08:00
2026-09-14 16:41:15 +08:00
2026-09-16 01:17:09 +08:00
2026-07-12 17:46:08 +08:00
2026-07-21 23:41:40 +08:00
2026-09-21 10:36:02 +08:00
2026-08-10 23:40:31 +08:00
2026-09-22 11:21:24 +08:00
2026-09-11 17:27:12 +08:00
2026-09-16 14:56:57 +08:00
2026-05-28 17:32:22 +08:00
2026-08-28 18:03:47 +08:00
2026-08-30 19:16:19 +08:00
2026-09-08 20:11:59 +08:00
2026-08-28 18:03:47 +08:00