From db6fafcfef750c78e5559cb357cb85488b5a37c6 Mon Sep 17 00:00:00 2001 From: Alexander Yevsyukov Date: Sat, 25 Oct 2025 21:27:52 +0100 Subject: [PATCH 01/11] Bump version -> `0.14.0` --- version.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.gradle.kts b/version.gradle.kts index ff12ac0..7a20ef8 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -24,4 +24,4 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -val versionToPublish: String by extra("0.13.0") +val versionToPublish: String by extra("0.14.0") From 3c2aac2867e263d5ccd3d161c2aeb97f52fef24e Mon Sep 17 00:00:00 2001 From: Alexander Yevsyukov Date: Sat, 25 Oct 2025 21:28:37 +0100 Subject: [PATCH 02/11] Update `config` --- .agents/_TOC.md | 28 ++- .agents/project-overview.md | 1 - .agents/project-structure-expectations.md | 2 +- .agents/purpose.md | 20 -- .agents/refactoring-guidelines.md | 2 +- .idea/inspectionProfiles/Project_Default.xml | 14 +- .idea/kotlinc.xml | 8 +- .junie/guidelines.md | 6 +- CLAUDE.md | 17 ++ buildSrc/build.gradle.kts | 19 +- buildSrc/settings.gradle.kts | 4 + buildSrc/src/main/kotlin/BuildExtensions.kt | 80 +++++--- buildSrc/src/main/kotlin/DokkaExts.kt | 6 + .../kotlin/io/spine/dependency/Dependency.kt | 18 +- .../io/spine/dependency/build/GradleDoctor.kt | 2 +- .../kotlin/io/spine/dependency/build/Ksp.kt | 3 +- .../kotlin/io/spine/dependency/lib/Jackson.kt | 14 +- .../kotlin/io/spine/dependency/lib/Kotlin.kt | 4 +- .../io/spine/dependency/lib/KotlinPoet.kt | 2 +- .../dependency/lib/PalantirJavaFormat.kt} | 36 ++-- .../kotlin/io/spine/dependency/local/Base.kt | 6 +- .../io/spine/dependency/local/Compiler.kt | 176 ++++++++++++++++++ .../local/{CoreJava.kt => CoreJvm.kt} | 14 +- .../spine/dependency/local/CoreJvmCompiler.kt | 97 ++++++++++ .../kotlin/io/spine/dependency/local/Spine.kt | 81 -------- .../io/spine/dependency/local/TestLib.kt | 2 +- .../io/spine/dependency/local/ToolBase.kt | 20 +- .../io/spine/dependency/local/Validation.kt | 14 +- .../kotlin/io/spine/dependency/test/Kotest.kt | 7 +- .../main/kotlin/io/spine/gradle/Runtime.kt | 2 +- .../gradle/github/pages/UpdateGitHubPages.kt | 2 +- .../gradle/javadoc/ExcludeInternalDoclet.kt | 10 +- .../io/spine/gradle/kotlin/KotlinConfig.kt | 2 +- .../gradle/publish/CheckVersionIncrement.kt | 3 +- .../io/spine/gradle/publish/ShadowJarExts.kt | 2 +- .../gradle/report/coverage/JacocoConfig.kt | 2 +- .../gradle/report/pom/DependencyWriter.kt | 7 +- .../spine/gradle/report/pom/PomFormatting.kt | 2 +- .../spine/gradle/report/pom/PomGenerator.kt | 2 +- .../src/main/kotlin/jvm-module.gradle.kts | 1 - .../src/main/kotlin/kmp-module.gradle.kts | 1 - .../src/main/kotlin/module-testing.gradle.kts | 1 - buildSrc/src/main/kotlin/module.gradle.kts | 2 +- .../src/main/kotlin/test-module.gradle.kts | 54 ++++++ config | 2 +- gradle-plugin/build.gradle.kts | 2 +- .../io/spine/tools/prototap/gradle/Plugin.kt | 34 ++-- gradle/wrapper/gradle-wrapper.jar | Bin 43764 -> 45457 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- 49 files changed, 581 insertions(+), 255 deletions(-) delete mode 100644 .agents/purpose.md create mode 100644 CLAUDE.md rename buildSrc/src/main/kotlin/{ModuleExts.kt => io/spine/dependency/lib/PalantirJavaFormat.kt} (61%) create mode 100644 buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt rename buildSrc/src/main/kotlin/io/spine/dependency/local/{CoreJava.kt => CoreJvm.kt} (77%) create mode 100644 buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvmCompiler.kt create mode 100644 buildSrc/src/main/kotlin/test-module.gradle.kts diff --git a/.agents/_TOC.md b/.agents/_TOC.md index cf470cb..065df13 100644 --- a/.agents/_TOC.md +++ b/.agents/_TOC.md @@ -1,18 +1,16 @@ # Table of Contents 1. [Quick Reference Card](quick-reference-card.md) -2. [Purpose](purpose.md) -3. [Project overview](project-overview.md) -4. [Coding guidelines](coding-guidelines.md) -5. [Documentation & comments](documentation-guidelines.md) -6. [Documentation typography & structure](documentation-typography-and-structure.md) -7. [Documentation tasks](documentation-tasks.md) -8. [Running builds](running-builds.md) -9. [Version policy](version-policy.md) -10. [Project structure expectations](project-structure-expectations.md) -11. [Testing](testing.md) -12. [Safety rules](safety-rules.md) -13. [Advanced safety rules](advanced-safety-rules.md) -14. [Refactoring guidelines](refactoring-guidelines.md) -15. [Common tasks](common-tasks.md) -16. [Java to Kotlin conversion](java-kotlin-conversion.md) +2. [Project overview](project-overview.md) +3. [Coding guidelines](coding-guidelines.md) +4. [Documentation & comments](documentation-guidelines.md) +5. [Documentation tasks](documentation-tasks.md) +6. [Running builds](running-builds.md) +7. [Version policy](version-policy.md) +8. [Project structure expectations](project-structure-expectations.md) +9. [Testing](testing.md) +10. [Safety rules](safety-rules.md) +11. [Advanced safety rules](advanced-safety-rules.md) +12. [Refactoring guidelines](refactoring-guidelines.md) +13. [Common tasks](common-tasks.md) +14. [Java to Kotlin conversion](java-kotlin-conversion.md) diff --git a/.agents/project-overview.md b/.agents/project-overview.md index 69c58eb..dfac73f 100644 --- a/.agents/project-overview.md +++ b/.agents/project-overview.md @@ -2,7 +2,6 @@ - **Languages**: Kotlin (primary), Java (secondary). - **Build tool**: Gradle with Kotlin DSL. -- **Architecture**: Event-driven Command Query Responsibility Segregation (CQRS). - **Static analysis**: detekt, ErrorProne, Checkstyle, PMD. - **Testing**: JUnit 5, Kotest Assertions, Codecov. - **Tools used**: Gradle plugins, IntelliJ IDEA Platform, KSP, KotlinPoet, Dokka. diff --git a/.agents/project-structure-expectations.md b/.agents/project-structure-expectations.md index 1362a51..81b8e1a 100644 --- a/.agents/project-structure-expectations.md +++ b/.agents/project-structure-expectations.md @@ -16,6 +16,6 @@ buildSrc/ build.gradle.kts # Kotlin-based build configuration settings.gradle.kts # Project structure and settings README.md # Project overview -AGENTS.md # LLM agent instructions (this file) +AGENTS.md # Entry point for LLM agent instructions version.gradle.kts # Declares the project version. ``` diff --git a/.agents/purpose.md b/.agents/purpose.md deleted file mode 100644 index fb86526..0000000 --- a/.agents/purpose.md +++ /dev/null @@ -1,20 +0,0 @@ -# 🧠 Purpose - -> **EXECUTIVE SUMMARY**: This guide outlines how AI agents (ChatGPT, Codex, Junie, Claude, Gemini) -> collaborate on our Kotlin/Java project. It defines responsibilities, coding standards, -> and workflows to maintain high code quality and architectural integrity. - -It outlines: - -- Agent responsibilities (who does what). -- Coding and architectural guidelines agents must follow. -- Instructions for creating and testing agent-generated outputs. - -Whether you are a developer, tester, or contributor, this guide helps you collaborate -with AI to maintain a high-quality codebase. - -## Terminology -- **LLM**: Refers to the general category of language models (e.g., ChatGPT, Codex, Claude, Junie). -- **Agents**: A broader term for LLMs collaborating on this project. -- Use specific names (**ChatGPT**, **Codex**) when they excel at different tasks - (e.g., scaffolding versus explanation). diff --git a/.agents/refactoring-guidelines.md b/.agents/refactoring-guidelines.md index 818a13f..191db49 100644 --- a/.agents/refactoring-guidelines.md +++ b/.agents/refactoring-guidelines.md @@ -1,3 +1,3 @@ # ⚙️ Refactoring guidelines -- Do not replace Kotest assertions with standard Kotlin's Built-In Test Assertions. +- Do NOT replace Kotest assertions with standard Kotlin's built-in test assertions. diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index 229f1d3..0bd1d9d 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -255,18 +255,6 @@