跳到内容

核心模块治理

受众:开发者 摘要:核心模块按真实 owning module 归属;system 是可用业务语义,不再作为禁用词处理。

历史 spring-open-core-system 巨石模块当前不存在。IAM、配置、Knowledge、Plugin、运行时运维、业务域主代码、测试和 Liquibase 迁移均归属对应 owning core 模块。

开发期按模块职责前进,不为了兼容旧路径添加包装;但 system / System / SYSTEM / sys 可在语义正确时正常用于路由、权限、菜单、表名和配置。面向后台的管理 API 优先使用真实域名,例如 IAM 使用 /api/v1/admin/iam/**,配置使用 /api/v1/config/**,Cashier 使用 /api/v1/admin/cashier/**;系统设置或系统级聚合能力可以正常使用 /api/v1/system/**

当前边界

当前归属
历史 Maven 模块已删除
历史迁移文件已迁入真实 owning module
生产源码 / 资源 / 测试不存在 spring-open-core/spring-open-core-system
自动检查.ai/scripts/check modules(依赖方向、模块边界、迁移规范,不按 system 字面量禁用)

IAM / Auth / RBAC / User / Tenant / DataScope / Workspace 的 schema 在 spring-open-core-iam0000_00_00_010000_core_iam_create_tables.xml,seed 在 0000_00_00_010100_core_iam_seed_data.xml。File、Async Task、Runtime、Cashier、Notification、Queue、Scheduler、WebSocket、Audit 等历史资产也各自放在对应 core 模块的 schema / seed 迁移文件中。

运行时模块

能力归属模块文档
IAM / Auth / User / RBAC / Tenant / DataScope / Workspacespring-open-core-iamIAM
配置 / 配置分类 / 配置变更日志spring-open-core-config配置中心
站点公开信息 / 访问策略 / 健康入口spring-open-core-site站点信息
字典 / 字典项 / 展示文案解析spring-open-core-dict字典
Knowledge 后台管理面spring-open-core-knowledge知识库
Plugin 后台治理面spring-open-core-pluginPlugin
岗位 / 用户岗位spring-open-core-organization组织岗位
操作审计日志spring-open-core-audit操作审计
Queue / Scheduler / WebSocket / Approval Workflow / Observability / Document / Rate Limit 运维spring-open-core-queue / spring-open-core-scheduler / spring-open-core-websocket / spring-open-core-approval-workflow / spring-open-core-observability / spring-open-core-document / spring-open-core-rate-limit架构限流
通知 / 站内信 / 通知规则 / 发送日志spring-open-core-notification通知
文件 / 媒体资产绑定spring-open-core-file文件元数据
异步任务 / CSV 导出spring-open-core-async-task架构
Outbox / 补偿命令 / Webhookspring-open-core-outbox幂等与 Outbox
内容安全词库 / 检测日志 / 复核任务 / 批量扫描spring-open-core-content-safety内容安全
报表定义 / 即时快照 / 异步导出聚合spring-open-core-reporting报表中心
风控规则 / 风险事件 / 冻结 / 人工复核spring-open-core-risk风控限额
收银台 / 支付订单 / 回调 / 报价spring-open-core-cashier收银台
会员积分 / 签到 / 过期任务spring-open-core-member-points会员积分
开放 API contract / 演示数据清理spring-open-core-runtime架构

新增代码必须放到真实 owning module。如果能力语义确实属于系统设置或系统级聚合,可以正常使用 System 命名;不要为了避让历史债强行改成 config / core / admin 等近似词。

判断规则

  • 新增后台能力先判断真实归属:身份相关进 core-iam,配置相关进 core-config,站点公开信息进 core-site,字典进 core-dict,通知进 core-notification,文件 / 媒体进 core-file,异步任务 / CSV 导出进 core-async-task,Outbox / 补偿 / Webhook 进 core-outbox,内容安全运维进 core-content-safety,报表定义 / 快照 / 导出聚合进 core-reporting,风控限额进 core-risk,收银台支付订单进 core-cashier,会员积分进 core-member-points,开放 API contract / 演示数据清理等剩余运行时支撑进 core-runtime,技术能力管理面进对应 core-*
  • 不按 system 字面量判断对错;只按职责、依赖方向、复用范围、Maven 坐标、迁移归属和前端入口归属判断。
  • 如果将来需要重新引入 spring-open-core-system,按普通 core 模块设计和验证处理,不作为历史模块特殊禁区。

验证命令:

bash
./.ai/scripts/check modules
git diff --check

Released under the Apache License 2.0.