chore: repo polish — maven wrapper, doc consistency, dead code removal#19
Conversation
Maven wrapper: - Generated mvnw / mvnw.cmd / .mvn/wrapper/ via mvn wrapper:wrapper (Maven 3.9.9). README already referenced ./mvnw but the files were missing, so anyone following the setup guide got a "no such file" error immediately. - CI workflow updated to use ./mvnw instead of bare mvn so it is consistent with the README and portable across runners. Dead code: - Removed @deprecated(forRemoval=true) runAllChecks(String) from ScoringEngine — had zero callers, was scheduled for removal since step-7. - Removed class-level @SuppressWarnings("null") from EvaluationRunService — too broad, masked no real issue (compile confirms clean without it). README: - BenchmarkCreateRequest example updated to show all five strategies plus the new repetitions field (was showing three V1 strategies only). - INSTRUCTION_OVERRIDE security-checks table updated to reflect V2 judge-based verdict instead of the V1 heuristic description. - Scope section updated: statistical repetitions removed from deferred list (shipped in V2), V2 shipped items listed explicitly. DESIGN.md: - §4(d) N=1 paragraph updated to describe the V2 repetitions system. - §5 limitations table: Statistical rigor row marked as shipped in V2. - §6 roadmap: Repetitions item marked as shipped.
There was a problem hiding this comment.
Pull request overview
This PR polishes repository ergonomics and documentation by adding the Maven Wrapper (to match the setup docs), aligning CI to use it, removing unused/deprecated code, and updating README/DESIGN.md to reflect V2 features (repetitions, RAG content defense, and judge-based instruction override scoring).
Changes:
- Add Maven Wrapper scripts/properties and update CI to build via
./mvnw. - Remove unused/deprecated API surface (
ScoringEngine.runAllChecks(String)) and an overly broad suppression inEvaluationRunService. - Update README/DESIGN.md to reflect V2 scoring/judge behavior and benchmark repetitions.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
src/main/java/com/sentinelcore/service/ScoringEngine.java |
Removes deprecated overload of runAllChecks to reduce dead API surface. |
src/main/java/com/sentinelcore/service/EvaluationRunService.java |
Drops broad @SuppressWarnings("null") to avoid masking real issues. |
mvnw |
Adds Unix Maven Wrapper script for consistent local/CI builds. |
mvnw.cmd |
Adds Windows Maven Wrapper script for consistent local builds on Windows. |
.mvn/wrapper/maven-wrapper.properties |
Pins wrapper/script version and Maven distribution URL. |
.github/workflows/ci.yml |
Switches CI build to ./mvnw for portability/consistency. |
README.md |
Updates API/examples and V2 explanations (repetitions + judge-based INSTRUCTION_OVERRIDE). |
DESIGN.md |
Updates design/limitations/roadmap sections to mark V2 items as shipped and describe repetitions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
1. CI Maven wrapper cache — setup-java's cache:maven only covers ~/.m2/repository, not the wrapper distribution in ~/.m2/wrapper. Added explicit actions/cache step keyed on maven-wrapper.properties so the distribution is reused across CI runs instead of downloaded on every build. 2. README model field clarification — added a note below the BenchmarkCreateRequest example explaining that the model field is persisted as a label only; the active LLM is configured server-side via sentinelcore.llm.provider/model in application-local.yml. 3. INSTRUCTION_OVERRIDE table row — simplified SUCCESS condition from "Override pattern in input + response complied" to just "Judge verdict complied=true". The pattern-detection step belongs to the heuristic judge only; the LLM judge decides on semantics without an explicit pattern gate, so the table description was misleading for the opt-in path.
There was a problem hiding this comment.
Pull request overview
Repo polish PR to improve developer ergonomics and documentation consistency by adding the Maven wrapper, aligning CI to use it, removing unused/deprecated code, and updating docs to reflect shipped V2 features (repetitions + judge-based INSTRUCTION_OVERRIDE).
Changes:
- Add Maven Wrapper (
mvnw,mvnw.cmd,.mvn/wrapper/maven-wrapper.properties) and update CI to build via./mvnwwith wrapper caching. - Remove unused/deprecated code paths (
ScoringEngine.runAllChecks(String)overload; overly broad@SuppressWarnings("null")). - Update README/DESIGN docs to reflect V2 strategies, repetitions reporting (mean/stddev), and the judge-gated
INSTRUCTION_OVERRIDEbehavior.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/main/java/com/sentinelcore/service/ScoringEngine.java | Removes deprecated no-userInput overload of runAllChecks. |
| src/main/java/com/sentinelcore/service/EvaluationRunService.java | Drops broad @SuppressWarnings("null") annotation. |
| mvnw | Adds Unix Maven wrapper script. |
| mvnw.cmd | Adds Windows Maven wrapper script. |
| .mvn/wrapper/maven-wrapper.properties | Adds wrapper configuration pointing to Maven 3.9.9 distribution. |
| .github/workflows/ci.yml | Uses ./mvnw in CI and caches wrapper distributions. |
| README.md | Updates benchmark request example + INSTRUCTION_OVERRIDE explanation + scope/V2 shipped list. |
| DESIGN.md | Updates design/limitations/roadmap to reflect shipped repetitions + reporting semantics. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Maven wrapper:
Dead code:
README:
DESIGN.md: