Files
lingxi/docs/adr
Stev_Wang 140dc386c1 feat(client): A3 客户与行业目录(两级行业、客户组、字段审批)
背景:A3 需把行业 / 客户 / 客户组 / 客户级字段立为资产根节点;用户确认两级行业树与混搭 UI(行业 B / 客户列表 A / 详情 A / 新建 B / 客户组 B / 字段 A)。

改动:
- 新增 ADR-002,行业改为两级树,客户挂末级行业;同步 PRD / 技术架构 / 开发计划。
- 新增 client 模块:industries / customers / customer-groups / customer-fields 接口、真实 PrismaCustomerDirectory、客户状态机与客户转交、客户组数据范围解析、跨客户 404。
- 新增迁移与幂等种子(电商/金融两级行业、2 客户、1 客户组、4 条字段)。
- 前端新增行业/客户/客户组/字段审批页面与路由、导航更名(客户管理 / 行业管理 / 客户组),复用现有 token。
- 补充 shared 契约单测、client 集成用例、A3 浏览器 e2e。

影响面:client 模块与 client 表、shared 契约、web 路由/导航、ScopeContext 数据范围、OpenAPI 与种子;A1 客户转交占位由 client 实现替换。
回滚:回滚本提交;数据库保留新增表或按报告执行 down SQL;CUSTOMER_DIRECTORY 可切回空集实现。
验证:format:check / lint / typecheck / test 全绿(shared 131 / api 90 / web 125,共 346);test:int 5 文件 39 条;A3 e2e 1/1;build 8/8;真实浏览器六页验证通过。
2026-11-03 21:45:38 +08:00
..

ADR 索引

架构决策记录(Architecture Decision Record)。格式:ADR-xxx-标题.md,编号连续不复用。 一个 ADR 只记录一个决策及其后果;被推翻时保留原文并标「已废弃 / 被 ADR-xxx 取代」。

编号 决策 状态 日期 关联
ADR-001 角色权限模型:权限点目录保留 read/write 只增不改、特殊权限五项 6 编码、SoD 三对互斥、六类数据范围全链路 + CustomerDirectory 端口、超管隐式全集、A2 审计先结构化日志 已接受 2026-11-03 A2 / A3 / DP-14
ADR-002 行业目录由单层改为两级树(一级 → 二级),客户挂末级行业,一级全局唯一 / 二级同父唯一,只停用 + 引用保护,「行业二级」从 A4 字典移除 已接受 2026-11-03 A3 / A4 / B0

新增流程

  1. 复制 ADR-001 的章节结构:背景 → 决策 → 后果 → 待办 / 回写。
  2. 编号取当前最大值 +1,文件名用中文短标题。
  3. 涉及多模块或权限 / 数据口径的决策,须在开发计划的对应 H 门确认后记录。
  4. 更新本索引与根 README.md 文档索引。