mirror of
https://github.com/rsyslog/rsyslog.git
synced 2025-12-15 21:00:41 +01:00
Improve AI-facing documentation to speed up contributor onboarding after the gpt5-codex agent update. The guides clarify bootstrap, testing, and where to find module ownership so agents can work predictably and avoid expensive CI-only paths. Impact: documentation-only; no runtime changes. Clarifies when to use direct test scripts vs. the autotools harness. This introduces repository-wide AGENTS guides (root, plugins/, contrib/, tools/, doc/) plus module-focused guides for omelasticsearch, imkafka, omkafka, and omruleset. It adds metadata templates for core and contrib modules, initial MODULE_METADATA.yaml files for the Kafka and ES modules, and a tools/MODULE_METADATA.json for built-ins. The top-level guide now includes quick links, “priming a fresh AI session,” and explicit autotools bootstrap instructions (run ./autogen.sh when autotools inputs change). Testing guidance asks agents to prefer invoking ./tests/*.sh directly, reserving `make check` for CI reproductions. The doc subtree gains its own AGENTS.md and an AI doc-builder base prompt to keep edits consistent. doc/ai/module_map.yaml was annotated to reference per-module metadata. Before: scattered or missing agent guidance; unclear when to bootstrap autotools or run the full harness. After: structured, discoverable docs, templates, and metadata that align contributor workflow across modules.
1.5 KiB
1.5 KiB
AGENTS.md – Built-in tool modules
The tools/ directory holds historic built-in modules that share code with the
core but are compiled directly into the rsyslog binary:
omfile.comusrmsg.comfwd.compipe.comshell.comdiscard.c
Build & testing expectations
- These modules are always built as part of the default configuration; no
additional
./configureflags are required. - Follow the top-level build workflow: run
./autogen.shonly when autotools inputs change, configure with the options your change requires, and rebuild viamake. - There are no standalone regression scripts for these built-in modules. When
modifying them, rely on targeted configuration tests under
tests/(e.g../tests/omfile-basic.sh) or add new ones as needed.
Metadata
- Shared metadata lives in
tools/MODULE_METADATA.jsonso we do not duplicate YAML files beside each source. - Keep the JSON array sorted by module name and update the
last_reviewedfield whenever support status, maturity, or contacts change. - The default
primary_contactpoints at the rsyslog GitHub Discussions and Issues queue; replace it with a specific maintainer only when a new owner is explicitly assigned.
Documentation touchpoints
- Most of these modules have reference guides under
doc/source/configuration/modules/. Update the relevant.rstfiles when you change defaults or add features. - Cross-reference changes in
doc/ai/module_map.yamlif the concurrency or locking guidance shifts.