chore: Merge remote-tracking branch 'origin/main' into castling
Build & Test (NowChessSystems) TeamCity build finished
Build & Test (NowChessSystems) TeamCity build finished
This commit is contained in:
+1
-1
@@ -85,7 +85,7 @@ Create the file if it does not exist. Never delete existing entries.
|
|||||||
- `settings.gradle.kts` must include every module via `include(":modules:<service>")`.
|
- `settings.gradle.kts` must include every module via `include(":modules:<service>")`.
|
||||||
- Architecture decisions go in `docs/adr/` as numbered Markdown files (`ADR-001-<title>.md`).
|
- Architecture decisions go in `docs/adr/` as numbered Markdown files (`ADR-001-<title>.md`).
|
||||||
- API contracts live in `/docs/api/`.
|
- API contracts live in `/docs/api/`.
|
||||||
- Unit tests extend `AnyFunSuite with Matchers with JUnitSuiteLike` — no `@Test` annotations, no `: Unit` requirement
|
- Unit tests extend `AnyFunSuite with Matchers` — no `@Test` annotations, no `: Unit` requirement
|
||||||
- Integration tests use `@QuarkusTest` with JUnit 5 — `@Test` methods must be explicitly typed `: Unit`
|
- Integration tests use `@QuarkusTest` with JUnit 5 — `@Test` methods must be explicitly typed `: Unit`
|
||||||
- Always exclude scala-library from Quarkus deps to avoid Scala 2 conflicts
|
- Always exclude scala-library from Quarkus deps to avoid Scala 2 conflicts
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ report findings to team-leader, who re-invokes scala-implementer for fixes.
|
|||||||
- `@QuarkusTest` methods (JUnit 5) must be explicitly typed `: Unit`
|
- `@QuarkusTest` methods (JUnit 5) must be explicitly typed `: Unit`
|
||||||
|
|
||||||
### Tests
|
### Tests
|
||||||
- Unit tests must extend `AnyFunSuite with Matchers with JUnitSuiteLike`, not plain JUnit 5
|
- Unit tests must extend `AnyFunSuite with Matchers`
|
||||||
- Integration tests use `@QuarkusTest` with JUnit 5 `@Test` methods
|
- Integration tests use `@QuarkusTest` with JUnit 5 `@Test` methods
|
||||||
- No raw `@Test` annotations on plain unit test classes
|
- No raw `@Test` annotations on plain unit test classes
|
||||||
|
|
||||||
|
|||||||
Generated
+1
-1
@@ -7,6 +7,6 @@
|
|||||||
</profile>
|
</profile>
|
||||||
</component>
|
</component>
|
||||||
<component name="VcsDirectoryMappings">
|
<component name="VcsDirectoryMappings">
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
<mapping directory="" vcs="Git" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
@@ -45,13 +45,13 @@ The only current module is `core` (`modules/core`).
|
|||||||
- Jakarta annotations only (`jakarta.*`), never `javax.*`.
|
- Jakarta annotations only (`jakarta.*`), never `javax.*`.
|
||||||
- Use reactive types (`Uni`, `Multi`) for I/O; no blocking calls on the event loop.
|
- Use reactive types (`Uni`, `Multi`) for I/O; no blocking calls on the event loop.
|
||||||
- **Always exclude `org.scala-lang:scala-library` from Quarkus BOM** to avoid Scala 2 conflicts.
|
- **Always exclude `org.scala-lang:scala-library` from Quarkus BOM** to avoid Scala 2 conflicts.
|
||||||
- **Unit tests use `extends AnyFunSuite with Matchers with JUnitSuiteLike`** — ScalaTest DSL, no `@Test` annotations needed.
|
- **Unit tests use `extends AnyFunSuite with Matchers`** — ScalaTest DSL, no `@Test` annotations needed.
|
||||||
- **Integration tests use `@QuarkusTest` with JUnit 5** — explicit `: Unit` return type still required on `@Test` methods.
|
- **Integration tests use `@QuarkusTest` with JUnit 5** — explicit `: Unit` return type still required on `@Test` methods.
|
||||||
|
|
||||||
### Agent Workflow (for new services)
|
### Agent Workflow (for new services)
|
||||||
1. **architect** → writes OpenAPI contract to `docs/api/{service}.yaml` and ADR to `docs/adr/`.
|
1. **architect** → writes OpenAPI contract to `docs/api/{service}.yaml` and ADR to `docs/adr/`.
|
||||||
2. **scala-implementer** → reads contract, implements service under `modules/{service}/`.
|
2. **scala-implementer** → reads contract, implements service under `modules/{service}/`.
|
||||||
3. **test-writer** → writes `@QuarkusTest` integration tests and `AnyFunSuite with Matchers with JUnitSuiteLike` unit tests.
|
3. **test-writer** → writes `@QuarkusTest` integration tests and `AnyFunSuite with Matchers` unit tests.
|
||||||
4. **gradle-builder** → resolves any build/dependency issues.
|
4. **gradle-builder** → resolves any build/dependency issues.
|
||||||
5. **code-reviewer** → reviews; reports findings back without self-fixing.
|
5. **code-reviewer** → reviews; reports findings back without self-fixing.
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ scoverage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
application {
|
application {
|
||||||
mainClass.set("de.nowchess.chess.chessMain")
|
mainClass.set("de.nowchess.chess.Main")
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.withType<ScalaCompile> {
|
tasks.withType<ScalaCompile> {
|
||||||
|
|||||||
Reference in New Issue
Block a user