docs(acm2-74): consolidate design documentation

This commit is contained in:
windyboy
2026-09-13 20:31:13 +08:00
parent 800d7617f2
commit cedd859bdf
36 changed files with 1173 additions and 955 deletions
@@ -20,7 +20,7 @@ import java.time.ZoneId
// 同一个事务里,并且进事务后第一件事就是拿 PIPELINE_LOCK 这把单行锁。锁只负责让
// 写事务排队,不负责选主或故障切换。
//
// 航班模型与合并规则的完整说明见 docs/flight-state.md
// 航班模型与合并规则的完整说明见 docs/implementation.md「航班域」
// =====================================================================
/** 把一段代码包进一个数据库事务:航班状态、待发事件、处理终态要么一起提交,要么一起回滚。 */
@@ -46,7 +46,7 @@ import javax.sql.DataSource
// 自有 PostgreSQL 的仓储实现,表结构见 db/migration/V1__flight_state_baseline.sql。
//
// 航班相关的写操作都要求调用方先开事务、再拿 PIPELINE_LOCK 单行锁(见 Repositories.kt
// 顶部说明)。航班模型与合并规则见 docs/flight-state.md
// 顶部说明)。航班模型与合并规则见 docs/implementation.md「航班域」
// =====================================================================
@Singleton
@@ -8,7 +8,7 @@ import jakarta.inject.Singleton
* 投递端口的内存假实现,只有配置 msgx.stubs=true 时才装配,本地开发和测试用。
*
* 每次发送都往 sent 里记一条(topic、key、payload);payload 为 null 的那条就是删除通知
* tombstone,下游按"这个键没了"理解成删除)。见 docs/flight-state.md §5
* tombstone,下游按"这个键没了"理解成删除)。见 docs/implementation.md「Kafka 与读取」
*/
@Requires(property = "msgx.stubs", value = "true")
@Singleton