本会话三部分交付,均经 JDK21 真实构建验证(非退出码,读 BUILD SUCCESS + Tests run):
1) Agent 开发基建(机械门禁优先)
- 入口与中枢:AGENTS.md、.agents/{knowledge,rules,skills,workflows}、CLAUDE.md 订正
- 订正 .gitignore:移除对 .agent/.agents 的忽略——它们是版本化 agent 基建,须入库(此前被忽略致克隆即缺)
- 机械门禁:CI 真跑测试(maven.yml JDK21、去 -Dmaven.test.skip)、覆盖台账去硬编码、
BC 边界 ArchUnit 门(BcBoundaryArchTest)、契约先行门(ContractFirstGateTest:Flyway 卫生 + OpenAPI 结构)
- 单一进度源 docs/mvp/进度总账.md + 7 个 BC per-module .agent + mise.toml(锁 JDK21)
- P1 增量:AiSuggestionMergeProjectionFacade(Gap A)、ContentSourceServiceImpl 事务化 outbox 回流(Gap B)
2) 过期历史文档清理(97 份 churn,git 可恢复)
- 删 docs/memorys(34)、agent-specs 审阅/执行版+迁移review(34)、superpowers/plans+specs(25)、
design-docs/临时+memorys(4);保留 superpowers/reports/coverage(门禁依赖)
- 唯一干货蒸馏入 .agents/knowledge/external-deps-and-gotchas.md;订正大纲/映射表/基线悬空引用
3) P1 harness 验证:消除已登记 BC 违例 ContentMuseWorkOwnerFacade
- content-api 新增只读端口 MuseContentWorkOwnerApi + content-server 实现(读自有 DAL);
AI 适配器改消费该端口、移除全部 content.dal 依赖,AI 业务规则与 4 消费者不变
- 删除 ArchUnit 豁免 → 门禁收紧(反向红 31 例 / 正向绿;适配器单测 13/0F、端口实现 7/0F)
注:muse-studio/src(SSE 相关 4 文件)与 muse-module-ai/pom.xml(移除孤儿 contract-server)
为本会话之前已存在的未提交改动,非本次工作,未纳入本提交。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
178 lines
6.8 KiB
XML
178 lines
6.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||
<parent>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse</artifactId>
|
||
<version>${revision}</version>
|
||
</parent>
|
||
<modelVersion>4.0.0</modelVersion>
|
||
|
||
<artifactId>muse-server</artifactId>
|
||
<packaging>jar</packaging>
|
||
|
||
<name>${project.artifactId}</name>
|
||
<description>
|
||
后端 Server 的主项目,通过引入需要 muse-module-xxx 的依赖,
|
||
从而实现提供 RESTful API 给 muse-ui-admin、muse-ui-user 等前端项目。
|
||
本质上来说,它就是个空壳(容器)!
|
||
</description>
|
||
<url>https://github.com/YunaiV/ruoyi-vue-pro</url>
|
||
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-system-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-infra-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
|
||
<!-- PostgreSQL 运行时驱动:muse-spring-boot-starter-mybatis 中为 optional,容器项目需显式声明 -->
|
||
<dependency>
|
||
<groupId>org.postgresql</groupId>
|
||
<artifactId>postgresql</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Muse 业务表 Flyway 迁移入口,迁移目录见 application.yaml 的 spring.flyway.locations -->
|
||
<dependency>
|
||
<groupId>org.flywaydb</groupId>
|
||
<artifactId>flyway-core</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.flywaydb</groupId>
|
||
<artifactId>flyway-database-postgresql</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Muse 创作业务模块 -->
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-content-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-meta-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-events-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-knowledge-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-market-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
|
||
<!-- 会员中心。默认注释,保证编译速度 -->
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-member-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
|
||
<!-- 数据报表。默认注释,保证编译速度 -->
|
||
<!-- <dependency>-->
|
||
<!-- <groupId>cn.iocoder.cloud</groupId>-->
|
||
<!-- <artifactId>muse-module-report-server</artifactId>-->
|
||
<!-- <version>${revision}</version>-->
|
||
<!-- </dependency>-->
|
||
<!-- 工作流。默认注释,保证编译速度 -->
|
||
<!-- <dependency>-->
|
||
<!-- <groupId>cn.iocoder.cloud</groupId>-->
|
||
<!-- <artifactId>muse-module-bpm-server</artifactId>-->
|
||
<!-- <version>${revision}</version>-->
|
||
<!-- </dependency>-->
|
||
<!-- 支付服务。默认注释,保证编译速度 -->
|
||
<!-- <dependency>-->
|
||
<!-- <groupId>cn.iocoder.cloud</groupId>-->
|
||
<!-- <artifactId>muse-module-pay-server</artifactId>-->
|
||
<!-- <version>${revision}</version>-->
|
||
<!-- </dependency>-->
|
||
|
||
<!-- 微信公众号模块。默认注释,保证编译速度 -->
|
||
<!-- <dependency>-->
|
||
<!-- <groupId>cn.iocoder.cloud</groupId>-->
|
||
<!-- <artifactId>muse-module-mp-server</artifactId>-->
|
||
<!-- <version>${revision}</version>-->
|
||
<!-- </dependency>-->
|
||
|
||
<!-- Muse AI 运行时入口:P1R-4 起由 ai-server 持有 dedicated AI 基础设施与后续真实路由 -->
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-module-ai-server</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
|
||
|
||
<!-- 服务保障相关 -->
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-spring-boot-starter-protection</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Registry 注册中心相关 -->
|
||
<dependency>
|
||
<groupId>com.alibaba.cloud</groupId>
|
||
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
|
||
</dependency>
|
||
|
||
<!-- RPC 远程调用相关 -->
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-spring-boot-starter-rpc</artifactId>
|
||
<!-- 目的:muse-server 单体启动,禁用 openfeign -->
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>org.springframework.cloud</groupId>
|
||
<artifactId>spring-cloud-starter-openfeign</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>cn.iocoder.cloud</groupId>
|
||
<artifactId>muse-spring-boot-starter-test</artifactId>
|
||
<scope>test</scope>
|
||
</dependency>
|
||
<!-- ArchUnit:BC 边界等架构约束的机械门禁(见 .agents/rules/bc-boundaries.md);仅测试期生效 -->
|
||
<dependency>
|
||
<groupId>com.tngtech.archunit</groupId>
|
||
<artifactId>archunit-junit5</artifactId>
|
||
<version>1.3.0</version>
|
||
<scope>test</scope>
|
||
</dependency>
|
||
</dependencies>
|
||
|
||
<build>
|
||
<!-- 设置构建的 jar 包名 -->
|
||
<finalName>${project.artifactId}</finalName>
|
||
<plugins>
|
||
<!-- 打包 -->
|
||
<plugin>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||
<version>${spring.boot.version}</version>
|
||
<executions>
|
||
<execution>
|
||
<goals>
|
||
<goal>repackage</goal> <!-- 将引入的 jar 打入其中 -->
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
|
||
</project>
|