Imported from gencau/test-practices-agent-configurations (
dataset/repos/comcast§oscar/docs/wiki/AGENTS.md). Install upstream withnpx skills add gencau/test-practices-agent-configurations --skill wiki. Copyright stays with the author.
AGENTS
This repo is Java-first (JDK 21) with Maven as the primary build/test tool. Use these guidelines when working in this codebase.
Environment
- Java:
21 - Build tool:
mvn(primary),build.xmlis legacy - Entry point:
com.comcast.oscar.cli.Main
Required Workflow
- After every change: run the single verification script.
tools/run-all.sh
- Keep code hygienic: no unused variables/imports, proper indentation, no dead code.
- Prefer Log4j2 (
logger.debug/info/warn/error) overSystem.out.println. - Guard expensive debug work with
logger.isDebugEnabled(). - Commit messages: first line states what is going on; subsequent lines are succinct changes prefixed with
-.
Scripts
tools/quality/run-all.sh: format, hygiene checks, compile, and tests.tools/maintenance/clean.sh: remove generated artifacts (--all,--output,--dist,--target,--jar).tools/release/release.py: release helper to run checks, package jars, and refreshoscar.jar+latest-build.scripts/ci-verify.sh: invoked bytools/quality/run-all.sh.tools/quality/code-hygene-checker.sh: strict compile with-Xlint:all -Werror.tools/quality/setup-formatter.sh: fetchesgoogle-java-format.tools/quality/markdown-check.sh: markdown lint checks.tools/run-all.sh,tools/clean.sh,tools/code-hygene-checker.sh,tools/setup-formatter.sh,tools/markdown-check.sh: compatibility wrappers.scripts/verify.sh: compile + test.
Tests
- Use JUnit 5 (Jupiter).
- Place tests under
src/test/javafollowing package structure. - Name tests
*Test.javaand keep them deterministic.
Repo Notes
src/is the main source directory.res/contains runtime resources.doc/is generated documentation; avoid manual edits.output/is the standard location for generated local test/output files.