Skip to content

Commit a179438

Browse files
authored
Merge pull request #2979 from adobe/copilot/update-markdown-best-practices
Fix checklist format, active voice, and skill routing in markdown files
2 parents 9d84898 + ff2cc3a commit a179438

File tree

12 files changed

+61
-57
lines changed

12 files changed

+61
-57
lines changed

.claude/skills/document/SKILL.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: document
3-
description: Generate or update project documentation. Use when asked to document code, create docs, or explain features.
3+
description: Generate or update project documentation. Use when asked to document code, create docs, explain features, or fix formatting, wording, or style in existing documentation files.
44
---
55

66
# Documentation Skill — S3Mock
@@ -36,6 +36,6 @@ Concise, active voice. Include runnable examples (Kotlin for API, shell for CLI)
3636

3737
## Checklist
3838

39-
- Verify technical accuracy against source code
40-
- Ensure links and code examples are valid
41-
- Match surrounding style and formatting
39+
- [ ] Verify technical accuracy against source code
40+
- [ ] Ensure links and code examples are valid
41+
- [ ] Match surrounding style and formatting

.claude/skills/implement/SKILL.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: implement
3-
description: Implement features, fix bugs, or refactor code. Use when asked to add functionality, modify code, or improve structure.
3+
description: Implement features, fix bugs, or refactor source code. Use when asked to add functionality, modify source code, or improve code structure. Not for documentation-only changes.
44
---
55

66
# Implementation Skill — S3Mock
@@ -32,12 +32,12 @@ Follow **DTO → Store → Service → Controller** (see AGENTS.md Architecture)
3232
- [ ] Read root + module `AGENTS.md` (required before any other step)
3333
- [ ] Identify the S3 API operation ([AWS docs](https://docs.aws.amazon.com/AmazonS3/latest/API/Welcome.html))
3434
- [ ] Review existing similar implementations
35-
- [ ] Run `./mvnw ktlint:format` then `./mvnw clean install`
35+
- [ ] Run `make format` then `make install`
3636
- [ ] Invoke the **`test` skill** to add/update unit and integration tests
3737
- [ ] Invoke the **`document` skill** to update `CHANGELOG.md`, `README.md`, and `AGENTS.md`
3838

3939
## Troubleshooting
4040

41-
- **Build fails**: Check Java 25, run `./mvnw ktlint:format`
41+
- **Build fails**: Check Java 25, run `make format`
4242
- **Tests fail**: Ensure XML matches AWS API exactly — run integration tests
43-
- **Docker fails**: Try `./mvnw clean install -DskipDocker` to isolate
43+
- **Docker fails**: Try `make skip-docker` to isolate

.claude/skills/refactor/SKILL.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ Document what, why, and gotchas. Link to AWS API docs where relevant. See **[doc
3333

3434
## Checklist
3535

36-
- [ ] No behavior changes — tests still pass
37-
- [ ] Run `./mvnw ktlint:format`
38-
- [ ] Comments explain *why*, not *what*
39-
- [ ] Public APIs have KDoc
40-
- [ ] Names are self-documenting
36+
- [ ] Verify no behavior changes — run tests
37+
- [ ] Run `make format`
38+
- [ ] Ensure comments explain *why*, not *what*
39+
- [ ] Add KDoc for all public APIs
40+
- [ ] Use self-documenting names

.claude/skills/test/SKILL.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ Read **[docs/TESTING.md](../../../docs/TESTING.md)**, **[docs/KOTLIN.md](../../.
2020

2121
- [ ] Read `docs/TESTING.md` and root + module `AGENTS.md`
2222
- [ ] If existing tests have structural problems (poor naming, shared state, weak assertions), invoke the **`refactor` skill** to fix them rather than working around them
23-
- [ ] Tests pass locally
24-
- [ ] Both success and failure cases covered
25-
- [ ] Tests are independent (no shared state, UUID bucket names)
26-
- [ ] Assertions are specific
27-
- [ ] Run `./mvnw ktlint:format`
23+
- [ ] Verify tests pass locally
24+
- [ ] Cover both success and failure cases
25+
- [ ] Keep tests independent (no shared state, UUID bucket names)
26+
- [ ] Use specific assertions
27+
- [ ] Run `make format`

.github/CONTRIBUTING.md

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,10 @@ All third-party contributions to this project must be accompanied by a signed co
2121

2222
**Build and verify:**
2323
```shell
24-
# Full build with Docker
25-
./mvnw clean install
26-
27-
# Skip Docker (faster, for unit tests only)
28-
./mvnw clean install -DskipDocker
29-
30-
# Run integration tests
31-
./mvnw verify -pl integration-tests
32-
33-
# Format Kotlin code
34-
./mvnw ktlint:format
24+
make install # Full build with Docker
25+
make skip-docker # Skip Docker (faster, for unit tests only)
26+
make integration-tests # Run integration tests
27+
make format # Format Kotlin code
3528
```
3629

3730
## Architecture
@@ -45,8 +38,8 @@ Module-specific documentation:
4538

4639
## Code Style
4740

48-
- **Kotlin**: Enforced by ktlint - run `./mvnw ktlint:format` before submitting
49-
- **XML/Java**: Enforced by Checkstyle - configuration in [`etc/checkstyle.xml`](../etc/checkstyle.xml)
41+
- **Kotlin**: Enforced by ktlint run `make format` before submitting
42+
- **XML/Java**: Enforced by Checkstyle configuration in [`etc/checkstyle.xml`](../etc/checkstyle.xml)
5043
- **Key conventions**: Constructor injection, data classes for DTOs, backtick test names, `val` over `var`
5144
- See the DO / DON'T section in [AGENTS.md](../AGENTS.md) for the full list
5245

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99

1010
- [ ] I have signed the [CLA](http://adobe.github.io/cla.html).
1111
- [ ] I have written tests and verified that they fail without my change.
12-
- [ ] I have run `./mvnw ktlint:format` to fix code style.
12+
- [ ] I have run `make format` to fix code style.
1313
- [ ] I have updated `CHANGELOG.md` (if applicable).
1414
- [ ] I have updated documentation (if applicable).

AGENTS.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,10 @@ See **[docs/TESTING.md](docs/TESTING.md)** for the full testing strategy, base c
9898
## Build
9999

100100
```bash
101-
./mvnw clean install # Full build
102-
./mvnw clean install -DskipDocker # Skip Docker
103-
./mvnw verify -pl integration-tests
104-
./mvnw ktlint:format
101+
make install # Full build
102+
make skip-docker # Skip Docker
103+
make integration-tests # Run integration tests
104+
make format # Format Kotlin code
105105
```
106106

107107
## CI/CD Pipeline

Makefile

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
# limitations under the License.
1515
#
1616

17-
.PHONY: build verify install sort
17+
.PHONY: build verify install skip-docker format integration-tests run test sort
1818
.DEFAULT_GOAL := build
1919

2020
build: verify
@@ -25,5 +25,20 @@ verify:
2525
install:
2626
./mvnw -B -V -Dstyle.color=always clean install
2727

28+
skip-docker:
29+
./mvnw -B -V -Dstyle.color=always clean install -DskipDocker
30+
31+
format:
32+
./mvnw -B -V -Dstyle.color=always ktlint:format
33+
34+
integration-tests:
35+
./mvnw -B -V -Dstyle.color=always verify -pl integration-tests
36+
37+
run:
38+
./mvnw spring-boot:run -pl server
39+
40+
test:
41+
./mvnw -B -V -Dstyle.color=always test -pl server
42+
2843
sort:
2944
./mvnw -B -V -Dstyle.color=always com.github.ekryd.sortpom:sortpom-maven-plugin:sort

README.md

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -484,17 +484,13 @@ graph LR
484484

485485
**Build:**
486486
```shell
487-
# Full build with Docker
488-
./mvnw clean install
489-
490-
# Skip Docker build
491-
./mvnw clean install -DskipDocker
487+
make install # Full build with Docker
488+
make skip-docker # Skip Docker build
492489
```
493490

494491
**Run from source:**
495492
```shell
496-
# As Spring Boot application
497-
./mvnw spring-boot:run -pl server
493+
make run # As Spring Boot application
498494
499495
# As Docker container
500496
./mvnw clean package -pl server -am -DskipTests
@@ -503,7 +499,7 @@ docker run -p 9090:9090 -p 9191:9191 adobe/s3mock:latest
503499

504500
**Run integration tests:**
505501
```shell
506-
./mvnw verify -pl integration-tests
502+
make integration-tests
507503
```
508504

509505
**Technology:**

docs/TESTING.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,11 @@ See **[docs/KOTLIN.md](KOTLIN.md)** for Kotlin naming conventions (backtick test
8080
## Running Tests
8181

8282
```bash
83-
./mvnw test -pl server # Unit tests only
84-
./mvnw verify -pl integration-tests # All integration tests
85-
./mvnw verify -pl integration-tests -Dit.test=BucketIT # Specific class
86-
./mvnw verify -pl integration-tests -Dit.test=BucketIT#shouldCreateBucket # Specific method
87-
./mvnw test -pl server -DskipDocker # Skip Docker
83+
make test # Unit tests only
84+
make integration-tests # All integration tests
85+
./mvnw verify -pl integration-tests -Dit.test=BucketIT # Specific class
86+
./mvnw verify -pl integration-tests -Dit.test=BucketIT#shouldCreateBucket # Specific method
87+
./mvnw test -pl server -DskipDocker # Skip Docker
8888
```
8989

9090
> Integration tests require Docker to be running.
@@ -98,8 +98,8 @@ See **[docs/KOTLIN.md](KOTLIN.md)** for Kotlin naming conventions (backtick test
9898

9999
## Checklist
100100

101-
- [ ] Tests pass locally
102-
- [ ] Both success and failure cases covered
103-
- [ ] Tests are independent (no shared state, UUID bucket names)
104-
- [ ] Assertions are specific
105-
- [ ] Run `./mvnw ktlint:format`
101+
- [ ] Verify tests pass locally
102+
- [ ] Cover both success and failure cases
103+
- [ ] Keep tests independent (no shared state, UUID bucket names)
104+
- [ ] Use specific assertions
105+
- [ ] Run `make format`

0 commit comments

Comments
 (0)