模块与制品
每次发布以 me.ahoo.wow 为 group 发布到 Maven Central 的每个制品,由构建(build.gradle.kts 里的 abiProjects 与 publishedLibraries)与每个模块自己的 description 生成;说明取自源码,为英文。导入 BOM,其余制品不写版本:
implementation(platform("me.ahoo.wow:wow-bom:<version>")),然后 implementation("me.ahoo.wow:wow-spring-boot") 等都不带版本。Gradle 插件 me.ahoo.wow 接好编译器(KSP)并汇总服务的 Manifest。
| 制品 | 目录 | 内容 |
|---|---|---|
me.ahoo.wow:wow-bom | bom/bom | BOM:下列每个制品的版本,构建以 platform 导入。 |
me.ahoo.wow:wow-dependencies | bom/dependencies | 第三方依赖的版本,每个发布的 POM 都导入它。 |
me.ahoo.wow:wow-api | api/api | What domain code imports (the annotations, Decision, DecideScope, StateEvent, Scope), the value types of the wire contract (Command, CommandResult, WaitPlan) and the typed QueryApi |
me.ahoo.wow:wow-manifest | api/manifest | The contract every projection reads (REST, OpenAPI, clients, views, Skills); plain data |
me.ahoo.wow:wow-query-api | api/query-api | The query protocol (filters, sort, pagination, projection, aggregation) and the query field annotations, as plain data; no dependencies |
me.ahoo.wow:wow-spi | core/spi | The ports a backend implements (log, snapshots, checkpoints, leases, failure ledger, reservations, sinks) |
me.ahoo.wow:wow-kernel | core/kernel | The aggregate model and the decide, evolve, append loop |
me.ahoo.wow:wow-runtime | core/runtime | Gateway, router, cluster channel, executor, subscriptions, waits and lifecycle |
me.ahoo.wow:wow-reactor | core/reactor | Reactor adapters for the user programming model |
me.ahoo.wow:wow-query | query/query | The query engine over the snapshot, event and dataset models, and its backend SPI |
me.ahoo.wow:wow-postgres | backends/postgres | Log, snapshots, query, checkpoints, leases, failure ledger and reservations on PostgreSQL |
me.ahoo.wow:wow-mongo | backends/mongo | Log, snapshots, query, checkpoints, leases, failure ledger and reservations on MongoDB |
me.ahoo.wow:wow-kafka | backends/kafka | The Kafka transport, Kafka Sink and Kafka-sourced subscriptions |
me.ahoo.wow:wow-clickhouse | backends/clickhouse | The ClickHouse Sink and the dataset query backend |
me.ahoo.wow:wow-elasticsearch | backends/elasticsearch | Snapshots, their queries and the event search Sink on Elasticsearch |
me.ahoo.wow:wow-openapi | edge/openapi | The OpenAPI 3.1 document of a service's public routes, from its Manifest alone; plain data |
me.ahoo.wow:wow-http | edge/http | Routes materialized from the Manifest, problem+json, SSE and the signal entry |
me.ahoo.wow:wow-client | edge/client | The typed command and query clients of a peer's HTTP routes, on the JDK HttpClient |
me.ahoo.wow:wow-cosec | edge/cosec | The caller from CoSec's security context, and command authorization |
me.ahoo.wow:wow-opentelemetry | edge/opentelemetry | Tracing and Micrometer metrics on the core's observation seams |
me.ahoo.wow:wow-spring-boot | host/spring-boot | Auto-configuration by classpath; wiring only |
me.ahoo.wow:wow-cosid | extensions/cosid | CosId's generators as a node's global and aggregate id generators |
me.ahoo.wow:wow-models | extensions/models | Shared capability interfaces, EnumText and the reusable Tree aggregate |
me.ahoo.wow:wow-test | test/test-dsl | The aggregate and processor specs that run a domain on the kernel |
me.ahoo.wow:wow-tck | test/tck | The contract specs of the SPI ports that every backend runs |
me.ahoo.wow:wow-query-tck | query/query-tck | The contract specs every query backend runs (snapshots, events, datasets) |
me.ahoo.wow:wow-tck-containers | test/tck-containers | The Testcontainers the backends' integration tests run the TCK specs against |
me.ahoo.wow:wow-ops-api | platform/ops/ops-api | The commands, events and value types of the ops context |
me.ahoo.wow:wow-view-store-api | platform/view-store/view-store-api | The commands, events and value types of the view store context |
me.ahoo.wow:wow-compiler | compiler/compiler | Aggregate models and Manifest fragments from the annotations |
me.ahoo.wow:wow-gradle-plugin | compiler/gradle-plugin | Applies KSP and wow-compiler, and assembles the Manifest with Jackson-introspected schemas |
me.ahoo.wow:wow-migrate-data | migration/migrate-data | Imports 9.x event streams into the V10 log and verifies them |
me.ahoo.wow:wow-manifest-tools | compiler/manifest-tools | Completes Manifest fragments with Jackson-introspected schemas and merges them; run by wow-gradle-plugin in isolated workers, never at runtime |