Commit Graph
4 Commits
Author SHA1 Message Date
windyboy c7b4b527ef feat(ingress): 实现 JDBC 信箱轮询、入站持久化与对拍测试 (U05) 2026-09-07 15:11:33 +08:00
windyboy 6de3fa6c9c feat(observability): U12 可观测底座(ACM2-10 U12/R05/N31b)
- logback:logstash 通道先加 AsyncAppender(queueSize 4096、neverBlock、discardingThreshold 0)
  ——logstash 不可达不阻塞业务线程(N31b 顺序约束:先降级再补日志);MDC 增加 traceId/target
- 结构化日志 + MDC traceId(TraceLog.withTrace=cminmsgsId/eventId):
  InboxService 收报 INFO;MessageProcessor SUCCEEDED/SKIPPED INFO、FAILED/解码失败 WARN、
  DEAD(MALFORMED/毒丸/EXHAUSTED) ERROR;SnapshotFlow staging/CAS WARN、快照成功 INFO;
  Dispatcher 发送 DEBUG、逐条/整批重试 WARN、DEAD(DLQ) ERROR、flushSchd 批次 INFO;
  ReplayService 重放 INFO/非法类 WARN;PipelineLifecycle 起停 INFO
- 自定义健康指示器(infra/health):redis-flight-store / kafka-delivery——BeanProvider 可选解析,
  缺 bean(未 stub 也未实装)报 DOWN 而非启动失败;/health 聚合
- 保留:micrometer 队列深度/投递延迟 gauge 依赖版本选型(micronaut-micrometer 与平台 BOM 5.1.3
  对齐待锁),随数据层/真实 client 批次补;U13 毒丸超时告警与 DLQ 巡检入口仍属 WP2
2026-09-06 21:02:27 +08:00
windyboy 821da1334c feat(build): 阶段0 冒烟底座(ACM2-10 U01–U04)
- U01:接入 KSP(kotlin-ksp 2.3.0)+micronaut-inject-kotlin,Micronaut BeanDefinition 由 0→94 个生成;
  移除 processing.annotations 业务包过滤(N23)
- U02:补 Gradle wrapper(9.6.1);版本矩阵单一来源——micronaut 固定 5.1.3(gradle.properties
  micronaut.version,平台 BOM 最高发布版)、JDK25 口径统一、snakeyaml 版本入 catalog;
  新增 .github/workflows/ci.yml 与 Dockerfile;.gitignore 补 .kotlin/.opencode/.zcode/.gradle-*
- U03:application.yml 键位修正(datasources.default/flyway.datasources.default/kafka.producers.default),
  移除 logstash 死配置块、logback env 统一 MSGX_LOGSTASH_*;新增 application-dev.yml(/env、/beans
  仅开发放开);PipelineProps 四嵌套类补 @ConfigurationProperties;新增 PipelinePropsBindingTest
  (改值—回读离线验收,Micronaut Test 5.x 用 TestPropertyProvider)
- U04:README「数据库初始化」与 V2.0.0 脚本头声明 CMINMSGS legacy 前置(全新库需先建旧表)
2026-09-06 17:59:07 +08:00
windyboy b2f3b896cc feat: scaffold Micronaut+Kotlin service per ACMA-8 v4 architecture
- 4 modules (ingress/processing/delivery/reference) + codec + infra + jobs
- Flyway V2.0.0: six aux tables (PROC_STATE/MSG_EVENT/REF_DATA/REQ_TRACK/PUMP_JOB/FLIGHT_STATE)
- Lua: snapshot_replace (atomic cover+gen-diff-delete), batch_delete (3:30 sweep)
- config: env-externalized secrets, phase A/B switch, ACMA-8 param-table defaults
- logback: logstash TCP JSON + traceId MDC
- pure-logic tests: identity (I3), schd aggregation max-by-EVENT_ID (FIX #7)
- build verified: gradle compile+test green on JDK 25 (Micronaut 5.1 requires JVM 25+)

Migrated from legacy repo subdirectory per repo-strategy decision (separate repo
per service, org convention). Refs: ACMA-9, ACMA-8 v4, ACMA-6
2026-09-06 16:13:50 +08:00