- **Tests:** `make unit_test`, `make lib_test`, `make test262`. NGINX
integration tests under `nginx/t/` run with
`prove -I <tests-lib> nginx/t/`.
-- **Code style:** NGINX conventions — 4 spaces (no tabs), 80-column limit,
- no trailing whitespace, newline after closing brace, `-Werror` build.
-- **Commit subjects:** past tense, prefixed
- (`HTTP:`, `Stream:`, `Core:`, `QuickJS:`, `Tests:`, …), ≤67 characters.
+- **Code style and commits:** follow
+ [docs/agent/engine-dev.md](docs/agent/engine-dev.md#code-style-and-commits)
+ for formatting, warnings, and commit-log style.
Full details, sanitizer builds, VM architecture, and object model:
[docs/agent/engine-dev.md](docs/agent/engine-dev.md).
Commit messages:
- Past tense subject (`Added X`, `Fixed Y`).
-- Subject ≤67 chars, body wrapped to ~80 chars.
-- Subject prefix: `HTTP:`, `Stream:`, `Core:`, `QuickJS:`, `Tests:`,
- `Modules:`, etc.
+- Subject ≤72 chars, body wrapped to ~80 chars.
+- Use a subject prefix only when local history clearly uses one for the
+ changed area, such as `HTTP:`, `Stream:`, `QuickJS:`, `Tests:`, or
+ `Modules:`. Otherwise use no prefix; do not invent generic prefixes.
+- Read recent commit history and write commit logs in the established njs
+ style.
- One logical change per commit; rebase/squash before submitting.
## Project layout