Contributing¶
This project welcomes contributions from humans working with or without AI assistance. AI tooling is available but not required.
Branch workflow¶
This project follows a library-release branching model:
main: Release branch — tagged releases onlydevelop: Integration branch — PRs merge herefeature/*: Feature branches — created fromdeveloprelease/*: Release preparation branches
Branch from develop using feature/*, bugfix/*, hotfix/*, or
chore/* prefixes.
Commit conventions¶
Commits must follow the Conventional Commits format:
Types: feat, fix, docs, style, refactor, test, chore
Code quality requirements¶
All code must pass the full validation pipeline before merging:
| Gate | Tool |
|---|---|
| Formatting | Spotless with google-java-format (2-space indent) |
| Style | Checkstyle with google_checks.xml |
| Coverage | JaCoCo — 100% line and branch coverage |
| Bug analysis | SpotBugs (Max effort, Low threshold) |
| Code smells | PMD |
| Markdown lint | markdownlint |
| Commit messages | Conventional commit validation |
Run the full suite locally before pushing:
Run ./mvnw spotless:apply to auto-format before committing.
Pull request process¶
- Create a
feature/*branch fromdevelop - Make changes and ensure
./mvnw verifypasses - Open a PR targeting
develop - PR body must include
Fixes #NorRef #N(validated by CI) - CI runs the full validation pipeline
- After review and approval, squash-merge into
develop
For human contributors¶
- Run
./mvnw verifybefore pushing to catch issues early. - Reference
docs/repository-standards.mdfor the full standards specification. - The
CLAUDE.mdandAGENTS.mdfiles document architecture, patterns, and key design decisions. They are useful as reference material even when not using an AI agent.
For AI agent contributors¶
Agent entry points¶
- Claude Code: reads
CLAUDE.md, which loads repository standards via include directives. - Codex and other agents: reads
AGENTS.md, which loads the same standards plus shared skills from thestandards-and-conventionsrepository.
Quality expectations¶
AI-generated code must pass all the same validation gates listed above. There are no exceptions.
What AI agents handle well¶
- Code generation from mapping data
- Test writing and coverage gap filling
- Linting and formatting fixes
- Refactoring with consistent patterns
- PR creation and submission
What requires human judgment¶
- Architectural decisions and API design
- MQ domain knowledge and MQSC semantics
- Release decisions and version management
- Mapping data curation (attribute names, value translations)
Co-author trailers¶
AI agents add co-author trailers to commits automatically when following the repository standards.