Guidance for AI coding agents working in this repository.
- Wrap at 160 columns, not 80.
Count the leading
*prefix as part of the line. Keep wrapping natural (do not break inside a{@link ...}or across a tag boundary if it can be avoided). - Getter summaries start with "Gets"; setter summaries start with "Sets". Prefer these verb forms over "Returns". For non getter/setter methods keep a short verb phrase (for example "Configures", "Hardens", "Dispatches").
- Javadoc style:
Key rules:
- Open on its own line with
/**, close on its own line with*/, align intermediate lines with a single leading*. - The first sentence is a short summary fragment. It is the only part that appears in class/method index listings, so keep it self-contained. Details (what is hardened, thread-safety, edge cases) belong in subsequent paragraphs, not bolted onto the summary.
- Separate paragraphs with a blank
*line. Prefix every paragraph except the first with a<p>tag at the start of the first word. Do close with</p>. - Block tags appear in the order
@param,@return,@throws,@deprecated. No empty descriptions. - Javadoc is present on every public class and every public or protected member,
with the standard exceptions (overrides, self-explanatory members, trivial
equals/hashCode).
- Open on its own line with
- No em-dashes (
—) in Javadoc, comments, commit messages, or documentation. Use commas, colons, parentheses, or a fresh sentence instead. This applies to HTML entities too (—).
- Use the
Assisted-By:trailer (notCo-Authored-By:).
Security model: SECURITY.md
Agents that scan this repository should consult SECURITY.md for the
project's threat model, in-scope / out-of-scope declarations, and known
non-findings before reporting issues.