Implementation Skill
Entry Criteria
Use for new functionality, bug fixes, or behavior changes in server/, integration-tests/, or testsupport/. Not for test-only or documentation-only changes — use the test or document skill instead.
Before Starting
- Read root
AGENTS.mdand the relevant moduleAGENTS.md(server/AGENTS.md,integration-tests/AGENTS.md, ortestsupport/AGENTS.md). - For a new S3 operation, verify element names and behavior against the AWS S3 API docs.
- Review existing similar implementations for patterns to follow.
- If nearby code would benefit from cleanup before adding new code, invoke the
refactorskill first.
Execution Steps
- For a new S3 operation, follow server/AGENTS.md § Implementation Flow (DTO → Store → Service → Controller → IT) — do not skip layers or add logic in the wrong layer.
- Update the copyright year in every modified file (
INVARIANTS.md). - Invoke the
lintskill. - Invoke the
testskill to add or update unit and integration tests. - Invoke the
documentskill to updateCHANGELOG.md,README.md, andAGENTS.mdwhere applicable.
Completion Criteria
- Code compiles (
make skip-docker) - Unit tests pass (
make test); integration tests pass (make integration-tests) - Lint gates pass (via
lintskill) - Copyright year updated in every modified file
- Tests added/updated (via
testskill); docs updated (viadocumentskill)
Troubleshooting
- Build fails: confirm JDK 25 is active; run
make formatand fix remaining lint errors. - XML test failures: a compile check is not sufficient (
INVARIANTS.md) — run integration tests to confirm serialized output. - Docker fails: use
make skip-dockerto isolate the build from Docker issues.
Resources
AGENTS.md,INVARIANTS.md- Relevant module
AGENTS.md(server/AGENTS.md,integration-tests/AGENTS.md, ortestsupport/AGENTS.md)