Maintenance for 5.1.0#3065
Open
afranken wants to merge 6 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates repository “harness” and contributor/agent documentation for the 5.1.0 maintenance line, standardizing common workflows on make targets and adding an ArchUnit-based architecture test suite for the server module.
Changes:
- Add an ArchUnit
ArchitectureTestto enforce layering and annotation invariants inserver/. - Introduce
archunit-junit5dependency management and wire it into theservermodule. - Standardize CI/docs/agent guidance around
make verify, plus newmake integration-test-classandmake releasetargets.
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| server/src/test/kotlin/com/adobe/testing/s3mock/ArchitectureTest.kt | Adds ArchUnit rules enforcing layer boundaries and banning legacy Jackson XML annotations. |
| server/pom.xml | Adds archunit-junit5 as a test dependency and reorders test dependencies. |
| server/AGENTS.md | Adds detailed storage filesystem/schema documentation for agents working in the server module. |
| pom.xml | Introduces archunit.version and adds archunit-junit5 to dependencyManagement; minor build XML cleanup. |
| Makefile | Adds integration-test-class and release targets; expands .PHONY and help output. |
| INVARIANTS.md | Updates invariant from make format to make lint for style gate verification. |
| docs/TESTING.md | Replaces raw Maven invocations with make integration-test-class; updates troubleshooting guidance. |
| docs/SETUP.md | Updates prerequisites table formatting and guidance to prefer make targets. |
| docs/ARCHITECTURE.md | Refines the architecture diagram to reflect more detailed component relationships. |
| AGENTS.md | Moves storage schema details into server/AGENTS.md and updates agent commands/gates to use make. |
| .github/workflows/maven-release.yml | Switches release workflow step from Maven CLI to make release. |
| .github/workflows/maven-ci-and-prb.yml | Switches CI build command from Maven CLI to make verify; updates copyright year. |
| .github/CONTRIBUTING.md | Updates Maven prerequisite guidance to use make targets. |
| .agents/skills/lint/SKILL.md | Updates lint skill instructions to use make lint instead of direct Maven goals. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+53
to
+65
| @ArchTest | ||
| val noLegacyJacksonXmlAnnotations: ArchRule = | ||
| noCodeUnits() | ||
| .should() | ||
| .beAnnotatedWith("com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement") | ||
| .orShould() | ||
| .beAnnotatedWith("com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty") | ||
| .orShould() | ||
| .beAnnotatedWith("com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper") | ||
| .because("use tools.jackson annotations, not the legacy com.fasterxml packages") | ||
|
|
||
| @ArchTest | ||
| val controllersMayNotAccessStoreDirect: ArchRule = |
| | `objectOwnership` | `ObjectOwnership?` | null until ownership is set | | ||
| | `bucketInfo` | `BucketInfo?` | bucket type/data-redundancy info | | ||
| | `locationInfo` | `LocationInfo?` | bucket location info | | ||
| | `path` | `Path` | filesystem path to the bucket folder (not serialized for cross-host use) | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Related Issue
N/A
Tasks
make formatto fix code style.CHANGELOG.md(if applicable).