Skip to content

Commit 9134824

Browse files
Merge pull request #75 from SpineEventEngine/force-consumer-id-property
Force `consumerId` properties in plugin components
2 parents ef44ecc + 9ce8253 commit 9134824

File tree

26 files changed

+389
-230
lines changed

26 files changed

+389
-230
lines changed

.agents/documentation-guidelines.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99
## Avoid widows, runts, orphans, or rivers
1010

1111
Agents should **AVOID** text flow patters illustrated
12-
on [this diagram](widow-runt-orphan-river.jpg).
12+
on [this diagram](widow-runt-orphan.jpg).
1313

1414
[todo-comments]: https://github.com/SpineEventEngine/documentation/wiki/TODO-comments

.agents/skills/writer/SKILL.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
name: writer
3+
description: >
4+
Write, edit, and restructure user-facing and developer-facing documentation.
5+
Use when asked to create/update docs such as `README.md`, `docs/**`, and
6+
other Markdown documentation;
7+
when drafting tutorials, guides, troubleshooting pages, or migration notes; and
8+
when improving inline API documentation (KDoc) and examples.
9+
---
10+
11+
# Write documentation (repo-specific)
12+
13+
## Decide the target and audience
14+
15+
- Identify the target reader: end user, contributor, maintainer, or tooling/automation.
16+
- Identify the task type: new doc, update, restructure, or documentation audit.
17+
- Identify the acceptance criteria: “what is correct when the reader is done?”
18+
19+
## Choose where the content should live
20+
21+
- Prefer updating an existing doc over creating a new one.
22+
- Place content in the most discoverable location:
23+
- `README.md`: project entry point and “what is this?”.
24+
- `docs/`: longer-form docs (follow existing conventions in that tree).
25+
- Source KDoc: API usage, examples, and semantics that belong with the code.
26+
27+
## Follow local documentation conventions
28+
29+
- Follow `.agents/documentation-guidelines.md` and `.agents/documentation-tasks.md`.
30+
- Use fenced code blocks for commands and examples; format file/dir names as code.
31+
- Avoid widows, runts, orphans, and rivers by reflowing paragraphs when needed.
32+
33+
## Make docs actionable
34+
35+
- Prefer steps the reader can execute (commands + expected outcome).
36+
- Prefer concrete examples over abstract descriptions.
37+
- Include prerequisites (versions, OS, environment) when they are easy to miss.
38+
- Use consistent terminology (match code identifiers and existing docs).
39+
40+
## KDoc-specific guidance
41+
42+
- For public/internal APIs, include at least one example snippet demonstrating common usage.
43+
- When converting from Javadoc/inline comments to KDoc:
44+
- Remove HTML like `<p>` and preserve meaning.
45+
- Prefer short paragraphs and blank lines over HTML formatting.
46+
47+
## Validate changes
48+
49+
- For code changes, follow `.agents/running-builds.md`.
50+
- For documentation-only changes in Kotlin/Java sources, prefer `./gradlew dokka`.
51+
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
interface:
2+
display_name: "Writer"
3+
short_description: "Write and update user/developer docs"
4+
default_prompt: "Write or revise documentation in this repository (for example: README.md, docs/**, CONTRIBUTING.md, and API documentation/KDoc). Follow local documentation guidelines in .agents/*.md, keep changes concise and actionable, and include concrete examples and commands where appropriate."
5+
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Title
2+
3+
## Goal
4+
5+
State what the reader will accomplish.
6+
7+
## Prerequisites
8+
9+
- List versions/tools the reader needs.
10+
11+
## Steps
12+
13+
1. Do the first thing.
14+
2. Do the next thing.
15+
16+
## Verify
17+
18+
Show how the reader can confirm success.
19+
20+
## Troubleshooting
21+
22+
- Common failure: likely cause → fix.
23+
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
````kotlin
2+
/**
3+
* Explain what this API does in one sentence.
4+
*
5+
* ## Example
6+
* ```kotlin
7+
* // Show the typical usage pattern.
8+
* val result = doThing()
9+
* ```
10+
*/
11+
````
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{{< code-tabs langs="Kotlin, Java">}}
2+
3+
{{< code-tab lang="Kotlin" >}}
4+
```kotlin
5+
```
6+
{{< /code-tab >}}
7+
8+
{{< code-tab lang="Java" >}}
9+
```java
10+
```
11+
{{< /code-tab >}}
12+
13+
{{< /code-tabs >}}

.agents/widow-runt-orphan.jpg

52.8 KB
Loading

build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ buildscript {
7070
jackson.bom,
7171
base.annotations,
7272
base.libForBuildScript,
73+
base.environment,
7374
io.spine.dependency.local.Reflect.lib,
7475
toolBase.lib,
7576
coreJava.server,

buildSrc/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ val kotlinEmbeddedVersion = "2.2.21"
8383
* Always use the same version as the one specified in [io.spine.dependency.lib.Guava].
8484
* Otherwise, when testing Gradle plugins, clashes may occur.
8585
*/
86-
val guavaVersion = "33.4.8-jre"
86+
val guavaVersion = "33.5.0-jre"
8787

8888
/**
8989
* The version of ErrorProne Gradle plugin.
@@ -103,7 +103,7 @@ val errorPronePluginVersion = "4.2.0"
103103
* @see <a href="https://github.com/google/protobuf-gradle-plugin/releases">
104104
* Protobuf Gradle Plugins Releases</a>
105105
*/
106-
val protobufPluginVersion = "0.9.5"
106+
val protobufPluginVersion = "0.9.6"
107107

108108
/**
109109
* The version of Dokka Gradle Plugins.

buildSrc/src/main/kotlin/io/spine/dependency/build/Ksp.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import io.spine.dependency.Dependency
3535
*/
3636
@Suppress("unused")
3737
object Ksp : Dependency() {
38-
override val version = "2.3.0"
38+
override val version = "2.3.6"
3939
val dogfoodingVersion = version
4040
override val group = "com.google.devtools.ksp"
4141

0 commit comments

Comments
 (0)