skills/build-verify/SKILL.md
BUILD VERIFY SKILL — Compile the project and run all tests before committing. USE FOR: pre-commit gate; verifying a fix did not break existing tests; confirming a new test class passes. Provides exact Maven commands, how to read Surefire output, and the pass/fail gate definition. DO NOT USE FOR: writing new tests (use test-writing skill); diagnosing application runtime errors (read source directly).
npx skillsauth add zcross00/ProcessDocumentation build-verifyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Run these commands in the project root (wherever the pom.xml lives) before committing.
Do not commit if any test fails or the project does not compile. No exceptions. Fix the failure first.
mvn compile
Expected: BUILD SUCCESS. Any ERROR line means a compilation failure — do not proceed to tests until resolved.
# To see full compiler output without truncation:
mvn compile -e
mvn test
Expected output ends with:
Tests run: N, Failures: 0, Errors: 0, Skipped: 0
BUILD SUCCESS
If any test fails, Maven prints a summary like:
Tests run: 12, Failures: 1, Errors: 0, Skipped: 0
When a test fails, get the full detail from the Surefire report for that class:
target/surefire-reports/{fully.qualified.ClassName}.txt
The .txt file contains the full failure message, stack trace, and expected vs. actual values.
To isolate a failing class without running all tests:
mvn test -Dtest=ClassName
# Example:
mvn test -Dtest=NeedAdvancementTest
mvn test -Dtest=EraTransitionTest
To run a single test method:
mvn test -Dtest=ClassName#methodName
# Example:
mvn test -Dtest=NeedAdvancementTest#advanceNeeds_worsensHungerThirstFatigue
| Symptom | Likely cause |
|---|---|
| package X does not exist | Import missing or class moved/renamed |
| cannot find symbol | Method/field renamed; check the domain class |
development
TEST WRITING SKILL — Write correctly structured JUnit 5 tests that match this project's conventions. USE FOR: adding tests for a new backlog item; flagging missing test coverage; writing tests for engine classes, domain logic, or persistence. Covers class placement, naming conventions, setup patterns, assertion style, and what not to test. DO NOT USE FOR: running tests (use build-verify skill); diagnosing test failures (read the Surefire report directly).
development
STANDARDS CHECK JAVA SKILL — Apply standards/general.md and standards/java.md systematically to a Java file or diff. USE FOR: pre-commit standards compliance check; reviewing a file for standards adherence before or after a change. Produces a categorized violation list with the specific rule cited for each. DO NOT USE FOR: general code review (use planner-review skill for implementation review).
testing
REFINEMENT SKILL — Analyze design, features, backlog, and drift to identify and plan needed work. USE FOR: PLANNER producing new backlog items from gaps between design and current state; evaluating tech debt and drift for resolution; structured backlog growth when the user asks the PLANNER to refine or plan more work. DO NOT USE FOR: implementing backlog items (EXECUTOR work); reviewing completed work (use planner-review skill).
development
PLANNER REVIEW SKILL — Review a completed backlog item and update design artifacts accordingly. USE FOR: PLANNER reviewing an EXECUTOR's completed work; updating FEATURES.md after a feature lands; removing completed items from BACKLOG.md; checking for drift. DO NOT USE FOR: implementing backlog items (EXECUTOR work); initial planning (read GOALS and DESIGN directly).