From e35aaba7f56b9eeb614c78ddd1db4f9669c4be94 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 08:04:15 +0000 Subject: [PATCH] =?UTF-8?q?Reviewer=20=EC=97=AD=ED=95=A0=20=EA=B2=80?= =?UTF-8?q?=EC=A6=9D=20=EB=B3=B4=EA=B3=A0=EC=84=9C=20smoke=20(role-reviewe?= =?UTF-8?q?r-live-v2-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/reviewer-verification-checklist.md | 170 ++++++++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 docs/reviewer-verification-checklist.md diff --git a/docs/reviewer-verification-checklist.md b/docs/reviewer-verification-checklist.md new file mode 100644 index 0000000..6f72677 --- /dev/null +++ b/docs/reviewer-verification-checklist.md @@ -0,0 +1,170 @@ +# Reviewer Verification Checklist + +## Overview + +This checklist provides a systematic approach for reviewing changes in the Runtime Role Matrix project. Use this document alongside `scripts/smoke-test.sh` for automated verification. + +## Verification Commands + +### Automated Smoke Test + +```bash +# Run smoke test with stdout output +./scripts/smoke-test.sh + +# Run smoke test with JSON output +./scripts/smoke-test.sh --json + +# Run smoke test and save to file +./scripts/smoke-test.sh --json --output verification-report.json + +# Specify reviewer name +./scripts/smoke-test.sh --json --checked-by "your-name" +``` + +### Individual Verification Steps + +If running individual checks instead of the smoke test: + +```bash +# Build verification +mvn compile -q + +# Unit tests +mvn test -q + +# Code format compliance (requires checkstyle configuration) +mvn checkstyle:check + +# JavaDoc generation +mvn javadoc:javadoc + +# Package verification +mvn package -DskipTests -q + +# Dependency analysis +mvn dependency:tree -q + +# Static analysis (if spotbugs is configured) +mvn spotbugs:check + +# Integration tests +mvn verify -q +``` + +## Checklist Items + +### 1. Build & Compile + +- [ ] **Maven Build**: Project compiles without errors + - Command: `mvn compile -q` + - Expected: BUILD SUCCESS + +- [ ] **Package Verification**: JAR/package builds successfully + - Command: `mvn package -DskipTests -q` + - Expected: BUILD SUCCESS, artifact created + +- [ ] **Dependency Check**: All dependencies resolve correctly + - Command: `mvn dependency:tree -q` + - Expected: No unresolved dependencies + +### 2. Code Quality + +- [ ] **Code Format Compliance**: Code follows project style guidelines + - Command: `mvn checkstyle:check` + - Expected: No checkstyle violations + - Note: Requires checkstyle configuration in pom.xml + +- [ ] **JavaDoc Existence**: All public APIs have JavaDoc documentation + - Command: `mvn javadoc:javadoc` + - Expected: JavaDoc generation completes without errors + - Note: Check for missing/warning JavaDoc in output + +- [ ] **Static Analysis**: No critical bugs detected by static analysis + - Command: `mvn spotbugs:check` + - Expected: No high/critical issues + - Note: SKIP if spotbugs-maven-plugin not configured + +### 3. Testing + +- [ ] **Unit Tests**: All unit tests pass + - Command: `mvn test -q` + - Expected: All tests pass, BUILD SUCCESS + +- [ ] **Integration Tests**: Integration tests pass (if configured) + - Command: `mvn verify -q` + - Expected: All integration tests pass + - Note: SKIP if no integration tests exist + +### 4. Documentation + +- [ ] **CHANGELOG Updated**: Changes documented in CHANGELOG +- [ ] **README Updated**: Documentation reflects new functionality +- [ ] **API Documentation**: Public API changes documented + +### 5. Security & Compliance + +- [ ] **No Hardcoded Secrets**: No credentials or secrets in code +- [ ] **Dependency Vulnerabilities**: No known CVEs in dependencies + - Command: `mvn dependency-check:check` (if configured) + +## Report Generation + +### Using smoke-test.sh (Recommended) + +1. Run the smoke test with JSON output: + ```bash + ./scripts/smoke-test.sh --json --output smoke-report.json + ``` + +2. Review the generated JSON file + +3. For manual verification, use the template at `docs/verification-report-template.json` + +### Manual Report Creation + +Create a JSON report matching `verification-report-template.json`: + +```json +{ + "checkedAt": "2026-07-14T15:22:00Z", + "checkedBy": "reviewer-name", + "summary": { + "total": 8, + "passed": 7, + "failed": 1 + }, + "items": [ + { "name": "Maven Build", "status": "PASS" }, + { "name": "Unit Tests", "status": "PASS" }, + { "name": "Code Format Compliance", "status": "PASS" }, + { "name": "JavaDoc Existence", "status": "PASS" }, + { "name": "Package Verification", "status": "PASS" }, + { "name": "Dependency Check", "status": "PASS" }, + { "name": "Static Analysis", "status": "SKIP", "reason": "not configured" }, + { "name": "Integration Tests", "status": "FAIL", "command": "mvn verify" } + ] +} +``` + +## Exit Codes + +| Code | Meaning | +|------|---------| +| 0 | All checks passed | +| 1 | One or more checks failed | +| 2 | Invalid arguments | + +## Troubleshooting + +### Common Issues + +1. **Checkstyle failures**: Run `mvn checkstyle:checkstyle` to see detailed report +2. **Test failures**: Run `mvn test` without `-q` for detailed output +3. **Build failures**: Check Maven version compatibility (requires 3.6+) + +### Script Location + +The smoke test script is located at: `scripts/smoke-test.sh` + +This path is relative to the project root directory.